web-dev-qa-db-ja.com

Scpあるサーバーから別のサーバーへ?

ローカルコンピューターをバイパスして、あるサーバーから別のサーバーにファイルを直接コピーしようとしています。

やった

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

これは可能ですか?どうすれば修正できますか?

35
Sibbs Gambling

2つのサーバー間で接続が可能ではないときにかなり頻繁に使用するもの

scp -3 user@server1:/path/to/file user@server2:/path/to/file

ソース

-3 2つのリモートホスト間のコピーは、ローカルホストを介して転送されます。このオプションを使用しない場合、データは2つのリモートホスト間で直接コピーされます。このオプションは、進行状況メーターを無効にすることに注意してください。

Youuが両方に適切に接続していると仮定すると、速度が遅くなりすぎない。

59
exussum

はい、これは可能ですが、server1.comがその名前を使用してserver2.comに到達できる場合のみです。そうでない場合は、おそらくメッセージが表示されます:ssh: connect to Host server2 port 22: Connection refused

manscpページには、ネットワーク上のホスト間でコピーされ、次のことが明記されています。

2つのリモートホスト間のコピーも許可されます。

(一度)すべきことは、sshから[email protected]まで、そしてそこからsshから[email protected]までです。 scpの実行中にホストキー検証メッセージを取り除くために、yesで得られる信頼性の質問に答えます

運送業者を有効にする必要があるかもしれません:

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

しかし、その中の危険を理解していることを確認してください(man ssh_config

16
Anthon

最初に、エラーなしでserver2にsshできることを確認する必要があります。同じエラーが発生する場合は、ファイルを開いてください~/.ssh/known_hostsとserver2キーを検索して削除します。

次に、ホスト名でサーバーにpingできるかどうかを確認します

そうでない場合は、以下のように両方のサーバーのHostファイルを編集してください。

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

このcdが完了したら、server2にコピーするファイルの場所に移動します。

scp file_name user@server2:/path_to_the_directory --->言及できるホスト名の代わりにIPを使用できます-Rはディレクトリをコピーします。

1
Mongrel

~/.ssh/known_hostsに両方のサーバーの適切なレコードがあるかどうかを確認します

Server1にserver2の適切な~/.ssh/known_hostsレコードがあるかどうかも確認してください

0
Romeo Ninov