Про примноження помилок, Носії інформації, Залізо, статті

А. Захарченко

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

Репутація у Norton Disk Doctor (NDD) давно була поганою. Ще за часів DOS, виявивши нетипову головний завантажувальний запис (MBR), він починав мигати червоними екранами і наполягати на “відновлення”. Попадалися на цей прийом могли втратити всю інформацію на вінчестері. Замість інтелектуального вирішення цієї проблеми в налаштування NDD була введена можливість відключення тесту критичних областей жорсткого диска і на цьому “класики програмування” заспокоїлися.

Win9x вимагає значно більш частого обслуговування диска ніж MS DOS. Крім втрачених кластерів і обривків тимчасових файлів докучають ще помилки в довгих іменах. Хоча в форматі імен використання спецсимволів (>:? І т.д.) не допускається, але іноді Windows примудряється їх прийняти (Гірше того – увіткнути в ім’я MS DOS) і тоді файл неможливо ні перейменувати ні видалити. Scandisk від Microsoft не справляється з багатьма проблемами в іменах, на відміну від Доктора, спочиває тепер на лаврах Symantec.

Один із законів поведінки помилок програмування стверджує, що дві помилки взаємно компенсуються. Однак, коли стикаються прорахунки з різних програм, то їх забійна сила значно зростає.

Все почалося з того, що MBR і таблиця частин (Partition Table) 6-гігабайтного диска виявилися затерті сміттям. Ця подія не викликала особливих хвилювань оскільки Microsoft давно навчила свою fdisk справлятися з такими ситуаціями. Команда fdisk / mbr повернула життя вінчестера, а тести Scandisk не виявили ніяких проблем.

Перший дзвінок пролунав з запуском NDD з комплекту NU 2000. Виставивши вікно, що повідомляє про помилку в завантажувачі DOS (DOS Boot Record), він пару хвилин шарудів диском, а потім повідомив, що не може внести виправлення і припинив роботу. Згадавши минуле, доктору негайно заборонили тести завантажувальних областей. Але не тут-то було. При наступному старті NDD заборону проігнорував і повідомив, що помилка в завантажувачі виправлена ​​і для подальшої роботи потрібно перезавантажити PC. Фінал – Invalid system disk or disk I / O error – і мертвий вінчестер.

Завантаження з CD або дискети доступу до вінчестера не дала. Довелося використовувати Norton Disk Editor (NDE) в режимі фізичних дисків. Виявилося, що завантажувальна запис FAT32 змінена під FAT16 для диска ємністю близько 250 МБайт. Гаразд, в системній області диска зберігатися резервна копія DOS завантажувача. Але NDD теж знав про це – і перетворив також і другу копію. Пошук самих FAT дав ще більш дивні результати: виявилося 4-е підпису FAT: дві 32-хразрядних і дві 16-і, причому останню нелегка занесла в першу 32-х розрядну FAT.

До команди format залишалося півкроку, але ще жила надія, що можливо збереглися 2-я копія FAT і кореневий каталог (root). За допомогою NDE обидві копії FAT синхронізували, але спроба використовувати розширений режим відновлення (Advanced Recovery Mode) для відновлення завантажувача DOS виявилася безрезультатною: він вперто перетворювався b 16-бітний. Довелося переносити його з іншої машини і підбирати параметри вручну. Благо NDE має режим з показом назв параметрів.

DOS запустилася, але перевірка диска показала, що практично відсутня вільне місце: замість очікуваних 1,5 ГБайт залишалося близько 70 МБайт. Scandisk виявив помилки в елементах підкаталогів і нічого виправити не зміг. З тремтінням у колінах запустили варіант NDD для DOS – як не дивно помилки зникли і відновився правильний обсяг вільного місця.

Проте Windows відмовилася запускатися навіть в безпечному режимі і запропонувала себе перевстановити. Оскільки аналіз Registry за допомогою Regedit помилок не показав, довелося підкоритися. І тут коло замкнулося – Setup відмовився розпізнавати інсталяційний розділ як первинний розділ DOS. Замість 0Bh (FAT32, первинний) значенням параметра код розділу з таблиці розділів диска виявився 0Ch (NDE визначає його як FAT32x – розширений чи що?), явно занесений туди при першому відновленні MBR за допомогою fdisk. Але для fdisk, ні для DOS, ні для Windows це проблем не створювало. А ось Доктор явно не виносить ніяких відступів від стандарту і проводить негайну ампутацію.

Happy-end: Після переустановки Windows знадобилося перевстановити окремі додатки, трепетно ​​відносяться до авторського права (MATLAB, PROMT, дрібні утилітки). Решта продовжили роботу без проблем (Corel, Delphi, Builder, Visual C + + і т.п.). Серед даних виявилися два постраждалих файлових імені. Загалом пощастило.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*