Восстановление Windows NT

0

А вы задумывались над тем, что будете делать, если однажды ваш сервер зависнет после перезагрузки системы? И, что не менее важно, сколько времени вам потребуется на решение возникшей проблемы? Большинство администраторов Windows NT при одной мысли о возможности увидеть голубой экран с кучей цифр и надписью STOP(известный как blue screen of death) бросает в холодный пот. Впрочем, и любая другая неполадка в работе сервера компании не может вызвать улыбку. 

Понятно,что остановка сервера означает, по меньшей мере, снижение производительностиработы сотрудников, потерю времени и денег, а также предвещает не самуюприятную беседу с руководством. Поэтому в первой части статьи мы расскажем одополнительных средствах и процедурах, которые вы можете использовать дляувеличения надежности ваших серверов, и которые, надеемся, помогут вамвосстановить систему после сбоя при начальной загрузке Windows NT. Кроме того,мы покопаемся в малоизвестных методах решения проблем такого рода, и вы сможетеиспользовать их для восстановления «упавшей» системы в будущем. Замечу, что вданной статье мы не будем касаться кластерных конфигураций. Предполагается, чтосистема состоит из отдельного сервера, не имеющего проблем на аппаратномуровне.

Типичные неприятности

Причин,по которым система Windows NT может остановиться при загрузке, много, но результатом их действия почти всегда является ужасающий «голубой экран смерти»(см. экран 1). После того как Windows NT останавливает систему, она выводит этот экран, чтобы предотвратить дальнейшее нарушение целостности данных.

ЭКРАН 1: Содержимое «голубого экрана смерти» — blue screen of death в Windows NT

Кроме того, на голубой экран выводится важная информация о состоянии системы в момент сбоя: перечисляются код ошибки STOP, адрес памяти, по которому произошла ошибка, и набор драйверов, загруженных в память в то время, когда она произошла. Однако выявить истинную причину ошибки не всегда просто. Проблема обычно развивается по одному из следующих сценариев.

Вы установили программное обеспечение, которое разрушило часть системного реестра HKEY_LOCAL_MACHINE — это может происходить при попытках прикладной программы установить новую службу или драйвер. Результатом будет появление голубого экрана, на котором пользователь читает о невозможности загрузить реестр или один из его файлов.

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

Вы установили новую службу или системный драйвер, который несовместим с аппаратным обеспечением и вызывает ошибку при перезагрузке (то есть загрузка некорректного файла приводит к разрушению исправного системного файла, который вы загрузили в память до момента сбоя).

Каждый из этих сценариев имеет различные причины и решения, поэтому дальше рассмотрим их по отдельности более подробно.

Нарушения в реестре

Системный реестр — сердце системы NT. Поэтому в зависимости, от вида и степени нарушения целостности, поврежденный реестр весьма часто вызывает сбой при загрузке операционной системы. Нарушения целостности реестра могут быть физические и логические. Физическое нарушение подразумевает, что какие-то неполадки (обычно сбои в работе дисковой подсистемы) вносят путаницу в файлы реестра (например, в файлы SOFTWARE или SYSTEM в системном каталоге \%winntroot%\system32\config). Логические нарушения означают, что приложение, пользователь или сама операционная система записали в реестр неверные данные, которые в свою очередь могут вызвать сбой при загрузке, если значение данного ключа в реестре достаточно критично.

К сожалению, не всегда можно установить, что ошибку вызвали именно нарушения в реестре. В некоторых случаях сообщение об ошибке STOP означает, что реестр имеет повреждение, препятствующее дальнейшей работе, или ссылается на поврежденный файл реестра. Однако сообщение STOP не всегда может явно информировать о таком виде нарушений в реестре.

Если имеются основания подозревать, что проблемы с загрузкой связаны именно с реестром, можно начать восстановление с использованием варианта загрузки предыдущей конфигурации (Last known good configuration). Это можно сделать несколькими путями.

