Как я поднимал Windows 2000
Ревенков Павел
🕛 18.05.2009, 17:03
Эта статья родилась спонтанно. Казалось бы, зачем нужна она? Ведь полно уже написано про восстановление системы. Я лишь хотел поделиться собственным опытом с читателями. Итак, однажды утром, проснувшись, я хотел доделать давно ожидаемую всеми версию своей игры - Alpha 1. Но, не тут-то было. Сразу после прохождения загрузки системы на красивом экране с надписью Windows 2000, появился так всеми любимый синий экран Windows, указывающий на то, что файл ntdll.dll поврежден. Мне предлагалось или заменить его, или перезагрузить машину, если ошибка появилась в первый раз (наивная Windows). Естественно перезагрузка не помогла, её я сделал лишь из сострадания к Windows. Загрузка последней удачной конфигурации и загрузка в безопасном режиме давали тот же результат. Итак, теперь встал вопрос, что делать. Первым делом я загрузился с диска на котором есть Volkov Commander и попробовал этот самый ntdll.dll заменить на резервную копию. Резервных копий было две: в папке C:\WinNT\ServicePackFiles\i386 и на диске с Windows 2000 (для незнающих файл называется ntdll.dl_, который надо разархивировать). Скопировав сначала первый файл в папку C:\WinNT\System32 результат не было. Проделав аналогичную операцию со вторым файлом результата также не было. Из этого я сделал вывод, что полетел системный реестр (т.к. все файлы необходимые для загрузки были на месте). Надо сказать, что в отличие от Windows 9x/ME реестр в Windows 2000 - штука сложная. Его нельзя просто скопировать во время работы системы. Итак, надо было восстановить реестр из системной копии. Резервных копий у меня оказалось две: одна в папке C:\WinNT\Repair, другая - C:\WinNT\System32\Config. Первая резервная копия по дате была создана Windows 2000 сразу же после установки системы. Но так как у меня было до этого установлено много программ и заплаток с WindowsUpdate, то этот вариант отпал сам собой. Оставалась вторая. Вообще-то там вроде как не должно быть резервной копии, но зайдя в эту папку я увидел, что там лежат резервные копии файлов реестра, причем со вчерашней датой! Не думая долго, я скопировал файлы Default.bak -> Default, Sam.bak -> Sam, Security.bak -> Security, Software.bak -> Software, System.bak -> System. Для этого я пользовался всё тем же Volkov Commander, однако можно скопировать все эти файлы и командой copy C:\WinNT\System32\Config\Software.bak C:\WinNT\System32\Config\Software и т.д. для каждого файла. После чего система стала загружаться, как ни в чем не бывало.После этого случая я регулярно делаю резервную копию с помощью программы EruNT. Эта программа очень удобна в использовании. С помощью неё можно создавать резервные копии системного реестра во время работы системы. У меня она, например, висит в планировщике заданий, который раз в неделю делает резервную копию. Кроме того, если ваш реестр навернулся, то программа прямо из DOS сможет его восстановить (достаточно запустить в папке резервной копии EXE файл).