Добавить в цитаты Настройки чтения

Страница 9 из 91



Рис. 2.12. Внешний вид редактора hexedit

Рис. 2.13. Внешний вид редактора khexedit

Автоматизированные дисковые утилиты

Более убогой утилиты, чем chkdsk (рис. 2.14) — стандартный дисковый "доктор", входящий в штатный комплект поставки Windows, — по-видимому, не придумать даже сценаристам из Голливуда. Система диагностики ошибок упрощена до минимума — доктор лишь информирует о факте их наличия, но отказывается говорить, что именно, по его мнению, повреждено и что он собирается лечить, поэтому последствия такого "врачевания" могут носить фатальный характер.

Рис. 2.14. Утилита chkdsk за работой

Известно много случаев, когда chkdsk залечивал до смерти полностью исправные разделы. Например, в листинге 2.1 приведен протокол лечения практически здорового диска с одной-единственной поверженной файловой записью (FILE RECORD). После этого "лечения" я не досчитался многих файлов. С другой стороны, успешно проведенных операций восстановления на его счету намного больше. Обычно он используется неквалифицированными пользователями (и администраторами) для периодической проверки разделов и исправления мелких искажений файловой системы.

В мире UNIX проверка целостности файловой системы обычно осуществляется программой fsck (аналог chkdsk под Windows NT), представляющей собой консольную утилиту, практически лишенную пользовательского интерфейса и входящую в штатный комплект поставки любого дистрибутива. Как и любое другое полностью автоматизированное средство, она не только лечит, но, случается, что и калечит, так что пользоваться ею следует с большой осторожностью.

Листинг. 2.1. Протокол лечения практически здорового диска с одной-единственной поверженной FILE RECORD

One of your disks needs to be checked for consistency. You

may cancel the disk check, but it is strongly recommended that you continue.

Windows will now check the disk.

The VCN 0x9 of index $130 in file 0x1a is inconsistence with

the VCN 0x0 stored inside the index buffer.

Correcting error in index $I30 for file 26.

The index bitmap $I30 in file 0x1a is incorrect.

Correcting error in index $I30 for file 26.

The down pointer of current index entry with length 0x70 is invalid.

0b 01 00 00 00 00 01 00 70 00 58 00 01 00 00 00  ........p.X.....

1a 00 00 00 00 00 01 00 00 c0 4c bb 5a 94 bf 01  ..........L.Z...

00 c0 4c bb 5a 94 bf 01 c0 3a 15 55 97 ea c4 01  ..L.Z....:.U....

f0 54 e1 71 7a ea c4 01 00 10 01 00 00 00 00 00  .T.qz...........

22 02 01 00 00 00 00 00 20 00 00 00 00 00 00 00  "........ ......

0b 03 63 00 5f 00 32 00 30 00 38 00 36 00 36 00  ..с._.2.0.8.6.6.

2e 00 6e 00 6c 00 73 00 ff ff ff ff ff ff ff ff  ..n.l.s.........

1f 01 00 00 00 00 01 00 70 00 54 00 01 00 00 00  ........p.T.....

Sorting index $I30 in file 26.

Cleaning up minor inconsistencies on the drive.

CHKDSK is recovering lost files.

Recovering orphaned file c_037.nls (253) into directory file 26.

Recovering orphaned file c_10000.nls (254) into directory file 26.

Recovering orphaned file c_10079.nls (255) into directory file 26.

Recovering orphaned file c_1026.nls (256) into directory file 26.



Recovering orphaned file c_1250.nls (257) into directory file 26.

Recovering orphaned file c_1251.nls (258) into directory file 26.

Recovering orphaned file c_1252.nls (259) into directory file 26.

Recovering orphaned file c_1253.nls (260) into directory file 26.

Recovering orphaned file c_1254.nls (261) into directory file 26.

Recovering orphaned file c_1255.nls (262) into directory file 26.

Recovering orphaned file c_1256.nls (263) into directory file 26.

Recovering orphaned file c_1257.nls (264) into directory file 26.

Recovering orphaned file c_1258.nls (265) into directory file 26.

Recovering orphaned file c_20261.nls (266) into directory file 26.

Recovering orphaned file cryptext.dll (412) into directory file 26.

Recovering orphaned file ctl3dv2.dll (422) into directory file 26.

Recovering orphaned file ctype.nls (423) into directory file 26.

Recovering orphaned file CSRSRV.DLL (880) into directory file 26.

Recovering orphaned file cryptdll.dll (2206) into directory file 26.

Recovering orphaned file ctl3d32.dll (2441) into directory file 26.

Recovering orphaned file c_10007.nls (2882) into directory file 26.

Recovering orphaned file c_10017.nls (2883) into directory file 26.

Recovering orphaned file c_20127.nls (2916) into directory file 26.

Recovering orphaned file csseqchk.dll (4019) into directory file 26.

Recovering orphaned file cscript.exe (4335) into directory file 26.

Recovering orphaned file cscdll.dll (4661) into directory file 26.

Recovering orphaned file CRYPTDLG.DLL (5125) into directory file 26.

Recovering orphaned file cryptsvc.dll (5127) into directory file 26.

Recovering orphaned file cscui.dll (5136) into directory file 26.

Recovering orphaned file CSRSS.EXE (5144) into directory file 26.

Recovering orphaned file CVID32.QTC (17408) into directory file 26.

Recovering orphaned file c_10001.nls (19801) into directory file 26.

Recovering orphaned file c_20290.nls (19805) into directory file 26.

Recovering orphaned file c_20000.nls (19811) into directory file 26.