Jika saya menjalankan rsync
dengan --info=progress2
, saya mendapatkan output seperti
105.45M 13% 602.83kB/s 0:02:50 (xfr#495, ir-chk=1020/3825)
Tetapi apa arti angka tunggal? Saya belum menemukan entri yang cocok di halaman manual.
- Angka pertama tampaknya adalah jumlah data yang diproses (byte yang disalin aktual dan byte yang dilewati, karena sudah ada di lokasi target), bukan? Tampaknya bukan jumlah data yang ditransfer, karena itu meningkat lebih cepat daripada koneksi internet saya ...
- Apakah persentase mengacu pada jumlah data atau jumlah file yang akan disalin? Apakah ini mempertimbangkan file yang dikecualikan dan file yang sudah terbaru di lokasi target?
- Waktu di posisi ketiga pertama tampaknya merupakan perkiraan waktu untuk penyelesaian, tetapi ketika saya mencobanya, ia melonjak antara beberapa jam dan beberapa detik. Apa yang dimaksud, dan bagaimana cara menghitungnya?
- Apa arti dua angka terakhir?
man
halaman ( PILIHAN >--progress
)?Jawaban:
Maksudnya:
Juga, xfr # 495 berarti bahwa saat ini file ke-495 sedang ditransfer, sementara ir-chk = 1020/3825 menunjukkan bahwa, dari total (sejauh ini) 3825 file dipindai secara rekursif (terdeteksi), sejauh ini 1020 dari mereka masih untuk diperiksa / diverifikasi.
Ini berarti bahwa jika pemindaian mendeteksi misalnya lebih dari 100 file yang akan diperiksa, kedua belah pihak akan bertambah 100 (kemudian akan dibaca ir-chk = 1120/3925 ). Setelah semua file telah dipindai (terdeteksi oleh pemindaian rekursi tambahan), jumlah di sisi kanan garis miring akan tetap sama hingga akhir seluruh proses, sedangkan yang di sisi kiri garis miring akan mulai berkurang karena semakin banyak file diperiksa (diverifikasi). Selain itu, karena akhir rekursi, ir-chk akan berubah ke-chk, menunjukkan bahwa pemindaian rekursi tambahan telah berakhir melakukan pemeriksaannya (operasi pendeteksian file). Namun, karena file akan terus diperiksa / diverifikasi sampai semuanya selesai, jumlah file yang belum diperiksa / diverifikasi (sisi kiri slash) akan berkurang hingga angka tersebut menjadi nol (menunjukkan akhir dari proses verifikasi file) .
Biarkan N menjadi jumlah total aktual file yang akan diperiksa / diverifikasi, ketika seluruh proses berakhir Anda akan melihat:
... artinya tidak ada file yang tersisa untuk diperiksa / diverifikasi, dari total N file yang terdeteksi oleh pemindaian rekursi tambahan.
Tentang ir-chk (dari halaman manual rsync):
sumber
--no-inc-recursive
, tapi bukan itu yang saya bicarakan. Waktu ETAprogress2
didasarkan pada total (diketahui) data dan waktu yang berlalu; itu bukan per-file (tetapi tidak mengedipkan nilai file-tunggal-waktu-berlalu untuk centang pada penyelesaian file tunggal). Ada bug yang melibatkan ini pada satu titik yang akan membuat ini kurang jelas, meskipun saya tidak yakin apa versi itursync -a --info=progress2 /src /dest
sebenarnya memberi saya total waktu yang telah berlalu berganti-ganti dengan ETA global , bukan ETA per-file. Itu aneh dan baru bagi saya, tetapi Anda benar.file1
-, rsync menunjukkan kepada Anda ETA global (saat ini) untuk seluruh proses penyalinan. Kemudian, ketika selesai menyalinfile1
, rsync menunjukkan kepada Anda waktu global berlalu saat ini, dan kemudian mulai menyalin file berikutnya - katakan,file2
-, sehingga menunjukkan kepada Anda (saat ini) ETA global lagi, sampai proses penyalinanfile2
berakhir dan kemudian rsync berisi total waktu berlalu yang baru (bertambah). Inilah mengapa Anda melihat "lompatan" itu: itu karena Anda melihat ETA global (total) yang menurun bergantian dengan meningkatnya waktu global (total) yang telah berlalu.