Примеры использования scp для копирования файлов
Программа scp позволяет безопасно копировать файлы между двумя компьютерами под управлением Linux или Unix. Для трансфера используется ssh со всеми вытекающими: такие же способы аутентификации, как в ssh, и такая же степень защиты.Примеры использования синтаксиса scp.
Взято с этого сайта
С помощью scp скопируем файл «testfile.txt» с удаленного хоста на локальный:
$ scp username@remotehost.ru:testfile.txt /local/directory
В данном случае можно воспользоваться вместо /local/directory той же ~ для обозначения домашнего каталога.
Скопируем файл «testfile.txt» с локального хоста на удаленный при помощи scp:
$ scp testfile.txt username@remotehost.ru:/remote/directory
Тоже самое касаемо ~ в качестве домашней директории пользователя на удаленном хосте — этот знак можно использовать вместо /remote/directory
Скопируем директорию «localdir» со всем ее содержимым с локального хоста в директорию «remotedir» на удаленном компьютере:
$ scp -r localdir
your_username@remotehost.ru:/remote/directory/remotedir
Безопасно скопируем файл «testfile.txt» с одного удаленного хоста под названием «remotehost1.ru» на удаленный компьютер под названием «remotehost2.ru»:
$ scp username@remotehost1.ru:/remote/directory/testfile.txt
username@rh2.ru:/remote/directory/
Хочу обратить внимание, что эта команда будет работать, например, между серверами на CentOS, но у меня в том случае, когда remotehost1 был под управлением Ubuntu, ничего не выгорело. На этот счет на launchpad уже есть соответствующий баг. Может быть я где-то заблуждаюсь, поэтому буду рад, если меня поправят.
Скопируем файлы test.txt и file.txt с локального компьютера в свою домашнюю директорию на удаленном хосте:
$ scp test.txt file.txt username@remotehost.ru:~
Скопируем несколько файлов test1.txt, test2.txt, test3.txt с удаленного хоста в свою домашнюю директорию локального компьютера:
$ scp
username@remotehost.ru:/remote/directory/\{test1.txt,test2.txt,test3.txt\}
~
По поводу производительности scp: по умолчанию scp использует алгоритм Triple-DES для шифрования передаваемых данных, но если использовать Blowfish, то можно добиться более высокой скорости передачи данных. Для этого нужно добавить ключ -c blowfish:
$ scp -c blowfish testfile.txt username@remotehost.ru:~
Также для повышения скорости передачи данных рекомендуется использовать компрессию (сжатие). За это отвечает ключ -C, но, конечно же, увеличится нагрузка на процессор.
Пример использования scp с шифрованием алгоритмом blowfish и компрессией данных:
$ scp -c blowfish -C local_testfile.txt username@remotehost.ru:~
Вроде бы нигде ничего не напутал.
scp quantum@91.216.173.170:/home/quantum/fax-445802300-0577759250--rx.tif
~