Удаленное копирование файлов с помощью SCP

pligin

Команда форума
Администратор
SCP (Secure Copy Protocol) - Линукс команда для защищенного копирования файлов или папок на удаленный компьютер (сервер) или с него, используя для этого протокол SSH (Secure Shell). SCP является составной частью пакета OpenSSH. Благодаря использованию ssh, SCP является отличной заменой для небезопасного протокола FTP, которой широко используется в Интернете.

Иногда возникает задача передачи файлов с одного сервера на другой.

Приведу примеры как ее использовать.

Заходим на сервер используя SSH протокол , например через программу - PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/)

1. Как копировать файл на удаленный сервер:

Заходим в директорию от куда необходимо скопировать файл/файлы, например file1.zip в директории /home/ , необходимо скопировать на удаленный компьютер в папку /home2/ . Находимся на первом сервере 192.168.0.1

root@192.168.0.1 [/home/]# scp file1.zip root@192.168.0.2:/home2/
или с любого места
root@192.168.0.1 [/]# scp /home/file1.zip root@192.168.0.2:/home2/
после ввода у вас запросит пароль к удаленному серверу.
root@192.168.0.2's password:

т.е. scp файл пользователь@адрес_сервера (IP или домен):каталог на удаленном сервере куда необходимо это скопировать
если необходимо скопировать несколько файлов то их можно указать через пробел, т.е.: file1.zip file2.zip ...

2. Как копировать файлы и папки на удаленный сервер:

например вам нужно скопировать несколько каталогов и в каждом каталоге есть много файлов. Находимся на первом сервере 192.168.0.1

root@192.168.0.1 [/]# scp -r /home/ root@192.168.0.2:/home2/
после ввода у вас запросит пароль к удаленному серверу.
root@192.168.0.2's password:

будет все скопировано что находится в каталоге /home/
т.е. scp каталог_от_куда_копировать_папки_и_файлы пользователь@адрес_сервера (IP или домен):каталог на удаленном сервере куда необходимо это скопировать

параметр: -r – рекурсивное копирование папок (включая подкаталоги);

3. Как копировать файл с удаленного сервера:

Например на удаленном сервере находится file1.zip в директории /home2/, копируем на локальный сервер (там где находитесь) в папку /home/ . Находимся на первом сервере 192.168.0.1

root@192.168.0.1 [/]# scp root@192.168.0.2:/home2/file1.zip /home/
после ввода у вас запросит пароль к удаленному серверу.
root@192.168.0.2's password:

т.е. мы скопируем с удаленного сервера файл file1.zip с папки /home2/ к себе в каталог /home/

4. Как копировать файлы и папки с удаленного сервера:

root@192.168.0.1 [/]# scp -r root@192.168.0.2:/home2/ /home/
после ввода у вас запросит пароль к удаленному серверу.
root@192.168.0.2's password:

т.е. скопируем с удаленного сервера все что находится в каталоге /home2/ к себе в каталог /home/

параметр: -r – рекурсивное копирование папок (включая подкаталоги);

5. Как копировать файлы с одного сервера на другой находясь на третем.

root@192.168.0.3 [/]# scp root@192.168.0.1:/home/file1.zip root@192.168.0.2:/home2/
после ввода у вас запросит пароль к удаленным серверам.
root@192.168.0.1's password:
root@192.168.0.2's password:

т.е. мы скопируем с одного удаленного сервера (192.168.0.1) файл /home/file1.zip на другой удаленный сервере (192.168.0.2) в папку /home2/
находясь на третем сервере (192.168.0.3). Можно копировать файлы а так же и папки, используя параметр -r

Это конечно мало кому понадобится :) но такое возможно.

Возможные параметры SCP:

-r – рекурсивное копирование папок (включая подкаталоги);

-P port – использовать нестандартный порт (по умолчанию 22) – этот параметр следует использовать, если сервер ожидает соединения на нестандартном порту. Этот параметр может быть полезен при соединении из сети, защищенной файрволлом. Запуск SSH-сервера на порту 443 (используемом для защищенных HTTP-соединений) - это лучший способ обойти ограничения, установленные сетевым администратором.
 
Верх