Начну с восстановления системы. О массовой установке новой ОС в сети нечего и думать, пока не будут освоены методики восстановления системы после сбоя. Причины очевидны. Во-первых, полностью отказоустойчивых и абсолютно надежных систем не существует (по крайне мере пока). Во-вторых, широкомасштабное развертывание любой ОС непременно приводит к равной по масштабам зависимости от ее готовности к работе -- особенно это касается серверов.

Если организация базируется на Windows 2000, необходимо знать, как восстанавливать систему в случае сбоя. Хотя Windows 2000 достаточно надежна, от сбоя никто не застрахован, так что лучше быть заранее готовым к любым неожиданностям. Для этого в состав Windows 2000 включены специальные сервисные программы.

Новые средства восстановления

По производительности, надежности и масштабируемости Windows NT с самого начала значительно превосходила любой продукт из семейства Windows 9x или Windows 3x. Единственное, в чем Windows NT всегда уступала Windows 9x, так это в простоте восстановления системы. Каждый, кто когда-либо занимался администрированием Win9x-системы, наверняка потом с тоской вспоминал о тех днях, когда для восстановления затертых или разрушенных системных файлов было достаточно загрузки MS-DOS (или режима MS-DOS). Этого конечно можно добиться и в Windows NT 4.0, размещая загрузочный раздел на диске, отформатированном под файловую систему FAT, используя служебные программы независимых производителей, позволяющие обращаться к файловой системе NTFS не из NT (например ERD Commander и NTFSDOS компании Winternals Software), или устанавливая параллельно две ОС. Более подробно параллельная установка описана во вкладке «Параллельное мышление» в 1-й части статьи «Восстановление системы NT после сбоев при загрузке», опубликованной в ноябрьском номере Windows 2000 Magazine/RE за 1999 г. Плохо то, что эти методы либо технически неудобны, либо требуют дополнительных материальных или временных затрат при установке, что конечно недопустимо. Особенно если речь идет о работе с десятками, сотнями или тысячами систем.

Выпустив Windows 2000, разработчики Microsoft окончательно уравняли возможности систем с точки зрения восстанавливаемости, снабдив новую систему средствами, аналогичными Windows 9x. Помимо повышения надежности системы как таковой было реализовано несколько дополнительных возможностей восстановления, которые позволяют без труда устранить неисправность в незагружающихся системах. Более подробно повышение надежности Windows 2000 рассматривается в статье Марка Русиновича «Повышение надежности Windows 2000. Взгляд изнутри», части с 1-й по 3-ю, “Windows 2000 Magazine/RE”декабрь 1999, февраль, март 2000). Так, Windows 2000, как и Windows 9x, позволяет загружать систему в режимах защиты от сбоев. И точно так же, как Windows 9x, Windows 2000 предлагает меню с дополнительными режимами загрузки, что позволяет отключать определенные установки ОС. Доступ к нему можно получить, нажав клавишу F8 в меню загрузчика при запуске операционной системы. После нажатия этой клавиши появляется меню, показанное на Рисунке 1, содержащее следующие дополнительные варианты загрузки:

в режиме Safe Mode (Безопасный режим) производится загрузка минимально необходимого для запуска Windows 2000 набора драйверов и служб;

в режиме Safe Mode with Networking (Безопасный режим с сетевыми подключениями) загружаются те же драйверы и службы, что и в Safe Mode, но к ним добавляются драйверы и службы, необходимые для организации сетевых подключений;

в режиме Safe Mode with Command Prompt (Безопасный режим с запуском командной строки) загружаются те же драйверы и службы, что и в Safe Mode, но система выводит на экран командную строку, а не запускает Windows Explorer;

в режиме Enable Boot Logging (Вести журнал загрузки) создается расширенный журнал учета успешных и неудачных попыток инициализации системных компонентов в процессе загрузки системы. (Этот журнал заводится по умолчанию при загрузке во всех режимах защиты от сбоев, кроме загрузки последней удачной конфигурации- Last Known Good Configuration). Журнал учета называется NTbtlog.txt и размещается в каталоге \%windir% (например C:\winnt);

в режиме Enable VGA Mode (Включить режим VGA) при запуске Windows 2000 устанавливается драйвер VGA-монитора vga.sys, вместо загружаемого обычно видеодрайвера;

в режиме Last Known Good Configuration (Последняя удачная конфигурация системы) Windows 2000 запускается в соответствии с управляющими параметрами, указанными в одноименном разделе реестра SYSTEM. (Last Known Good Configuration содержит параметры самого последнего сеанса работы, при котором запуск системы произошел без сбоев: не было отказов при загрузке драйверов и служб, и регистрация в системе завершилась успешно);

