Saya menggunakan rsync untuk membuat cadangan repositori yang berisi banyak file gz termasuk banyak yang baru setiap hari. Cadangan rsync berlangsung lebih lambat dari yang seharusnya karena file-file gz ini tidak dibangun dengan opsi --rsyncable gzip (yang membuat file-file gz jauh lebih 'ramah-rsync-friendly' tanpa meningkatkan ukurannya secara signifikan atau memengaruhi kompatibilitasnya). Dan saya tidak dapat memperbaiki masalah pada saat pembuatan karena file-file tersebut dihasilkan oleh skrip python (rdiff-backup) yang menggunakan modul gzip python dan ini tidak mendukung yang setara dengan gzip --rsyncable.
Jadi sebelum menjalankan rsync saya dapat mengidentifikasi file gz baru dalam data sumber (yaitu baru sejak terakhir kali rsync dijalankan). Sekarang saya ingin 'kembali gzip' file-file ini sehingga mereka di-gzip dalam format rsyncable. Kemudian saya dapat menjalankan rsync dari sumber yang dioptimalkan.
Saya pikir ini berarti menjalankan setiap file melalui gunzip dan kemudian gzip --rsyncable tapi saya tidak terlalu yakin bagaimana melakukan ini dengan cara yang tidak akan berisiko kehilangan data atau metadata. Saran diterima dengan penuh syukur.
--rsyncable.
-abendera. Juga, versi gzip saya tidak memiliki --rsyncableflag, tetapi ia datang dengan sebuah program bernama znewyang mungkin dapat digunakan untuk apa yang Anda butuhkan.
--rsyncableitu tidak akan membantu. Saya berharap untuk satu baris kode atau skrip pendek yang akan dengan aman membongkar arsip gz dan membungkusnya kembali menggunakan --rsyncable. Tapi itu hanya pertanyaan akademis bagiku sekarang.
--rsyncablepenting adalah jika file-file tersebut diubah antara berjalan danrsyncmencoba untuk mengirim perubahan. File-file baru tidak peduli apakah dapat di-sinkronisasi ulang atau tidak, karenarsyncharus tetap mengirim semua data. Apakah file sedang diubah antara rsync berjalan?