SCP Linux — примеры использования Secure Copy

Утилита SCP или Secure Copy позволяет производить безопасную передачу данных между хостами (даже между двумя удаленными хостами). Linux SCP использует те же механизмы авторизации и шифрования, что и SSH (Secure Shell), поскольку работает поверх этого самого SSH. SCP — как утилита командной строки любима многими пользователями за свою простоту и защищенность. В этой заметке я покажу несколько опишу примеры использования SCP для демонстрации ее возможностей.

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

Пример 1: Копируем файл «file.txt» с удаленного сервера «remote.server» в локальную директорию «/local/directory»:

 scp user@remote.server:file.txt /local/directory

Пример 2: Копируем файл «file.txt» из локальной директории на удаленный сервер «remote.server» в папку «/remote/directory»:

 scp file.txt user@remote.server:/remote/directory

Пример 3: Копируем локальную папку «dir1»  в директорию «/remote/directory/dir2» на удаленном сервере «remote.server»:

 scp -r dir1 user@remote.server:/remote/directory/dir2

Пример 4: Копируем файл «file.txt» с одного удаленного сервера «remote.server1» на другой удаленный сервер «remote.server2»:

 scp user@remote.server1:/directory/file.txt user@remote.server2:/some/directory/

Пример 5: Копируем файлы «file1.txt» и «file2.txt» из локальной директории в домашний каталог пользователя «user» на удаленном сервере «remote.server»

 scp file1.txt file2.txt user@remote.server:~

Пример 6: Копируем файл «file.txt»из локальной директории в каталог «/remote/directory» на удаленном сервере «remote.server». При этом используем порт 2223.

 scp -P 2223 file.txt user@remote.server:/remote/directory

Пример 7: Копируем файл «file.txt» из локальной директории в домашний каталог пользователя «user» на удаленном сервере «remote.server». При этом сохраняем время изменения и доступа а так же права файла.

 scp -p file.txt user@remote.server:~

Пример 8: Копируем файл «file.txt» из локальной директории в домашний каталог пользователя «user» на удаленном сервере «remote.server». При этом задаем алгоритм шифрования BlowFish (AES128 — по умолчанию для SCP)

 scp -c blowfish file.txt user@remote.server:~

Пример 9: Копируем файл «file.txt» с локального компьютера в  домашний каталог пользователя «user» на удаленном сервере «remote.server». При этом ограничиваем пропускную способность для SCP до 100 Kbit/s.

 scp -l 100 file.txt user@remote.server:~

Пример 10: Копируем несколько файлов с удаленного сервера «remote.server» в текущую локальную директорию:

 scp user@remote.server:~/\{file1,file2,file3\} .

 

SCP опции

r — рекурсивное копирование (для копирования директорий)

-C — сжатие стандартный compression для ssh (используется большая ‘C’)

-c <алгоритм шифрования> — позволяет задать алгоритм шифрования (используется маленькая ‘c’)*

-l <лимит в Кб> – ограничивает пропускную способность (указывается в Килобитах/секунду)

-o <опции ssh> – для передачи опций в ssh

-P <номер порта> – Используется для указания номера портя для соединения (используется большая ‘P’)

-p — сохранит время создания/изменения, а тк же права доступа  (используется маленькая ‘p’)

-q — silent mode: отключает вывод уведомлений в консоль

-v — verbose mode: выводит подробный лог в консоль. Может быть аолезно при проблемах с соединением или доступом

SCP особенности

  • В качестве хоста для подключения может использоваться как корректное доменное имя «user@remote.server» или IP адрес «user@123.123.123.123»
  • Эта инструкция написана как использование SCP в Linux и все приведенные команды будут корректно работать в большинстве дистрибутивов. Так же эти команды будут корректно работать и в «Terminal» на MacOS. Для ОС Windows Вы можете использовать WinSCP.
  • Если при копировании файл назначения уже существует — он будет перезаписан. Учитывайте это и будьте аккуратны.

 

Сделано в Одессе
Сайт находится в состоянии наполнения контентом, приносим свои извинения за временные неудобства.