badblocks — утиліта Linux для виявлення пошкоджених секторів на дискових накопичувачах. Вона створює список цих секторів, який можуть використовувати інші програми, наприклад, mkfs, щоб вони не використовувались у майбутньому і, отже, не спричиняли пошкодження даних. Є частиною проєкту e2fsprogs,E2fsprogs: Ext2/3/4 Filesystem Utilities — Release notes і доступна в операційній системі BSD.FreshPorts — sysutils/e2fsprogs
При запуску як окрема програма badblocks надає список із проблемами, якщо такі є. Це зручно для перевірки справності дисковода, незалежно від даних SMART та перевірки файлової системи.
Параметр «-c» Більш поширеним випадком використання є виклик badblocks як частини e2fsck з передаванням параметру ""-c" для сканування на наявність пошкоджених блоків та запобігання збереженню даних на цих блоках. Це робиться шляхом додавання списку знайдених несправних блоків додескриптора, неправильних блоків, щоб запобігти виділенню пошкоджених секторів для файлів чи каталогів. Перевірку можна виконати методом перевірки лише читання ("-c") або неруйнівного методу читання-запису ("-cc").
dumpe2fs Запуск dumpe2fs -b покаже список помилкових блоків, записаних e2fsck або tune2fs.
Приклади badblocks -nvs /dev/sdb
— перевірка накопичувача «sdb» в неруйнівному режимі читання-запису та відображення ходу, з виведенням номерів блоків у міру їх перевірки. badblocks -wvs /dev/sdb6
— перевірка 6-го розділу накопичувача «sdb» в руйнівному режимі читання-запису (-w = режим запису), з записом 4-х різних шаблонів на весь розділ з подальшою перевіркою читання кожного. Виводить номери блоків у міру їх перевірки (-s = показати, -v = детально). Усі дані розділу будуть перезаписані на рівні блока. badblocks -wvsb 4096 /dev/sdb
— так само, як і вище, але для всього накопичувача з розміром блоку 4096. Це знищує MBR, розділи та дані. На сучасних дисководах, ймовірно, не буде знайдено дефектних секторів, оскільки вони підмінюють пошкоджені сектори секторами з запасних доріжок, але запуск програми з новим накопичувачем протягом декількох днів перевірить усю поверхню, і при подальшому зчитуванні дані SMART з часом покажуть перерозподілені сектори.
Використання параметру -w на пристрої, що містить файлову систему, стирає дані на цьому пристрої.
Примітки
Посилання Smartmontools — Bad block HOWTO for smartmontools. A complex how to for badblocks; might be confusing for the casual user. Badblocks — ArchWIKI