Поиск по сайту:

Как использовать команду Linux SCP


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

В этой статье я покажу вам, как использовать команду SCP для безопасного копирования файлов с вашего компьютера на удаленный сервер Linux и обратно. Итак, приступим.

Установка SSH-сервера и клиентских программ на удаленном сервере:

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

В Linux вы можете легко установить сервер OpenSSH и клиентский пакет OpenSSH (который содержит команду scp) из официального репозитория пакетов нужного вам дистрибутива Linux. В этой статье я расскажу о некоторых из них.

CentOS 7/RHEL 7:

В CentOS 7 или RHEL 7 вы можете установить сервер OpenSSH и клиентские пакеты OpenSSH с помощью диспетчера пакетов YUM следующим образом:

$ sudo yum install -y openssh-clients openssh

Ubuntu/Debian:

В Ubuntu, Debian или любых дистрибутивах Linux на основе Debian вы можете установить сервер OpenSSH и клиентские пакеты OpenSSH с помощью диспетчера пакетов APT следующим образом:

$ sudo apt install -y openssh-client openssh-server

Arch Linux:

В Arch Linux вы можете запустить следующие команды для установки пакетов сервера OpenSSH и клиента OpenSSH с помощью менеджера пакетов Pacman.

$ sudo pacman -Sy
$ sudo pacman -S openssh

Установка scp на клиенте:

Чтобы использовать scp для копирования файлов на удаленный сервер с вашего компьютера или копирования файлов с удаленного сервера на ваш компьютер, вы должны иметь программу scp в обоих местах (компьютер и удаленный сервер).

В Linux вы можете легко установить клиентский пакет OpenSSH из официального репозитория пакетов нужного вам дистрибутива Linux.

CentOS 7/RHEL 7:

В CentOS 7 или RHEL 7 вы можете установить клиентский пакет OpenSSH с помощью диспетчера пакетов YUM следующим образом:

$ sudo yum install -y openssh-clients

Ubuntu/Debian:

В Ubuntu, Debian или любых дистрибутивах Linux на основе Debian вы можете установить клиентский пакет OpenSSH с помощью диспетчера пакетов APT следующим образом:

$ sudo apt install -y openssh-client

Arch Linux:

В Arch Linux вы можете запустить следующие команды для установки клиентского пакета OpenSSH с помощью менеджера пакетов Pacman.

$ sudo pacman -Sy
$ sudo pacman -S openssh

Использование SCP:

Чтобы копировать файлы с помощью SCP, вам необходимо знать IP-адрес доменного имени вашего сервера.

Чтобы узнать IP-адрес вашего сервера, выполните на сервере следующую команду:

$ ip a

Как видите, IP-адрес моего сервера 192.168.21.131. Для вас это будет иначе. Поэтому обязательно замените его на свой с этого момента.

Если вы хотите использовать DNS-имя, вы сможете найти его в панели администратора вашего провайдера VPS.

Формат команды scp:

$ scp [options (optional)] source destination

Если вы хотите скопировать файлы со своего компьютера на удаленный сервер, то назначение будет иметь формат имя пользователя@имя хоста/ IP_адрес:удаленный_каталог

Если вы хотите скопировать файлы с удаленного сервера на свой компьютер, то источник будет иметь формат имя пользователя@имя хоста/ IP-адрес:удаленный_путь

Здесь имя пользователя — это пользователь, под которым вы входите на удаленный сервер.

hostname или IP_address — это DNS-имя или IP-адрес вашего удаленного сервера.

удаленный_путь — это каталог или файл на удаленном сервере, который вы хотите скопировать на свой компьютер, или каталог на удаленном сервере, куда вы хотите скопировать файл или каталог с вашего компьютера.

Некоторые примеры сделают это понятным.

Допустим, вы хотите скопировать файл rancheros.iso из текущего рабочего каталога вашего компьютера в ДОМАШНИЙ каталог пользователя, под которым вы вошли, как на удаленный сервер. Для этого запустите scp следующим образом:

$ scp rancheros.iso >shovon@192.168.21.131:~

ПРИМЕЧАНИЕ. Здесь ~ представляет собой ГЛАВНЫЙ каталог.

Если вы подключаетесь к удаленному серверу в первый раз, вы должны увидеть следующее сообщение. Теперь введите yes и нажмите .

Теперь введите пароль пользователя, под которым вы вошли, и нажмите .

Файл копируется на удаленный сервер.

Как видите, файл есть.

Чтобы скопировать каталог (скажем, configs/) с вашего компьютера на удаленный сервер, выполните следующую команду:

$ scp -r configs/ shovon@192.168.21.131:~

Теперь введите пароль и нажмите . Каталог вместе со всем содержимым каталога следует скопировать на удаленный сервер.

Точно так же вы можете скопировать файл (скажем, /etc/fstab) с вашего удаленного сервера в каталог ~/Downloads вашего компьютера следующим образом:

$ scp shovon@192.168.21.131:/etc/fstab ~/Downloads

Как видите, файл скопирован на ваш компьютер.

Чтобы скопировать каталог (скажем, ~/images) с вашего удаленного сервера в домашний каталог вашего компьютера, запустите scp следующим образом:

$ scp -r shovon@192.168.21.131:~/images ~

Как видите, каталог, включая содержимое каталога, копируется в домашний каталог моего компьютера.

Итак, вот как вы используете SCP для копирования файлов из или в ваш удаленный каталог. Спасибо, что прочитали эту статью.

Статьи по данной тематике: