Интернет-журнал "Домашняя лаборатория", 2008 №2
Шрифт:
Работоспособность не будет потеряна, так как в это время программа уже находится в оперативной памяти компьютера.
Power Quest Lost & Found работает только с загрузочной дискеты и не позволяет сохранять восстанавливаемую информацию на логические диски того же винчестера, где находятся удалённые данные. Сохранять можно либо на второй жёсткий диск, либо на дискеты. Это вполне оправданный подход, являющийся наиболее безопасным, поскольку любая служебная или случайная запись на диск, содержащий потерянную информацию, может привести к её полному уничтожению.
Восстановление
Вниманию всех пострадавших от вируса Win95.CIH! Если у вас не загружается компьютер — не спешите форматировать винты! Вся информация прекрасно восстанавливается! При известном навыке вся процедура занимает не более пяти минут. Дело в том, что вирус оставляет нетронутой структуру каталогов и даже вторую копию FAT, а это значит, что восстановление информации — лишь дело техники.
В общих чертах процедура восстановления выглядит следующим образом:
1. Поставить испорченный винчестер в нормальную машину слейвом или кем он туда тулится и сделать автодетект его в сетапе.
2. Загрузить DISKEDIT и посмотреть каким ФИЗИЧЕСКИМ диском он стал.
3. Поискать в DISKEDIT'е вторую копию FAT на этом диске, если она осталась — записать стартовый сектор.
4. Поискать на этом диске точку входа корневой директории (ROOT). Так как она идёт сразу за 2-й копией FAT, определить размер FAT в секторах.
5. Перейти на работающий загрузочный диск, скопировать оттуда на испорченный диск таблицу разделов (MBR) и загрузочную запись (BOOT). Это будет примерно 100 первых секторов от начала диска. Короче — все сектора до первой копии FAT.
6. Скопировать с испорченного диска 2-ю копию FAT на место первой. Длину мы уже узнали в п.4.
7. После этих первых шагов винт начинает определяться как логический после перезагрузки, но файлы пока не доступны, в директориях — каша. Для того чтобы сделать диск опять полноценным, нужно посмотреть в том же DISKEDIT'е информацию о диске (количество дорожек, сторон, секторов) и прописать эту информацию в Partition table. Желательно в обе копии. Затем залезть в загрузочную запись и прописать эти данные и туда (для FAT32 туда ещё нужно прописать длину FAT в секторах и номер стартового сектора для корневой директории). Для этого придётся немножко посчитать. Следует помнить, что BOOT тоже в двух копиях, по этому изменения желательно вносить в обе.
8. Если всё было проделано правильно, то после перезагрузки винт выглядит как новенький. Нужно только полечить его антивирусом, чтобы через месяц не повторять эту процедуру по-новому.
Информация по восстановлению в вышеприведённом совете в целом верна, но вызвала у меня некоторые возражения. Автор совета, вероятно, имел дело с диском FAT32. Мне попадалось немало дисков FAT16, на которых после Win95.CIH не оставалось даже ROOT'а. Вероятно, вирус уничтожает фиксированное число секторов, начиная с таблицы разделов (MBR или Partition Table). Диски с FAT32 спасает значительно большая длина FAT. Если же вторая копия FAT не осталась — ничего приличного уже не восстановишь, при настойчивости — пару особо нужных текстовых файлов.
Комментарии к пунктам совета: 4. Средствами поиска diskedit "найти объект\подкаталог" корневую директорию не отыскать. Вот любую другую — запросто. Поэтому искать лучше подстроку "autoexec" или ИМЯ любого другого файла, наверняка имеющегося в корневой директории. Кстати, для FAT32 корневой каталог НЕ обязательно лежит сразу за FAT. И если так получилось, то искать конец FAT — задача весьма творческая.
5. Такое копирование корректно не всегда. Диски желательно брать похожие, а ещё лучше заранее сделать на загрузочную дискетку с diskedit копии MBR и BOOT.
Тогда и второй компьютер не нужен. Очевидно, что загрузочные записи FAT32 и FAT16 взаимно НЕ заменяемы (хотя бы потому, что у FAT32 она в 3 раза длиннее).
Менее очевидно, что MBR на разных НЖМД могут быть несовместимы. Например, перенесённый на НЖМД размером 8 Гб MBR, взятый на маленьком (около 1,5 Гб) диске, обрезал максимальный размер до 2 Гб, не стесняясь подправить и соответствующую запись в BIOS.
6. Если считать сектор, с которого начинается BOOT, за точку отсчёта, т. е. имеющим номер 0, то: для FAT16 первая и единственная копия BOOT имеет длину 1 сектор, FAT начинается с сектора 1; для FAT32 обе копии BOOT имеют длину 3 сектора каждая. Первая копия BOOT (рабочая) занимает сектора 0,1,2, вторая копия BOOT (резервная) — сектора 6,7,8. FAT начинается с сектора 32.
На первом разделе из лежащих на диске в физических секторах имеем следующие значения: FAT16, BOOT — Cyl 0, Side 1, Sector 1; FAT16, начало FAT — Cyl 0, Side 1, Sector 2; FAT32, BOOT — Cyl 0, Side 1, Sectors 1–3; FAT32, резервная копия BOOT — Cyl 0, Side 1, Sectors 7–9; FAT32, начало FAT — Cyl 0, Side 1, Sector 33.
7. По моим наблюдениям, единственно существенными данными являются: для MBR (или Partition Table):
— тип раздела (BIGDOS, FAT32, FAT32x, EXTEND, EXTNDx);
— активность (Yes, No); — адрес начала (Relative Sectors), который считается от того Partition Table, в котором написан!!! Прочие параметры используются только служебными программами (такими, как fdisk и diskedit).
— для BOOT: — размер кластера в секторах; — размер раздела в секторах.
Прочие параметры вычисляются при загрузке и хранятся в BOOT больше для информации.
В старых версиях diskedit размер раздела в секторах, указанный в BOOT, для просмотра и редактирования впрямую недоступен. Приходится находить и править его прямо на диске, где он лежит в шестнадцатеричном виде, что не очень удобно.
Для FAT32 действительно надо указать положение ROOT, но не в секторах, а в КЛАСТЕРАХ. Это значение ПОЧТИ всегда равно 2, в противном случае вычислить его очень непросто.
BOOT в двух копиях есть только у FAT32, у FAT16 копия BOOT одна. Никогда не видел второй копии MBR или Partition Table.
8. Если на НЖМД было несколько логических дисков, то придётся восстановить структуру из нескольких Partition Table.
Комментарии к комментариям: 5. Утверждение о возможной несовместимости MBR на разных НЖМД — неверно.
Ограничение в 2 Гб — от другого типа раздела в таблице разделов. A BIOS так и просто упомянут по ошибке — ни причём он.
6. Для файловой системы FAT32 количество зарезервированных секторов записано в бут-секторе. Начало FAT с сектора 32 — это лишь значение по умолчанию.