Я теж не робив багато нечітких тестувань , але ось дві ідеї:
Напишіть кілька нулів у середину файлу. Використовуйте dd
с conv=notrunc
. Це пише один байт (блок-розмір = 1 кол = 1):
dd if=/dev/zero of=file_to_fuzz.zip bs=1 count=1 seek=N conv=notrunc
Використання /dev/urandom
в якості джерела також є варіантом.
Крім того, пробийте отвори декількома 4 к fallocate --punch-hole
. Можна навіть fallocate --collapse-range
вирізати сторінку, не залишаючи заповненого нулем отвору. (Це змінить розмір файлу).
Відновлення, завантажене в іншому місці, відповідало б --collapse-range
сценарію. Неповний торрент буде відповідати punch-hole
сценарію. (Рідкий файл або заздалегідь призначені розширення, або читати як нуль, де ще не було написано.)
Погана оперативна пам’ять (у системі, з якої ви завантажили файл) може призвести до пошкодження, а оптичні диски також можуть пошкодити файли (їх ECC не завжди є достатньо сильним, щоб ідеально відновитись від подряпин або відцвітання барвника).
Сектори DVD (блоки ECC) мають 2048B , але можуть траплятися однобайтові або навіть однобітні помилки. Деякі накопичувачі, ймовірно, дадуть вам погані нерегульовані дані замість помилки читання для сектору, особливо якщо ви читаєте в режимі "необроблений", або якщо це називається.