GNU/Linux >> Belajar Linux >  >> Linux

Cara memanggil rsync berulang kali hingga file berhasil ditransfer

Solusi 1:

Jika Anda menyinkronkan semuanya dalam satu sinkronisasi, panggil rsync dalam satu putaran hingga rsync memberi Anda kode pengembalian yang berhasil.

Sesuatu seperti:

RC=1 
while [[ $RC -ne 0 ]]
do
   rsync -a .....   
   RC=$?
done

Ini akan mengulang, memanggil rsync, hingga memberikan kode pengembalian 0. Anda mungkin ingin menambahkan tidur di sana agar server Anda tidak melakukan DOS.

Solusi 2:

Saya mengalami masalah yang sama beberapa waktu lalu. Pada akhirnya saya menulis sesuatu yang mirip dengan jawaban David, tetapi memperbaikinya sedikit dengan percobaan ulang maksimal, menanggapi Ctrl-C, dan semacamnya:http://blog.iangreenleaf.com/2009/03/rsync-and-retrying- sampai-kita-dapatkan-itu.html.

Solusi 3:

menyatukan semuanya dengan sshpass

while ! sshpass -p 'xxxx' rsync --partial --append-verify --progress -a -e 'ssh -p 22' /source/ [email protected]:/dest/; do sleep 5;done

Linux
  1. Bagaimana saya bisa mengecualikan file secara default dengan rsync?

  2. Alasan rsync TIDAK mentransfer semua file?

  3. Cara menyalin file dalam jumlah besar dengan cepat antara dua server

  1. Bagaimana cara menemukan file mana yang menghabiskan 80% ruang di server web Linux?

  2. File khusus Linux (mv atau cp) dari daftar teks file?

  3. Transfer SCP hanya mengubah file

  1. Cara Menggunakan Rsync untuk Menyinkronkan File Baru atau Berubah/Dimodifikasi di Linux

  2. Bagaimana cara menggunakan perintah Rsync di linux?

  3. Bagaimana cara menghapus file ._ dalam direktori? Ubuntu