Saya punya satu file besar di server one
dan saya ingin menyalinnya ke server two
menggunakan scp
. Saya memiliki pengaturan tombol yang benar dan saya dapat ssh / scp ke kedua server dari desktop saya.
File yang saya perlu salin lebih besar daripada ruang kosong di hdd workstation saya, jadi saya ingin melakukan:
scp one:/opt/bigfile.tar.gz two:/opt/bigfile.tar.gz
tapi saya mendapat:
ssh: Could not resolve hostname one: Name or service not known
Kami tidak memiliki DNS di sini (jangan tanya kenapa), jadi saya punya ini di ~ / .ssh / config saya:
Host one
Hostname <IP address of server one>
User jspurny
Host two
Hostname <IP address of server two>
User jspurny
Jika saya mencoba dengan file yang lebih kecil dan mentransfernya dari one
ke workstation saya dan kemudian ke two
, itu berfungsi dengan baik:
scp one:/opt/smallerfile.tar.gz .
scp smallerfile.tar.gz two:/opt/
Saat menggunakan alamat IP secara langsung seperti yang disarankan dalam komentar, saya mendapat:
$ scp jspurny@<one's IP>:bigfile.tar.gz jspurny@<two's ip>:bigfile.tar.gz
Host key verification failed.
lost connection
Bukan masalah:
Ukurannya bukan masalah di sini - itu hanya "pemicu" untuk masalah ini karena tidak ada cara untuk menyimpan bigfile.tar.gz
di workstation saya. Masalah terjadi terlepas dari ukuran file.
Pertanyaan:
Mengapa perintahnya:
scp oneremote:file secondremote:file
melempar kesalahan terlepas dari apakah menggunakan .ssh/config
alias atau langsung menggunakan alamat ip?
Diselesaikan - semacam - masih mencari penjelasan - Saya telah membagi file besar ke file yang lebih kecil dan mentransfernya satu per satu melalui workstation saya. Saya masih bertanya-tanya mengapa itu tidak berhasil. Jadi saya masih akan menghargai beberapa penjelasan tentang apa yang salah ..
Menemukan alasan mengapa gagal: Sepertinya saya bodoh. Saya pikir itu perintahnya
scp one:file two:file
sedang membuat dua koneksi ke setiap server dan kemudian menerima data dari satu dan segera mengirimkannya ke dua dan dengan demikian bertindak seperti relay.
Ini jelas bukan masalahnya, karena -v
opsi sederhana mengungkapkan bahwa sebenarnya hanya terhubung ke satu dan dari satu ia mencoba untuk terhubung ke dua . Yang jelas tidak mungkin karena server satu seharusnya tidak terhubung ke dua .