Как скопировать файл через SSH

В статье мы расскажем, как копировать файлы в Windows и Linux-системах, и покажем основные команды, с помощью которых происходит передача файлов по SSH

В Linux и Windows-системах используют разные инструменты для копирования файлов по SSH.

В Linux для копирования данных по протоколу SSH используется утилита scp (Secure CoPy). Она входит в состав OpenSSH, поэтому для работы с утилитой устанавливать дополнительное ПО не нужно. 

В Windows для загрузки файлов по SSH используется утилита pscp.exe. Её функционал схож с scp. Утилита входит в состав программы Putty (SSH-клиент для Windows). Putty не входит в стандартный набор Windows-программ, поэтому её нужно будет скачать с официального сайта

Обратите внимание! Если файл, который вы хотите скопировать, уже существует на целевом хосте, при копировании он будет перезаписан.

Копирование файлов по SSH на Linux

Как скачать файл с сервера через SSH? На Linux копирование файлов по SSH делается с помощью команды scp. Команда может копировать файлы как с локального компьютера на удалённый сервер, так и с удалённого сервера на локальный компьютер.

Обратите внимание! Для подключения к удалённому серверу вам понадобится логин и пароль. 

В общем виде команда выглядит так:

scp [опция] [источник] [получатель]

Как скопировать файл по SSH с локальной машины на удалённый сервер

Как загрузить файл на сервер по SSH? Для этой операции используется команда вида: 

scp [путь к файлу] [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу]

Например, команда может выглядеть так:

scp /home/test.txt root@123.123.123.123:/directory

То есть файл test.txt будет скопирован на хост 123.123.123.123 в директорию «/directory».

Как скопировать файлы с удалённого сервера на локальный компьютер 

При подключённом SSH скачать файл на локальный компьютер с удалённого сервера можно с помощью команды:

scp [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу] [путь к файлу]

Пример команды: 

scp root@123.123.123.123:/home/test.txt /directory

То есть файл test.txt будет загружен с сервера 123.123.123.123 на локальный компьютер в папку “/directory”.

Как скачать папку со всеми файлами и подпапками

При необходимости можно скачать папку со всеми файлами и подпапками, для этого используйте ключ -r:

scp -r [источник] [получатель]

Как подключиться к серверу по нестандартному порту

Если не указывать порт, команда подключается к серверу по стандартному 22 порту. Но бывает, что для подключения по SSH нужно указать нестандартный порт. Чтобы это сделать, введите команду с ключём -P:

scp -P [источник] [получатель]

Например, получится такая команда:

scp -P 12345 /home/test.txt root@123.123.123.123:/directory

Указанная команда подключается по порту 12345 к серверу 123.123.123.123 и копирует на него файл «text.txt» в директорию «/directory». 

Как передать и скачать файлы по SSH на Windows

Скопировать файл по SSH на сервер можно командой:

pscp [путь к файлу] [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу]

Чтобы скачать файл по SSH с сервера, используйте команду:

pscp [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу] [путь к файлу]

Увидеть список папок и файлов на сервере можно через pscp.exe. Для этого введите:

pscp -ls [имя пользователя]@[имя сервера/ip-адрес]:[путь]

Если в пути или в названии файла есть пробелы, используйте кавычки:

pscp “C:\files or docs\file name” root@123.123.123.123:/home

 

Если вы не нашли ответ, спросите у нас!
Запросить поддержку