Вариант Last known good configuration. Вы можете воспользоваться этой опцией при появлении соответствующей подсказки и нажатии клавиши пробела в период загрузки системы. Выбрав эту опцию, вы загрузитесь с предыдущей работоспособной конфигурацией. Это самый быстрый и легкий способ, если, конечно, он срабатывает. К сожалению, шансы на успех в реальной ситуации не так уж велики, поскольку данный способ ограничивается восстановлением только одной части реестра (а именно, ветви ControlSet00X в ключе HKEY_LOCAL_MACHINE\SYSTEM). То есть вы сможете восстановить систему данным способом, только если проблема ограничена данной ветвью реестра и вы сразу использовали вариант Last known good configuration. Однако в большинстве случаев предложенный метод не поможет.

Восстановление через процесс установки и с помощью дискеты восстановления ERD (Emergency Repair Disk). Можно воспользоваться процедурой установки NT для проверки и замены индивидуальных файлов реестра, если первый способ не сработал. После установки дискеты восстановления ERD в дисковод вы должны будете указать, какую часть существующей операционной системы требуется проверить (см. экран 2). Если вы выберете пункт Inspect registry files, появится список файлов реестра, и вы сможете указать, какие из них нужно заменить. Заменяющие файлы берутся либо с диска ERD, либо из каталога \%systemroot%\repair. Файлы на диске ERD и в каталоге \%systemroot%\ repair хранятся в сжатом виде, и каждый из них имеет расширение в виде подчерка «_» (например, SYSTEM._, SOFTWARE._).

Экран выбора опций при процедуре восстановления программы установки

Использованиесамых последних копий заменяющих файлов позволит не потерять важную информациюо конфигурации приложений и системы. Созданию диска ERD с последними копиямифайлов реестра посвящена статья Майка Рейли, опубликованная в январском номережурнала за 1997 год. Добавлю, что не следует восстанавливать ветви SAM иSECURITY на контроллере домена, если только вы не запускали программу созданиядискеты восстановления rdisk с ключом /s или s- (то есть Rdisk /s). В противномслучае программа установки перепишет вашу базу SAM ее версией, создаваемой впроцессе установки, что вызовет череду новых затруднений. Кроме того, следуетубедиться в том, что файлы реестра на дискете ERD и заменяемые файлы созданыоперационной системой, на которую был установлен один и тот же сервисный пакет.Важно помнить, что Service Pack 3 и последующие проводят изменения в ветвях SAMи SECURITY, связанные с усилением системы безопасности NT. Если не соблюдатьэто правило, то вы не сможете войти в систему после завершения процедурывосстановления. Далее заметим, что исправление файлов SAM и SECURITY вряд лиразрешит проблему нарушения целостности реестра, поскольку сбой при загрузкесистемы вызывают по большей части ветви SYSTEM и SOFTWARE. Поэтому начинайте свосстановления предыдущих версий именно этих файлов. Причем в первую очередьветви SYSTEM, поскольку именно в ней содержатся записи о наиболее важныхкомпонентах системы, такие как драйверы и службы.

Альтернативная/параллельнаяустановка NT. Использование альтернативной/параллельной установки длявосстановления реестра — на наш взгляд, оптимальное средство решения проблемы.Загрузка альтернативной системы позволяет вам получить доступ к томам с NTFS,которые в противном случае были бы недоступны. А запуск параллельной системыдает вам доступ к первоначальной версии файлов реестра, так что вы можетескорректировать или заменить их. Вы можете достичь того же результата,используя ERD Commander от Systems Internals по http://www.internals.comили NTFS-DOS от Winternals Software по http://www.winternals.com.После загрузки альтернативной системы вы имеете возможность выполнить те жедействия по восстановлению, что и при использовании программы установки ивыборе опции восстановления, но с большей гибкостью и избирательностью. И хотяспециалисты из Microsoft не рекомендуют применять данный способ, мы считаем,что он лучше всего подходит для опытных пользователей NT. Более подробнаяинформация об использовании параллельно установленной системы находится воврезке «Параллельное мышление».