в режиме Directory Services Restore Mode (Режим восстановления службы каталогов) восстанавливается база данных Active Directory. Этот режим используется только для контроллеров доменов Windows 2000;

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

Любой из этих режимов может понадобиться, в зависимости от того, что произошло с системой. Хотя новые режимы загрузки без сбоев Windows 2000 расширяют возможности системы в плане поиска и устранения неполадок, одно универсальное инструментальное средство в Windows 2000 к сожалению не предусмотрено.

Консоль восстановления как спасательный круг

В Windows 2000 реализован новый режим загрузки – запуск консоли восстановления (Recovery Console -- RC)). Консоль восстановления -- это просто находка для любого администратора Windows NT, если требуется из командной строки восстановить систему на компьютере, диски которого отформатированы под NTFS. После установки RC можно загрузить специальный облегченный сеанс командной строки Windows 2000, в котором доступны все разделы жестких дисков, отформатированных под FAT16, FAT32 и NTFS. Кроме того, в этом сеансе можно воспользоваться базовым набором команд и служебных программ для выполнения операций по восстановлению системы. (Пользователям NTFSDOS и ERD Commander или с Windows NTRecover и Remote Recover производства компании Winternals Software такие возможности уже знакомы, они реализованы в этих продуктах для Windows NT 4.0).

Прежде чем пользоваться RC в системе Windows 2000, нужно ее установить. После повторного запуска программы установки Windows 2000 (т.е. winnt32.exe) с ключом /cmdcons (иными словами D:\i386\winnt32 /cmdcons), она сообщит, что дальнейшие действия приведут к установке RC и, как показано на Рисунке 2, выдаст запрос, нужно ли продолжать. После нажатия кнопки ОК система скопирует нужные файлы (их объем обычно меньше 6 Мбайт) в скрытый каталог с именем \cmdcons, размещенный за пределами корневого системного каталога загрузочного диска (обычно C:\cmdcons). При следующем запуске меню загрузчика будет содержать новый режим -- Microsoft Windows 2000 Recovery Console.

После выбора этого режима, Windows 2000 дает некоторое время на то, чтобы, нажав клавишу F6, пользователь загрузил SCSI или RAID-драйвер независимого производителя. Это необходимо в том случае, если RC не может правильно распознать конфигурацию дискового контроллера. Далее система переходит в текстовый режим и предлагает выбрать ту из установленных ОС, с которой будет продолжена работа (Рисунок 3). Таким образом RC используется в системах с многовариантной загрузкой. После выбора ОС потребуется ввести пароль администратора. Это пароль учетной записи администратора локальной машины в выбранном для загрузки варианте ОС, а не пароль администратора домена.

Консоль восстановления может быть установлена непосредственно на жесткий диск каждой системы, требующей особого внимания, или запущена из меню Repair программы установки Windows 2000. Таким образом, можно запустить RC с компакт-диска или 3,5" дискет. Это стоит сделать в том случае, если в системе повреждены файлы установленной RC или ее нет совсем.

Мастерство восстановления

Консоль восстановления весьма удобна в тех случаях, когда нужно получить доступ к файловой системе для диагностики и устранения проблем, а Windows 2000 отказывается загружаться. Прямой доступ к файловой системе, набор низкоуровневых команд и служебных программ позволяют без труда решать проблемы восстановления. RC упрощает большинство процедур восстановления Windows NT, описанных в статье "Восстановление системы NT после сбоев при загрузке" Часть 1 и 2, Windows 2000 Magazine/RE, ноябрь, декабрь 1999 г.

Несмотря на то, что большинство пользователей отказываются предвкушать удовольствие от работы с RC, важно заранее разобраться, как следует применять инструментальное средство. Нужно обдумать возможные причины сбоев системы при загрузке до их возникновения и определить, какие действия необходимо предпринять для устранения дефектов. Ниже приводится перечень наиболее часто встречающихся сбоев при загрузке Windows 2000 и Windows NT, вызванных ошибками в программном обеспечении.

- Повреждение или удаление наиболее важных системных файлов (например файлов системного реестра, ntoskrnl.exe, ntdetect.com, hal.dll, boot.ini)

- Установка несовместимых или неисправных служб или драйверов, равно как и повреждение или удаление жизненно важных для системы служб или драйверов.

- Повреждение или разрушение диска или файловой системы, в том числе повреждение структуры каталогов, главной загрузочной записи (MBR) и загрузочного сектора Windows 2000 или Windows NT.

- Неверные данные в системном реестре (например, реестр физически не поврежден, однако содержит логически неверные данные, например выходящие за пределы допустимых значений для служб или драйверов).

- Неверно установленные или слишком ограниченные права доступа к папке \%systemroot% (например, C:\winnt).

Хотя этот список, составленный на основе личного опыта, отнюдь не полон, в нем перечислены наиболее распространенные причины сбоев при загрузке Windows 2000 или Windows NT 4.0. Используя RC или Загрузку в режиме защиты от сбоев, большинство этих проблем можно решить. В Таблице 1 приведен перечень неполадок, которые обычно проявляются при запуске Windows 2000, и методов их устранения.

Чтобы понять, насколько важен такой инструмент, как RC, представьте себе, что повреждены один или несколько разделов системного реестра в системе, использующей NTFS. В предыдущих статьях, посвященных решению проблем, связанных с загрузкой системы, приводилось несколько различных методов исправления ошибок в Windows NT. Можно, например, скопировать заведомо хороший набор файлов реестра с помощью служебных программ производства независимых компаний (например, ERD Commander for Windows NT 4.0), допускающих запись на диски в формате NTFS, или воспользоваться параллельно установленными Windows 2000 или NT. (Процедура Repair программы установки Windows 2000 -- всего лишь один из пунктов меню, поэтому не может похвастаться гибкостью, свойственной другим подходам). В Windows 2000 достаточно загрузиться в режиме консоли восстановления и скопировать или заменить файлы реестра (или любые другие жизненно важные системные файлы), которые были повреждены или перезаписаны. В завершение воображаемого эксперимента попробуйте также мысленно зарегистрироваться в соответствующем варианте установки Windows 2000 и с помощью команды Copy консоли восстановления скопировать нужные файлы.

RC можно использовать и для решения проблем, вызванных повреждениями дисков или файловой системы. В консоль восстановления включено несколько команд, позволяющих реанимировать поврежденные диски без загрузки Windows 2000. Одна из них -- Chkdsk, которая работает так же, как и ее тезка в Win9x и DOS. Две другие полезные команды -- Fixmbr и Fixboot. Первая заменяет Master Boot Record (MBR) основного раздела системного диска исправной копией так же, как программа Fdisk с параметром /mbr в Win9x. Это позволяет устранить неисправность MBR в случае повреждения или заражения вирусом. Не менее полезна и команда Fixboot, с помощью которой можно восстановить загрузочный сектор, поврежденный или перезаписанный при установке другой ОС (в этом случае теряется возможность загрузки операционной системы Windows 2000). В состав RC включена еще одна команда -- Diskpart. Точно такая же служебная программа для работы с диском вошла в состав Программы установки Windows 2000. Diskpart можно использовать для добавления и удаления разделов диска.

В консоль восстановления включено еще несколько полезных утилит. С помощью команд Listsvc, Disable и Enable можно просматривать перечень существующих служб, блокировать и разрешать запуск (соответственно) этих служб и драйверов. Значение этих команд трудно переоценить, если причиной сбоя при загрузке были дефекты служб или драйверов. В консоли восстановления достаточно просто отключить загрузку неисправной службы или драйвера и перезагрузить систему. При этом редактировать или восстанавливать системный реестр не нужно.

Консоль восстановления также может помочь вернуть к жизни Windows NT в случае использования системы с двухвариантной загрузкой Windows 2000 и Windows NT, поскольку ей доступны папки с обеими установками. В нескольких статьях специалисты Microsoft предостерегают пользователей от такого применения RC, не объясняя, правда, почему. По своему опыту могу сказать, что при использовании команд RC в системе Windows NT 4.0 обычно проблем не возникает. Большинство команд RC ориентировано на файловые системы и, следовательно, отлично работает с томами NTFS5, которые совместно используют Windows 2000 и Windows NT. (Для поддержки NTFS5 в Windows NT необходимо установить Service Pack 4 -- SP4). Однако, используя RC для восстановления Windows NT, нужно помнить, что с точки зрения разработчиков это делается на свой страх и риск. Более подробно отдельные команды RC и их синтаксис описаны в статье Джона Рулея «Основные команды консоли восстановления».

Пригодятся ли старые инструментальные средства?

Оценивая возможности и свойства RC, подчас ловишь себя на мысли, а не пора ли отбросить старые методики и инструментальные средства восстановления Windows NT 4.0 за ненадобностью? И нужны ли теперь такие мощные средства, как служебные программы независимых производителей и параллельные установки операционных систем? Прежде чем перетряхивать содержимое диска и заменять методики подготовки к аварийным ситуациям, нужно вспомнить о том, что RC тоже присущи некоторые ограничения.

