Команда scp в Linux с примерами

Опубликовано: 16 Февраля, 2022

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

Синтаксис:

scp [-346BCpqrTv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 … [[user@]host2:]file2

Параметры:

  • scp –P порт: указывает порт для подключения к удаленному хосту.
  • scp –p: сохраняет время модификации, время доступа и режимы из исходного файла.
  • scp –q: отключает индикатор выполнения.
  • scp –r: Рекурсивно копировать целые каталоги.
  • scp –S программа: имя программы, используемой для зашифрованного соединения. Программа должна понимать параметры ssh (1).
  • scp –v: подробный режим. Заставляет scp и ssh печатать отладочные сообщения об их прогрессе. Это полезно при отладке проблем с подключением, аутентификацией и конфигурацией.

Примеры:

  • Копирование файла без параметра «-C» приведет к задержке в 1671,3 секунды. Вы можете сравнить результат с командой ниже, в которой используется параметр «-C».

    Как видите, всякий раз, когда вы используете сжатие, процесс передачи выполняется за 172,5 секунды. Это в 10 раз быстрее, чем без параметра «-C». Если вы копируете много файлов по сети, параметр «-C» определенно поможет вам сократить общее время, которое вам нужно.

  • Выберите другой шифр для шифрования файлов: По умолчанию SCP использует «AES-128» для шифрования файлов. Если вы хотите использовать любой другой шифр для его шифрования, вы можете использовать это с помощью параметра «-c».
  • Чтобы указать конкретный порт для использования с SCP: Обычно SCP использует порт 22 в качестве порта по умолчанию. Но в целях безопасности вы можете поменять порт на другой порт. Например, мы собираемся использовать порт 2249. Тогда команда должна быть такой.
     scp -P 2249 Label.pdf mrarianto@202.xxx :.

    Пример вывода:

    Как видите, после ввода пароля информация о процессе SCP отсутствует. После завершения процесса вы снова увидите запрос. Если вам нужна подробная информация о процессе SCP, вам поможет параметр -v.

     scp -v Label.pdf mrarianto@202.xxx :.

    Пример вывода:

  • Ограничение использования полосы пропускания: Другой параметр, который может оказаться полезным, - это параметр «-l». Параметр «-l» ограничивает общую используемую полосу пропускания. Это будет полезно, если вы создали сценарий автоматизации для копирования большого количества файлов, но вы не хотите, чтобы пропускная способность была истощена процессом SCP.
     scp -l 400 Label.pdf mrarianto@202.xxx :.

    Пример вывода:

    Если вы хотите указать время модификации, время доступа и режимы из исходных файлов, то параметр «-p» поможет вам в этом. Приблизительное время и скорость соединения будут отображаться на экране.

     scp -p Label.pdf mrarianto@202.xxx :.

    Пример вывода: