ローカルシステムをバイパスして、あるサーバーから別のサーバーにファイルを直接コピーしようとしています。
私がやった
scp -r [email protected]:~/data/* [email protected]:~/data/
Password:
Host key verification failed.
lost connection
可能ですか?どうすれば解決できますか?
答え1
2つのサーバー間に接続がない場合によく使用するもの
scp -3 user@server1:/path/to/file user@server2:/path/to/file
源泉
-3 2 つのリモートホスト間のコピーはローカルホスト経由で送信されます。このオプションがないと、データは2つのリモートホスト間で直接コピーされます。このオプションは進行状況インジケータを無効にします。
両方にうまく接続されていると仮定すると、速度が遅すぎるべきではありません。
答え2
はい、可能です。ただし、その名前を使用してアクセスserver1.com
できる場合にのみ可能です。server2.com
そうでない場合は、次のメッセージが表示されます。ssh: connect to host server2 port 22: Connection refused
ページman
には、scp
ネットワーク上のホスト間で複製されることと、次のことが明確に記載されています。
また、2 つのリモートホスト間のレプリケーションも可能です。
あなたが(一度)やるべきことはそこにssh
着くことです。次の操作を実行したときにホストキーの確認メッセージを削除するには、[はい]を選択して真偽についての質問に答えてください。[email protected]
ssh
[email protected]
scp
以下では、フォワードプロキシを有効にする必要があります。
scp -o "ForwardAgent yes" -r [email protected]:~/data/* [email protected]:~/data/
しかし、危険を認識していることを確認してください(man ssh_config
)
答え3
まず、エラーなしでserver2にSSHで接続できることを確認する必要があります。同じエラーが発生した場合は、ファイルを開き、~/.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 user@server2:/path_to_the_directory
>ホスト名の代わりにIPを使用してディレクトリをコピーできます-R
。
答え4
Linuxの場合は、次のコマンドを使用して、あるサーバーから別のサーバーにファイル/フォルダをシームレスにコピーします。これにより、サーバーが切断されても操作が完了します。
nohup bash -c 'scp -r [user_source@Soure_Server_ip]:/[path_to_folder] [user_dest@destination_server_ip]:/[path_to_destination_folder]'>/dev/null 2>&1