Adakah yang tahu mengapa rsync akan terus mengirim file berulang kali?

14

Saya mencoba menggunakan rsync untuk membuat cadangan beberapa file, sekitar setengah TB. Sekarang ini adalah keadaan di mana ia terus mengirim file yang sama setiap kali dijalankan.

sebagai contoh:

rsync -av /data/source/* user@host:/data/dest
sending incremental file list
source/file1.txt
source/file2.txt

Saya kemudian memverifikasi file-file itu disalin ... maka pada saat dijalankan itu melakukan hal yang sama

rsync -av /data/source/* user@host:/data/dest
sending incremental file list
source/file1.txt
source/file2.txt

tahu mengapa macet di file-file ini? Saya sudah mencoba untuk menghapus seluruh direktori dest dan memulai kembali tetapi tidak berhasil.

Terima kasih,


sumber
1
Sudahkah Anda melakukan diff pada file, dan memeriksa semua informasi pada daftar ls -l mereka? Pada prinsipnya, mereka dapat dimodifikasi di kedua edn tanpa Anda sadari, dan mungkin rsync tidak meninggalkan file dalam keadaan yang tepat di tujuan.
Charles Stewart

Jawaban:

9

Gunakan --itemize-changesuntuk mendapatkan rsync untuk menampilkan apa yang sebenarnya sedang diubah

Jawaban dari ire_and_curseskesalahpahaman intinya -tadalah untuk melestarikan waktu modifikasi , bukan untuk memutuskan apakah akan mentransfer file atau tidak. Opsi yang menentukan apakah akan melompati file atau tidak adalah: -cyang memutuskan apakah akan melewatkan file yang identik berdasarkan checksum, dan -Iyang mengabaikan ukuran dan waktu ketika memutuskan apakah akan melewati file.

Juga, meskipun rsync mungkin mengirim file lagi, itu tidak boleh mentransfer semua konten - berjalan dengan -vharus mencetak ringkasan tentang berapa banyak data yang cocok dalam transfer.

Untuk memeriksa, berikut ini akan membantu:

  • md5sum file di kedua ujung - untuk menunjukkan kepada Anda jika konten telah berubah
  • ls -l akan menunjukkan kepada Anda jika cap waktu telah berubah.
David Fraser
sumber
5

Saya ingat masalah yang sama dengan jam dua sistem tidak cukup berperilaku. Saya harus menggunakan --modify-window=60untuk menjelaskan "anomali sementara".

janmoesen
sumber