Действующие лица:
-- Windows 2000 Pro со всеми последними обновлениями;
-- A7N8X Deluxe, 2G RAM, IDE Maxtor 80G, IDE Hitachi 250G, SATA Hitachi 250G;
-- Ну и я собственно.
Вчера вечером Винда пожаловалась на то, что она, дескать, уже почти достигла максимального размера реестра, и что ей, типа, скоро будет плохо. Максимальный размер был 55 Мб, реальный -- 53 Мб (система стоит с января 2003-го года). Я почесал репу и подумал, что никто не обидится, если я увеличу ограничение с 55 до 80 Мб, что и сделал.
Сегодня утром система не загрузилась, выругавшись следующим образом:
Windows 2000 could not start because the following file is missing or corrupt:
\WINNT\SYSTEM32\CONFIG\SYSTEM
То есть запоролась ветка реестра "HKLM\SYSTEM". Покурив немного интернет обнаружил, что в Windows 2000 существует косвенное ограничение на максимальный размер этой ветки, где-то 10-12 Мб, причем это имеет значение только при загрузке системы. Загрузился в Recovery Console, посмотрел. Оказалось, размер этого самого файла "...\CONFIG\SYSTEM" у меня -- около 20 Мб. Очень сильно подозреваю, что выход за допустимые пределы связан со вчерашним увеличением максимального размера реестра. Выходит, Винда сама у себя выбила табуреточку из-под ног?
В общем надо как-то чинить. Можно, конечно, восстановиться из бэкапа, но проблема в том, что последний бэкап реестра датирован тем же январем 2003-го года, т.е. датой установки Винды :-) Так что копаю в сторону сжатия файла реестра. Эту процедуру я не проводил или вообще никогда, или так давно, что не помню, так что потенциал, уверен, есть. Кроме того, так разбухнуть ветка "HKLM\SYSTEM" из-за данных точно не могла, я никаких других изменений в системе не делал.
Попробовал прогнать Мелкософтовскую утилиту "chkreg" -- она сказала, что реестр у меня в порядке :-) В инете есть много упоминаний об опциях этой команды, но я никак не могу догнать, как же ее вручную запустить-то? Из-под MS-DOS не пускается, из-под Винды -- тоже, видать заточена под Recovery Console, но с Мелкософтовских дискеток она запускается автоматически, и все...
В общем пока что я ставлю Windows 2000 на другую машину, потом перетащу копии "разбухших" файлов реестра на нее и буду искать, чем их ужать. Ну а пока -- может сталкивался кто с такой засадой? Может есть какой-то секретный способ запустить-таки эту "chkreg" с опциями? Или может кто сходу знает утилиту для ужатия веток (hive) реестра, причем не текущего, на котором стоит система, а просто в виде "левого" файла? Ну и, конечно, как говорится, "хозяйке на заметку". Такой подставы от Винды я не ожидал :-)