Apakah ada cara untuk melanjutkan proses perintah scp (secure copy) yang rusak di Linux? [Tutup]


241

Saya menyalin file 7,5 GB ke server jauh menggunakan perintah scp . Pada suatu saat transfer file terputus dan saya harus memulai dari awal lagi.

Apakah jumlah sementara file yang ditransfer benar-benar hilang? Bisakah saya memulai kembali transfer dari tempat terhenti pada upaya sebelumnya? Jika tidak, adakah perintah transfer file baris perintah Unix standar untuk melakukan itu?


1
Jawaban lain ditemukan pada pertanyaan ini , termasuk. solusi tanpa rsync.
tanius

Jawaban:


401

Jika Anda perlu melanjutkan transfer scp dari lokal ke jarak jauh , coba dengan rsync:

rsync --partial --progress --rsh=ssh local_file user@host:remote_file

Versi singkat, seperti yang ditunjukkan oleh @ aurelijus-rozenas :

rsync -P -e ssh local_file user@host:remote_file

Secara umum urutan args untuk rsync adalah

rsync [options] SRC DEST

35
Untuk port yang berbeda dari default 22 gunakanrsync -P -e "ssh -p 222" SRC DEST
asofyan

4
Dan jika rsync -eterputus saya menemukan mengubah nama. <filename>. <6funnychars> ke <filename> pada tujuan sebelum melanjutkan rsync -ediperlukan.
gaoithe

5
rsync hanya berfungsi jika Anda memilikinya tersedia di sisi lain.
dothebart

1
Apakah rsync benar-benar melanjutkan transfer file yang dimulai pada scp? Apakah dua perintah rsync benar-benar diperlukan, satu rsync, bukan scp, perintah untuk memulai penyalinan, dan kemudian terputus, dan kemudian perintah rsync kedua untuk melanjutkan penyalinan?
Geoffrey Anderson

4
Tidak masalah bagaimana Anda memperoleh unduhan parsial. Anda bisa mulai dengan scp dan kemudian selesai dengan rsync.
Tom McClure

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.