Преждечем начать операцию восстановления, сделайте копии своих файлов реестра. Яобычно копирую существующие файлы в подкаталог каталога, содержащего файлыреестра (например, \%systemroot%\system32\config\backup). Только после этогоможно начинать эксперименты с заменой отдельных файлов реестра. Однако вы неможете просто скопировать файлы, которыми будете заменять поврежденные, посколькуна дискете ERD и в каталоге \%systemroot%\repair эти файлы хранятся в сжатомвиде. Перед использованием этих файлов примените к ним команду expand.exe,чтобы разархивировать их вручную. Например, чтобы развернуть сжатую копию ветвиSYSTEM с дискеты ERD или из каталога \%systemroot%\repair, наберите в команднойстроке NT:

Expand system._ system

Скопируйтеполучившийся файл в \%systemroot%\system32\config первоначальной системы иперезагрузитесь.

Есливы не хотите иметь дело со сжатыми файлами, можете использовать утилитуregback.exe из Microsoft Windows NT Server 4.0 Resource Kit для созданиядополнительных копий реестра. Она создает копию, которая содержит все файлыреестра в несжатом виде. Кроме того, данная утилита копирует ветви SAM иSECURITY, так что вам не нужно будет помнить о необходимости указыватьдополнительные переключатели. Однако здесь нужно учесть, что несжатые копииреестра могут не уместиться на трехдюймовую дискету. Безопасным местом дляхранения копий реестра, созданных с помощью regback.exe, может служить разделдиска, отличный от загрузочного. Предпочтительно вообще хранить их на другомфизическом диске. Для достижения максимальной защиты от аппаратных сбоев,которые могут сделать полученные копии файлов реестра недоступными, рекомендуюхранить дополнительную копию реестра одного сервера на другом сервере инаоборот.

Переписанныеили разрушенные файлы

Кчислу наиболее существенных недостатков операционной системы Windows 4.0относится использование разделяемых системных файлов, которые могут бытьсвободно переписаны приложениями независимых компаний. Кроме того, сама системаNT не слишком надежно защищает себя от замены ключевых системных файлов, такихкак файлы драйверов и системных служб. В некоторых случаях это приводит толькок появлению сообщений об ошибках и сбоям в работе конкретных приложений. Однакоэто может вызвать сбой и при загрузке самой системы NT. Следующая версия NT —Windows 2000 или Win2K — снижает вероятность такого рода сбоев посредствомразделения библиотек приложений и обеспечения большей защиты от перезаписикритически важных системных файлов.

Длявосстановления поврежденных или некорректных файлов на томах NTFS вы можетеиспользовать либо параллельно установленную систему NT, либо процедурувосстановления программы установки. Для восстановления на томах FAT можновоспользоваться загрузочными дисками от DOS или Windows 9x.

Заменитьфайл, воспользовавшись параллельной установкой системы, очень просто, еслитолько вы точно знаете, какой из файлов разрушен или некорректен. В качествемеры предосторожности создайте каталог на жестком диске, который послужитместом хранения файлов для установки системы NT. Можно использовать для этого иCD-ROM. В этом каталоге должны находиться копии файлов ядра NT для той версиисервисного пакета, который вы установили в системе. Если вы развернулипараллельную систему с тем же сервисным пакетом, что и для первой системы, товы можете использовать каталог второй системы как каталог для установки. Еслиэто не так, то создайте в параллельной системе отдельный каталог с файламипервичной установки системы NT самой последний версии.

Чтобыпроцесс восстановления мог заменить поврежденные или конфликтующие файлы,выберите опцию Verify Windows NT System Files из списка, выводимого программойустановки. Microsoft реализовала эту функцию, чтобы можно было быстро найтифайлы, отличные от первоначальных установочных файлов NT. Однако послеустановки на систему сервисного пакета слишком много файлов будут отличаться отпервоначальных, поскольку они были модифицированы. В данном случае лучше всеговыбрать вариант «А», чтобы позволить программе установки заменить всенеоригинальные файлы и затем, после восстановления системы и ее запуска,повторить установку сервисного пакета.

