Копирование файлов по ssh. Команда scp. Linux статьи

Копирование файлов по ssh. Команда scp

1

Для копирования файлов по ssh между компьютерами под управлением Linux применяется команда scp. Рассмотрим, как можно копировать файлы с одного компьютера на другой по ssh, используя команду scp.

Синтаксис команды scp

Синтаксис команды scp следующий:

scp [опции] что_копируем куда_копируем

Команда scp принимает на вход различные опции (см. примеры ниже), а также файл или директорию, которую необходимо скопировать (аргумент что_копируем). Последним аргументом указывается путь назначения, в который будет произведено копирование (аргумент куда_копируем).

Аргументы что_копируем и куда_копируем могут быть, как локальными путями, так и удаленными. То есть можно копировать файлы с удаленного компьютера на локальный и наоборот. Можно копировать файлы с удаленного компьютера на другой удаленный компьютер.

что_копируем и куда_копируем имеют следующий синтаксис:

имя_пользователя@IP_адрес:путь до файла или директории

имя_пользователя — это имя пользователя для подключения по ssh.
IP_адрес — IP адрес компьютера (хоста) на который или с которого будет копирование.

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

Копирование локального файла

Рассмотрим простой пример. Скопируем по ssh локальный файл myfile.dat на компьютер с IP адресом 192.168.1.74 в директорию /home/pingvin.

scp my file.dat pingvin@192.168.1.74:/home/pingvin

Выполним тоже самое, но укажем еще и порт для подключения по ssh (используем опцию -P). Обратите внимание, что опция для указания порта это прописная буква P!

scp -P 6773 my file.dat pingvin@192.168.1.74:/home/pingvin

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

Теперь наоборот. Скопируем файл с удаленного компьютера в нашу текущую директорию.

scp pingvin@192.168.1.74:/home/pingvin/myfile.dat .

Копирование директории

Скопируем с нашего локального компьютера директорию ~/mydir на удаленный компьютер в директорию /home/pingvin. Используется опция -r.

scp -r ~/mydir pingvin@192.168.1.17:/home/pingvin

Копирование со сжатием данных (ускорение)

Скорость копирования файлов можно увеличить. Для этого используется опция -C. Данная опция выполняет сжатие файлов при копировании, таким образом по сети передается меньшее количество данных. Сжатие выполняется только при передаче данных, то есть результирующий файл будет в первоначальном виде.

Пример копирования файла myfile.dat с включенным сжатием.

scp -C myfile.dat pingvin@192.168.1.74:/home/pingvin

Сохранение атрибутов файла

Чтобы результирующий файл получил те же атрибуты что и исходный файл, используется опция -p (не путать с опцией -P для указания порта). При использовании опции -p сохраняются права доступа к файлу, владелец файла, временные метки и так далее.

scp -p myfile.dat pingvin@192.168.1.74:/home/pingvin

Для получения полной справки по команде scp выполните в терминале:

man scp
Войдите, чтобы ставить лайкимне нравится
Лайков: 0
войдите, чтобы ставить лайки
1

Комментарии

VadimAndyАктивный
12.01.2019, 18:19
Постоянная ссылка на комментарий
Войдите, чтобы ставить лайкимне нравится
Лайков: +1
войдите, чтобы ставить лайки
Да, Юрий! Да! Прямая замена samba, причем гораздо более шустрая и безопасная!

Написать комментарий

Ваше имя:
Текст комментария: