Scp с одного сервера на другой?

Я пытаюсь скопировать файлы с одного сервера прямо на другой, минуя мой локальный компьютер.

Я сделал

scp -r [email protected]:~/data/* [email protected]:~/data/
Password: 
Host key verification failed.
lost connection

Возможно ли это? Как я могу это исправить?

scp
27 голосов | спросил Sibbs Gambling 12 FebruaryEurope/MoscowbThu, 12 Feb 2015 08:58:35 +0300000000amThu, 12 Feb 2015 08:58:35 +030015 2015, 08:58:35

4 ответа


16

Да, это возможно, но только если server1.com может достигать server2.com, используя это имя. Если нет, вы, вероятно, получите сообщение: ssh: connect to host server2 port 22: Connection refused

Страница man для scp четко заявляет, что он копирует между хостами в сети и что:

  

Разрешены также копии между двумя удаленными хостами.

Что вы должны сделать (один раз): ssh до [email protected] и оттуда ssh до [email protected]. Ответьте на вопрос о подлинности, который вы получите с да, чтобы избавиться от сообщения проверки ключа хоста, выполняя scp

Вам может потребоваться включить агент пересылки с помощью:

scp -o "ForwardAgent yes" -r [email protected]:~/data/* [email protected]:~/data/

Но убедитесь, что вы осознаете опасность в этом (man ssh_config)

ответил Anthon 12 FebruaryEurope/MoscowbThu, 12 Feb 2015 10:13:48 +0300000000amThu, 12 Feb 2015 10:13:48 +030015 2015, 10:13:48
1

Во-первых, вам нужно проверить, что вы можете ssh на server2 без какой-либо ошибки, если вы получите ту же ошибку, то, пожалуйста, откройте файл ~/.ssh/known_hosts и выполните поиск ключа server2 и удалите его.

Затем проверьте, можете ли вы выполнить ping-сервер именем хоста

Если нет, то отредактируйте файл хоста сервера, как указано ниже

 #vi /etc/hosts  
 server1 192.186.x.x  
 server2 192.186.x.xx   
 :wq   ---> to save  

После того, как вы закончите работу с этим компакт-диском, укажите местоположение файла, который вы хотите скопировать на сервер2

scp file_name [email protected]:/path_to_the_directory ---> вы можете использовать IP вместо имени хоста, вы можете упомянуть -R, чтобы скопировать каталог.

ответил Mongrel 12 FebruaryEurope/MoscowbThu, 12 Feb 2015 11:28:32 +0300000000amThu, 12 Feb 2015 11:28:32 +030015 2015, 11:28:32
0

Проверьте, есть ли ~/.ssh/known_hosts соответствующие записи для обоих серверов

Проверьте также, имеет ли сервер 1 правильную запись ~/.ssh/known_hosts для server2

ответил Romeo Ninov 12 FebruaryEurope/MoscowbThu, 12 Feb 2015 09:06:12 +0300000000amThu, 12 Feb 2015 09:06:12 +030015 2015, 09:06:12
-2

Вы можете использовать эту команду ниже для копирования файла с одного сервера на другой:

scp [email protected]_remote_host:/usr/bin/mysql_backup.sh \
         [email protected]_remote_host:/var/tmp/
ответил karthik m 7 Jam1000000amThu, 07 Jan 2016 00:53:57 +030016 2016, 00:53:57

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132