Иначевы можете заменить системные файлы NT их первоначальными версиями, используяпараметр модернизации Upgrade в программе установки. И хотя некоторыепользователи обходят описанный выше процесс восстановления и сразу приступают кмодернизации, нам этот метод решения кажется неудачным по нескольким причинам.Во-первых, процесс модернизации обычно занимает намного больше времени, чемпроцесс восстановления. Во-вторых, он более запутан и связан с большим рискомдля вашей системы. И наконец, даже если процесс установки успешно разрешил вашипервоначальные проблемы, он может вызвать появление голубого экрана с ошибкой,вызванной драйвером tcpip.sys (STOP error 0x00000050). При установке NT 4.0 илиNT 4.0 SP1 поверх NT4.0 SP2 или более поздней программа установки не заменяетдрайвер tcpip.sys из SP2 или более поздний его ранней версией. Соответственно —этот драйвер вызывает сбой в NT 4.0 или NT 4.0 SP1. Чтобы избежать такойситуации, нужно вначале использовать процедуру Verify Window NT System Filesдля замены существующих файлов их первоначальными версиями. Тогда, еслипроцедура восстановления не привела к нормальной загрузке системы, вы сможетеспокойно запускать процедуру модернизации, поскольку файл tcpip.sys SP2 илипоздней версии уже был заменен первоначальным.

Осторожностьне помешает

Такиесредства как параллельная установка системы и дополнительные копии файловреестра, повышают вероятность быстрого восстановления в случае сбоя в процессезагрузки системы. И вы можете быть уверены, что ваши серверы готовы к худшему.

Избыточностьи устойчивость к сбоям аппаратного обеспечения — незаменимые качества длясерверов с важными приложениями, но они не спасут вас от всех возможныхпроблем. Сбои в программном обеспечении происходят и на таком оборудовании,поэтому расширьте свой набор средств восстановления альтернативной/параллельнойустановкой системы.

Параллельнаяустановка — это вторая система Windows NT, установленная на том же диске, что ипервичная ОС, или на другом диске. Параллельная система — своеобразный «черныйход» в вашу систему, позволяющий вам получить доступ к томам NTFS и даннымфайлов реестра в случае сбоя первой системы. Она также может пригодиться, есливы не надеетесь на стандартную процедуру восстановления.

Ярекомендую устанавливать параллельную систему в каталог, имя которого объясняетего предназначение. Например, для своих клиентов на каждом сервере я создаюкаталог \winntrec (то есть Windows NT recovery) и провожу инсталляциюпараллельной системы в него. Для лучшей защиты располагать этот каталог следуетв другом разделе диска или на другом физическом диске.

Приустановке альтернативной NT системы не следует повторять все опции установкипервичной системы (например, сетевые службы, роль сервера). Устанавливайтеминимальный набор опций для экономии дискового пространства. Лично я сбрасываювсе опции в диалоговом окне NT Accessory и обычно не устанавливаю сетевыеслужбы. Но если вам может потребоваться доступ к другим машинам по сети призагрузке альтернативной системы, то установите сетевую компоненту. Кроме того,не обязательно устанавливать последний Service Pack — установите тот, которыйсчитаете наиболее подходящим, если только у вас нет крайней потребности вполной эквивалентности двух систем.

Такжеимеет смысл установить программное обеспечение резервного копирования,применяемое в вашей сети, на вашу параллельную операционную систему. Такимпутем вы сможете быстро восстановить файлы и данные, принадлежащие первичнойсистеме.

Подводяитог, скажем, что параллельную систему полезно установить до того, как появятсяпроблемы. В противном случае затраты на установку параллельной системы, поменьшей мере, потребуют дополнительного времени в тот момент, когда его и такмало. Что хуже, проблемы, возникшие в первой системе, могут наложиться назатруднения при установке второй. Поэтому мы настоятельно рекомендуемрассматривать установку параллельной системы как неотъемлемую частьпрограммного обеспечения для всех ваших серверов — она поможет вам, еслислучится непредвиденное.

Автор статьи Шон Дейли

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x