@ Олі - привіт, я Джим Салтер, хлопець, який насправді написав цю статтю. Я працював з віртуальною машиною, яка робила речі простішими. Те, що я зробив, почалося з файлу JPEG і відкрило його в шестигранному редакторі. Конкретний, який я використав, був Bless, який можна встановити в Ubuntu за допомогою простого програмного забезпечення apt-get install bless .
Відкривши JPEG у Bless, я кілька разів натискав на сторінку, щоб добре проникнути у "м'ясо" JPEG, а потім лише виділив дані, що вартують приблизно п’ятдесят байтів, і скопіював і вставив його в текстовий редактор (у моєму випадок, gEdit). Це дало мені щось шукати.
Тепер я зберігав JPEG у кожному масиві VM. Зберігання за масивами містило серію файлів .qcow2. Як тільки я зберег JPEG у масив, я міг би завантажити файли .qcow2, пов’язані з кожним масивом, у Bless, і шукати їх - вони були не дуже великими, вони були нічим іншим, як JPEG та деякими метаданими - для цього п'ятдесяти байтових шаблонів Я виділив і скопіював із JPEG. Вуаля, у мене був блок корумпованості! У цей момент я міг просто вручну редагувати окремі байти JPEG, які зберігаються на віртуальному диску VM за допомогою Bless - і, що важливо, робити це точно так само на кожному масиві.
Єдина зморшка полягає в тому, що у випадку тестованого в статті масиву RAID5 я повинен був переконатися, що я редагував фактичну копію даних у смужку, а не співвідношення для самої смуги - це було невелике зображення на в іншому випадку порожній масив, тому в блоці СЛУЖБ в смузі не було жодних даних, завдяки чому блок паритету містить дані, які не змінюються від блоку даних. Якби я випадково відредагував блок парності замість блоку даних, зображення було б відображене як незмінне.
Останнє зауваження - вам не потрібні віртуальні машини для цього - ви можете робити ті самі речі тими самими способами з голим металом; це буде просто біль в області прикладу, тому що вам потрібно буде працювати з цілими сирими дисками, а не з гарними маленькими файлами .qcow2, і вам доведеться або витягнути диски і покласти їх в іншу машину, або завантажуйтесь у живе (або просто чергування) середовище, щоб повозитися з ними. (Я протестував дані ZFS саме таким чином, але на справжніх машинах з голого металу 7 років тому, коли я вперше зацікавився файловими системами нового роду.)
Сподіваюся, це допомагає!