Пост

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

SCP (Secure Copy Protocol) - команда в Linux для защищенного копирования файлов или папок на удаленный компьютер (сервер) или с него, используя для этого протокол SSH (Secure Shell). SCP является составной частью пакета OpenSSH. Благодаря использованию ssh, SCP является отличной заменой для небезопасного протокола FTP, которой широко используется в Интернете.

Для копирования файлов с удаленного сервера, либо на удаленный сервер, либо между удаленными серверами есть замечательная утилита scp

Несколько примеров использования команды scp

Скачиваем файл на локальную машину

1
$ sudo scp [email protected]:/home/backup/archive.tar.gz /media

С помощью этой команды мы скачиваем файл /home/backup/archive.tar.gz с удаленного сервера 192.168.10.12 в наш локальный каталог /media

Загружаем файл на удаленный сервер

1
$ sudo scp /media/archive.tar.gz [email protected]:/home/backup

С помощью этой команды мы загружаем файл /media/archive.tar.gz с локального ПК на удаленный сервер 192.168.10.12 в каталог /home/backup

Копируем каталог log с локального хоста в директорию log на удаленном хосте

1
$ sudo scp -r /home/log [email protected]:/opt/remote/log

Копирование между серверами

1
$ sudo scp -r [email protected]:/home/dir/ [email protected]:/home/dir/

Если SSH запущен на другом порту, можно указать это с помощью команды -P (“P” большая, и указывается перед хостом)

1
$ sudo scp -P 9999 file.zip [email protected]:~/

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

1
$ sudo scp test1.txt test2.txt [email protected]:~

Копируем файл test.txt локального компьютера в домашний каталог на удаленном сервере. Для увеличиваем скорости работы SCP изменим алгоритм шифрования с AES-128 (по умолчанию) на Blowfish

1
$ sudo scp -c blowfish test.txt [email protected]:~

Ограничиваем ширину канала используемого SCP до 300 Kbit/s:

1
$ sudo scp -l 300 test.txt [email protected]:~

Дополнительные флаги, используемые SCP:

  • -r - рекурсивное копирование (для директорий)
  • -C - использовать сжатие при передачи
  • -P - порт ssh
  • -p - сохранить информацию о времени создания, модификации файла
Авторский пост защищен лицензией CC BY 4.0 .

© IT Draft. Некоторые права защищены.