@Oli - xin chào, tôi là Jim Salter, người thực sự viết bài báo đó. Tôi đã làm việc với một máy ảo, điều này làm cho mọi thứ đơn giản hơn. Những gì tôi đã làm được bắt đầu với một tệp JPEG và mở nó ra trong trình chỉnh sửa hex. Một cái đặc biệt mà tôi đã sử dụng là Bless, mà bạn có thể cài đặt trong Ubuntu với một phước lành cài đặt apt-get đơn giản .
Sau khi mở JPEG trong Bless, tôi đã nhấn trang xuống một vài lần để tìm hiểu kỹ về "thịt" của JPEG, và sau đó chỉ tô sáng khoảng năm mươi byte dữ liệu, và sao chép và dán nó vào trình soạn thảo văn bản (trong tôi trường hợp, gEdit). Điều này đã cho tôi một cái gì đó để tìm kiếm.
Bây giờ tôi đã lưu JPEG vào từng mảng trên VM. Lưu trữ đằng sau các mảng là một loạt các tệp .qcow2. Khi tôi đã lưu JPEG vào các mảng, tôi có thể tải các tệp .qcow2 được liên kết với từng mảng vào Bless và tìm kiếm chúng - chúng không lớn lắm, không là gì ngoài JPEG và một số siêu dữ liệu - cho mẫu năm mươi byte đó Tôi đã tô sáng và sao chép ra khỏi JPEG. Voila, tôi đã có khối để tham nhũng! Tại thời điểm này, tôi chỉ có thể chỉnh sửa thủ công từng byte JPEG được lưu trữ trên đĩa ảo của VM bằng Bless - và quan trọng là làm như vậy theo cách chính xác trên mỗi mảng.
Nếp nhăn duy nhất là trong trường hợp mảng RAID5 được thử nghiệm trong bài viết, tôi phải đảm bảo rằng tôi đã chỉnh sửa bản sao thực sự của dữ liệu trong sọc và không phải là chẵn lẻ cho chính dải đó - đó là một hình ảnh nhỏ trên một mặt khác, mảng trống, do đó, không có bất kỳ dữ liệu nào trong khối FOLLOWING trong dải, làm cho khối chẵn lẻ chứa dữ liệu không bị thay đổi khỏi khối dữ liệu. Nếu tôi vô tình chỉnh sửa khối chẵn lẻ thay vì khối dữ liệu, hình ảnh sẽ hiển thị dưới dạng không thay đổi.
Một lưu ý cuối cùng - bạn KHÔNG CẦN máy ảo để làm điều này - bạn có thể làm những điều tương tự theo cùng một cách với kim loại trần; nó sẽ chỉ là một nỗi đau ở mông vì bạn cần phải làm việc với toàn bộ ổ đĩa thô thay vì với các tệp .qcow2 nhỏ xinh, và bạn sẽ phải kéo các ổ đĩa và đặt chúng vào một máy khác, hoặc khởi động vào một môi trường sống (hoặc chỉ thay thế) để gây rối với chúng. (Tôi đã thử nghiệm khả năng chữa lành dữ liệu của ZFS theo cách này, nhưng trên các máy kim loại thực, cách đây 7 năm khi tôi bắt đầu quan tâm đến các hệ thống tệp thế hệ tiếp theo.)
Hi vọng điêu nay co ich!