Як мені SCP з віддаленої машини на локальну машину, коли я перебуваю за межами своєї домашньої мережі?


57

Хоча я розумію, як перебирати файли на і з мого сервера всередині домашньої мережі, як я можу перенести файл з мого сервера на свою локальну машину, коли я перебуваю зовні, скажімо, у Starbucks?

Хоча в цьому сценарії я можу зробити scp з моєї локальної машини на мій сервер, я не зрозумів, як схопити файл з дому, використовуючи командний рядок. Будь-які пропозиції?

Відповіді:


86

Спосіб, що задається питанням, досить заплутаний, але якщо ви можете скопіювати з локальної машини на сервер, піти іншим способом просто переверніть порядок командного рядка.

його scp [від] [до]

scp user @ homeip: / шлях / до / файл / локальний / шлях /

Дякую, я спробую і підтверджую, чи працював він на мене.
користувач98496

1
Я думаю, що питання стосується налаштування dyndns та переадресації портів ... він просто не знав, що йому задати.
RobotHumans

1
Щоправда, я, мабуть, не знаю, про що питати. Я ще вчуся. Якщо ви можете запропонувати додаткові пояснення щодо того, які порти мені потрібно переадресувати (і будь-яку інформацію, яка мені знадобиться щодо dyndns), щоб досягти своєї мети, я вдячний :-)
user98496

Пропозиція в першій відповіді не спрацювала. Зазвичай, коли я набираю: "scp -r somedir me@123.45.6.7: / home / me / Desktop", це працює чудово. Однак, якщо я спробую це із загальнодоступного WIFI-з'єднання, скажімо, Starbucks (а не вдома), він не працює. Що я роблю неправильно?
користувач98496

6
ВИРІШЕНО: Команда, яка працює для мене: scp remoteusername @ host: fileiwanttocopy / my / local / comp
user98496

37

Скопіюйте файл "foobar.txt" з віддаленого хоста на локальний хост:

$ scp your_username@remotehost.edu:foobar.txt /some/local/directory

Скопіюйте файл "foobar.txt" з локального хоста на віддалений хост:

$ scp foobar.txt your_username@remotehost.edu:/some/remote/directory

Скопіюйте каталог "foo" з локального хоста в "рядок" віддаленого хоста:

$ scp -r foo your_username@remotehost.edu:/some/remote/directory/bar

Скопіюйте файл "foobar.txt" з віддаленого хоста "rh1.edu" на віддалений хост "rh2.edu":

$ scp your_username@rh1.edu:/some/remote/directory/foobar.txt your_username@rh2.edu:/some/remote/directory/

Копіюючи файли "foo.txt" і "bar.txt" з локального хоста в домашній каталог на віддаленому хості:

$ scp foo.txt bar.txt your_username@remotehost.edu:~

Скопіюйте файл "foobar.txt" з локального хоста на віддалений хост, використовуючи порт 2264:

$ scp -P 2264 foobar.txt your_username@remotehost.edu:/some/remote/directory

Скопіюйте кілька файлів з віддаленого хоста у поточний каталог на локальний хост:

$ scp your_username@remotehost.edu:/some/remote/directory/\{a,b,c\} .

$ scp your_username@remotehost.edu:~/\{foo.txt,bar.txt\} .

Для отримання додаткової інформації: безпечна копія


І все це вимагає, щоб ви sshdбігали - всі це знають, так ... чи ні.
Ханну

0

Якщо ви хотіли захистити копію у віддаленому місці, наприклад Dropbox або GoogleDrive, тоді створіть обліковий запис за допомогою https://couchdrop.io та зв’яжіть свого постачальника пам’яті.

Звідти просто,

scp <filename> couchdrop-username@couchdrop.io:/Dropbox і т. д., якщо ви хочете витягнути файл із хмари, тоді просто переверніть два твердження так;

scp couchdrop-usernmae@couchdrop.io:/Dropbox/filename ~/ - це перетягне файл у вибраний каталог

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.