Bad-блоки hdd (продовження)

У попередній статті ми з'ясували причини появи бед-блоків. Ми зрозуміли, що явище це далеко не найприємніше. А з неприємностями зазвичай прийнято боротися. Тому сьогодні, ми будемо говорити про те, якими засобами і як це потрібно робити, та й власне потрібно.


Bad-блоки hdd (продовження)

Системну помилку

Перший і найпростіший вид помилок, який ми будемо лікувати - системну помилку. Як вже було сказано це всього лише невірно позначений сектор в файлової системі. Висновок напрошується сам собою - його потрібно позначити правильно.

Спосіб перший: логічні роздуми підказують - необхідний інструмент вміє створити на диску нормальну файлову систему. Такий інструмент доступний всім в складі операційної системи - утиліта format. Потрібно завантажитися в MS-DOS і виконати повне (саме повне) форматування диска (команда format x: / c, x - диск з неправильною FAT, c - ключ включає перевірку кластерів примі-чинних як пошкоджені). Швидке форматування тут не годиться, так як воно виробляє лише очищення змісту і зберігає інформацію про бедах. Форматування можна виконати і з Windows, правда для мене методи його роботи до сих пір залишаються загадкою і результат не завжди вдається непередбачуваний (стикався з тим, що знімався статус дефектного навіть з фізично пошкоджених секторів, що призводить до більш складних проблем. Схоже, що "Вікна "просто скидають статус дефектності в FAT, не вдаючись у подробиці, хоча і не завжди).

З звичайним format такого не спостерігалося. Цей спосіб простий і доступний, але його недоліком є ​​руйнування всієї інформації на диску. Та й якщо на диску невелике число таких секторів, це все одно що стріляти з гармати по горобцях.

Спосіб другий полягає в придбанні програми Power Quest Partition Magic, в якій є функція Bad Sector Retest. Вона перевірить саме помічені бед сектора, і залишить недоторканою інформацію на диску.


Bad-блоки hdd (продовження)

Другий вид виліковних збійних кластерів - логічні, у яких дані не відповідають ECC. Методи боротьби з цим видом трохи складніше. Цей вид дефектів не може бути виправлений програмними засобами використовують стандартні команди і засоби BIOS. Справа в тому, що при використанні таких засобів перед записом на диск відбувається попередня перевірка області записи, щоб переконатися що з нею все в порядку, а оскільки там існує помилка, то запис відхиляється (така перевірка не тільки є марнотратством, так як дані не будуть записані відразу ж, їх запис стане можливою тільки на другому проході (мабуть це є однією з причин, по якій швидкість запису зазвичай трохи нижче швидкості читання).

Логічніше було б замість такого механізму робити запис з верифікацією (перевіркою по російськи). При цьому, в блоці магнітних головок можна здійснювати за один прохід запис і перевірку читанням, що давало б гарантію правильного запису даних. І в принципі, якщо б і не виключало виникнення бед секторів розглянутого типу взагалі, то, у всякому разі, значно її знижувало, так як в разі відразу ж виявленої помилки можна було б повторити запис.

І хоча ми трохи більше розібралися з тим, чим обумовлена ​​помилка, легше не стало, так як ми з'ясували, що її не можна виправити звичайними засобами. Незвичайними засобами є програми, які звертаються до накопичувача не через функції ОС і BIOS, а через порти введення-виведення. Таких програм насправді море, в більшості випадків здійснюють примусову запис якогось вмісту в сектор (зазвичай нулів), накопичувач підраховує і записує ECC. Після цього потрібно здійснити перевірку прочитавши сектор - помилки немає - добре, сектор виявився саме таким, як ми очікували і був успішно вилікуваний. Ні - на жаль ... Мабуть, раз тут не помилка FAT і не вилікувався. він, мабуть, має фізичну природу.

Утиліти виконують таку функцію - це wdclear, fjerase, zerofill, така функція є в DFT. У більшості випадків такі утиліти універсальні, так як не використовують якихось специфічних функцій накопичувача. Робота з ними теж не вимагає спеціальних навичок. Найчастіше такі обнулітелі поширюються на сайтах виробників як програми низькорівневого форматування, хоча не мають до нього ніякого відношення. Виробники рекомендують використовувати їх в разі виникнення проблем перш, ніж звертатися в сервісний центр. Якщо не брати до уваги руйнування інформації, вони нешкідливі.

Крім виробників вінчестерів випуском сервісних програм займаються сторонні компанії і просто ентузіасти. Так безкоштовно доступна дуже корисна програма неписана нашим програмістом - MHDD (скачати її можна тут. На момент написання статті була доступна версія 2.9), яка може допомогти в даній ситуації. Схема дій така: програму записуємо на системну дискету і завантажується з неї. Вивчаємо стан SMART за допомогою зовнішнього SMART-монітора (безкоштовним SMARTUDM наприклад) і не покладаючись на свою пам'ять, зберігаємо результати в файл.


Bad-блоки hdd (продовження)


Bad-блоки hdd (продовження)


Bad-блоки hdd (продовження)


Bad-блоки hdd (продовження)


Bad-блоки hdd (продовження)

Завантажуємо MHDD і инициализируем потрібний диск натиснувши F2. В консолі вводимо команду erase або aerase (використовують різні алгоритми, aerase працює повільніше, але іноді справляється з тим, з чим не впоралася erase, тому рекомендую спочатку використовувати erase і потім при невдачі aerase). Попередньо необхідно було зберегти всю інформацію з вінчестера, так як вона буде зруйнована (маючи досвід можна обнуляти потрібну частину, не руйнуючи інші дані, але ж передбачається що у нас його немає).


Bad-блоки hdd (продовження)

По завершенні виробляємо перевірку поверхні диска -нажімаем F4 і вибираємо і в верхньому рядку вибираємо наш режим роботи (швидше за все це буде LBA, але вам видніше), і ще раз тиснемо F4 (можна ввести в консолі команду SCAN). Дивимося на предмет наявності наших бедов.


Bad-блоки hdd (продовження)


Bad-блоки hdd (продовження)

Потім вивчаємо свідчення SMART. Якщо число перепризначених секторів залишилося колишнім, беди зникли, то вони мали логічний характер і були вилікувані. Якщо ж немає - їх природа не логічна. MHDD детально розглянемо в іншій статті.

Цілком може бути, що у вас виникло питання, а чому ж не можна використовувати як в попередньому випадку команду format з ключем / c, який виконує перевірку бедов? Відповідь вже в принципі звучав: ця програма використовує стандартні засоби BIOS і не може зробити запис в бед. Мабуть, розробникам з Microsoft не захотілося себе особливо обтяжувати. Спроба відновлення такого сектора про яку повідомляє формат є просто багаторазова спроба його читання (скільки б разів він не Новомосковсклся, він не прочитає, контролер вже визнав цей факт!). Здійснити повноцінну перевірку такого Беда format не може, тому що не може зробити в нього запис. Єдине для чого він придатний - це відновлення поганих секторів є помилками файлової системи.

Згода на обробку персональних даних