Начать следует с того, что она позволяет решить далеко не все проблемы, возникающие при загрузке операционной системы. В некоторых случаях для восстановления системы одной консоли восстановления может оказаться недостаточно (например, если сбой при загрузке вызван излишне ограниченными правами доступа к системному каталогу Windows 2000). В составе RC нет средств, позволяющих редактировать права доступа к файлам или папкам на диске. Их придется переопределять вручную, воспользовавшись параллельной установкой Windows 2000 или программой производства независимой компании. Возможность переопределения прав доступа предусмотрена, по крайней мере, в одной из служебных программ фирмы ERD Commander.

Кроме того, поскольку RC обеспечивает работу только с ограниченным набором функций командной строки, не удастся запустить работающую в графическом режиме служебную программу резервного копирования, с помощью которой можно получать доступ к данным и восстанавливать их. Если загрузить основную версию системы не удалось, а нужные данные находятся на резервной копии (например, на магнитной ленте), понадобится параллельно устанавливать другую версию ОС, с помощью которой их можно восстановить.

И, наконец, при некоторых обстоятельствах RC может оказаться недоступной. Например, в том случае, если повреждения, сделавшие невозможной загрузку ОС, повлияли и на установленную в системе консоль восстановления. В этом случае придется воспользоваться одним из описанных выше альтернативных методов доступа к системе и ее восстановления.

Не стоит пренебрегать регулярным обновлением дисков ERD для каждой из систем Windows 2000. Аварийный диск -- это очень ценное инструментальное средство восстановления, даже для Windows 2000. Как и в NT, в Windows 2000 он может помочь получить доступ к системному каталогу и скопировать исправную версию системного реестра. Если нет желания обновлять диски ERD на всех системах вручную с помощью служебной программы резервного копирования (новое инструментальное средство Windows 2000 для создания и изменения дисков ERD), можно воспользоваться утилитой ERDisk 5.0 компании Aelita Software Group. Она позволяет удаленно создавать копии дисков ERD по сети для большого количества систем и также удаленно пользоваться этими копиями при восстановлении.

Одно из досадных ограничений RC заключается в том, что ее нельзя установить на программно реализованном зеркале массива RAID1 (т.е. на томе, созданном программой Disk Administrator Windows NT или Windows 2000, а не с помощью аппаратного RAID-контроллера). Требования программы установки RC, с точки зрения конфигурации разделов, аналогичны требованиям Windows 2000. Так же, как и при обычной установке Windows 2000, обойти это ограничение можно, блокируя зеркало на время установки RC и затем восстанавливая его.

Есть еще один недостаток: Windows 2000 не позволит организовать зеркальные наборы на основных дисках. Поэтому, если существует зеркальный том на основном диске и нужно установить RC, придется преобразовать этот диск в динамический. И еще одна ошибка: RC отказывается запускаться, если файловая система диска, на котором находилась программа, была преобразована из FAT16 или FAT32 в NTFS. Единственный выход -- установить RC заново.

Готовьтесь к худшему

Появление режима безопасной загрузки, консоли восстановления и других возможностей восстановления работоспособности системы -- важный шаг в процессе эволюции семейства NT. В частности, RC представляет собой мощное, но тем не менее простое, встроенное инструментальное средство, которое позволяет исправить большинство неполадок, приводящих к отказу при загрузке системы. Более подробно об этих инструментальных средствах восстановления рассказано во врезке 1.

Нужно всегда помнить о том, что подготовиться к устранению сбоев можно. Достаточно установить RC на каждой жизненно важной системе Windows 2000 и почаще обновлять диски аварийного восстановления. При этом вероятность быстрого восстановления в случае сбоя системы значительно повышается.

Статьи MICROSOFT, посвященные вопросам восстановления Windows 2000

"Description of the Windows 2000 Recovery Console"

http://support.microsoft.com/support/kb/articles/q229/7/16.asp

"How to Install the Windows 2000 Recovery Console"

http://support.microsoft.com/support/kb/articles/q216/4/17.asp

"Description of Safe Boot Mode in Windows 2000"

http://support.microsoft.com/support/kb/articles/q202/4/85.asp

"Differences Between Manual and Fast Repair in Windows 2000"

http://support.microsoft.com/support/kb/articles/q238/3/59.asp

Служебные программы восстановления

ERD Commander, ERD Commander Professional Edition, Remote Recover, and NTRecover

Winternals Software

http://www.winternals.com

ERDISK 5.0

Aelita Software Group

http://www.aelita.com Шон Дейли - один из редакторов журнала Windows NT Magazine и президент компании iNTellinet Solutions, занимающейся консалтингом и сетевой интеграцией. Имеет сертификат MCSE. Последней из его книг была «Optimizing Windows NT», выпущенная издательством IDG Books. С ним можно связаться по адресу: sean@ntsol.com.