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

26.12.2011 16:10:11
Программа scp позволяет безопасно копировать файлы между двумя компьютерами под управлением Linux или Unix. Для трансфера используется ssh со всеми вытекающими: такие же способы аутентификации, как в ssh, и такая же степень защиты.
  • С помощью 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

  • И наоборот:
    скопируем «localdir» (со всем ее содержимым) на удаленный сервер в «remotedir»:
    scp -r your_username@remotehost.ru:/remote/directory/remotedir localdir

  • Безопасно скопируем файл с одного удаленного хоста под названием «remotehost1.ru» 
    на удаленный компьютер под названием «remotehost2.ru»:
    scp username@remotehost1.ru:/remote/directory/testfile.txt username@rh2.ru:/remote/directory/

  • Скопируем файлы 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:~


Категории: linux
Яндекс.Метрика