bup-damage - Hancurkan blok file secara acak
bup damage [-n count] [-s maxsize] [--percent pct] [-S seed] [--equal] <filenames...>
Gunakan bup damage untuk secara sengaja menghancurkan blok dalam file .pack atau .idx (dari .bup/objects/pack) untuk menguji fitur pemulihan bup-fsck(1) atau program lain.
PROGRAM INI SANGAT BERBAHAYA DAN AKAN MENGHANCURKAN DATA ANDA
kerusakan bup terutama berguna untuk pengujian otomatis atau manual alat pemulihan data, untuk meyakinkan diri sendiri bahwa alat tersebut benar-benar berfungsi.
jumlah blok terpisah untuk merusak di setiap file (default 10). Perhatikan bahwa ada kemungkinan lebih dari satu segmen yang rusak jatuh di blok pemulihan bup-fsck(1) yang sama, jadi Anda mungkin tidak merusak blok pemulihan sebanyak yang Anda harapkan. Jika ini merupakan masalah, gunakan --equal.
ukuran maksimum, dalam byte, dari setiap blok yang rusak (default 1 kecuali --percent ditentukan). Perhatikan bahwa karena cara kerja bup-fsck(1), blok multi-byte dapat berada di batas antara dua blok pemulihan, dan dengan demikian merusak dua blok pemulihan yang terpisah. Dalam file kecil, blok yang rusak juga mungkin lebih besar dari blok pemulihan. Jika masalah ini mungkin menjadi masalah, Anda harus menggunakan ukuran kerusakan default satu byte.
ukuran maksimum, dalam persen dari file asli, dari setiap blok yang rusak. Jika keduanya --size dan --percent diberikan, ukuran blok maksimum adalah minimum dari dua batasan. Anda dapat menggunakan ini untuk memastikan bahwa blok tertentu tidak akan pernah merusak lebih dari satu atau dua blok pemulihan git-fsck(1).
benih generator angka acak dengan nilai yang diberikan. Jika Anda menggunakan opsi ini, pengujian Anda akan dapat diulang, karena offset, ukuran, dan konten blok yang rusak akan selalu sama. Secara default, angka acak berbeda setiap kali (sehingga Anda dapat menjalankan tes dalam satu lingkaran dan berulang kali menguji dengan kerusakan yang berbeda setiap kali).
alih-alih memilih offset acak untuk setiap blok yang rusak, tempatkan blok secara merata di seluruh file, mulai dari offset 0. Jika Anda juga memilih ukuran blok maksimum yang benar, ini dapat menjamin bahwa setiap blok kerusakan yang diberikan tidak akan pernah merusak lebih dari satu blok pemulihan git-fsck(1). (Ini juga dijamin jika Anda menggunakan -s 1.)
# make a backup in case things go horribly wrong
cp -pPR ~/.bup/objects/pack ~/bup-packs.bak
# generate recovery blocks for all packs
bup fsck -g
# deliberately damage the packs
bup damage -n 10 -s 1 -S 0 ~/.bup/objects/pack/*.{pack,idx}
# recover from the damage
bup fsck -rbup-fsck(1), par2(1)
Bagian dari paket bup(1).
Avery Pennarun