30

Я пытаюсь загрузить локальные файлы на сервер, используя Putty или SSH, но не получаю загрузки там.

Есть ли прямой способ загрузки файла с локального сервера на терминал Linux без использования FTP и т.д.?

3 ответа3

49

Конечно. Используйте scp (безопасную копию) следующим образом:

scp [source file] [username]@[destination server]:.

Конечно, замените скобки [source file] , [username] и [destination server] в соответствии с вашими локальными настройками. Так что, если файл был cool_stuff.txt а вашим именем пользователя на удаленном сервере является sanjeev а сервером назначения является example.com , команда будет выглядеть так:

scp cool_stuff.txt sanjeev@example.com:.

И источник также может быть удаленным, так что вы можете сделать это, чтобы сделать противоположный пример выше:

scp sanjeev@example.com:cool_stuff.txt .

Эта команда скопирует удаленный файл cool_stuff.txt в любой локальный каталог, в котором вы находитесь. И если вы делаете это с несколькими файлами, просто используйте подстановочный знак (*), как для обычной команды cp .

Кроме того . просто указывает непосредственный путь к каталогу; например, тот, в котором вы находитесь прямо в момент запуска команды, или непосредственный путь, который имеет удаленный пользователь на целевом сервере. Но вы также можете указать путь вроде /this/path/right/here в локальном удаленном примере:

scp cool_stuff.txt sanjeev@example.com:/this/path/right/here

Или пример с удаленного на локальный прямо здесь:

scp sanjeev@example.com:cool_stuff.txt /this/path/right/here

Теперь, если удаленный сервер не разрешает SSH и только SFTP, тогда SFTP - путь. Но scp очень полезен, когда вы хотите просто выбросить файл, а не выполнять весь процесс SFTP вручную из командной строки.

10

Чтобы добавить ответ Джейка, вы можете указать местоположение, а не просто . - скопировать, добавив путь в конце URL как:

scp /path/to/file username@servername/ip:/destination/folder/
7

Когда вход на удаленный сервер осуществляется через ключ ssh , мы можем использовать флаг ниже -i чтобы передать наш ключ на сервер:

scp -i /path/to/.ssh/id_rsa path/to/file/myFiles.gz myServer.com:/folder/on/server

-i identity_file
Выбирает файл, из которого читается идентификатор (закрытый ключ) для аутентификации с открытым ключом.
Эта опция напрямую передается в ssh (1).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .