Справочник по Windows Server 2003 (MCSE)

         

Безопасный режим загрузки (Safe mode)


Загрузчик Windows Server 2003 (NTLDR) отображает на экране меню, из которого можно выбрать запускаемую операционную систему (см. главу 3 "Загрузка операционной системы"). Если при появлении меню загрузки нажать клавишу <F8>, то на экране появится меню опций отладки и дополнительных режимов загрузки, которое будет оставаться на экране до тех пор, пока не будет выбрана одна из опций.

При загрузке в безопасном режиме (safe mode) Windows использует стандартные параметры настройки (монитор VGA, без запуска сетевых средств, с запуском минимального количества драйверов — фактически запускаются только драйверы, минимально необходимые для запуска Windows). Например, если после инсталляции нового программного обеспечения Windows XP или Windows Server 2003 перестали запускаться, то вполне возможно, что загрузка в безопасном режиме позволит выполнить запуск операционной системы с минимальным количеством сервисов и драйверов. После загрузки вы сможете изменить параметры настройки компьютера, не позволяющие выполнить корректную загрузку Windows, или удалить программное обеспечение, вызвавшее эти проблемы.

Если вы имеете некоторый опыт работы с Windows NT 4.0, то наверняка знаете, что в этой системе проблемы с загрузкой чаще всего вызывались некорректно работающими драйверами устройств. Такие несовместимые драйверы могли привести к краху системы либо сразу же после инсталляции, либо даже после некоторого времени, в течение которого их работа на первый взгляд казалась корректной. Причем вторая ситуация, когда драйвер в течение некоторого времени все же работал, не вызывая никаких проблем, всегда была более труднообъяснимой (а в самом деле, что же могло вызвать ошибку?). При этом, хотя на первый взгляд и кажется, что нет причин, которые могли бы хоть как-то объяснить это непредсказуемое поведение, причины этому все же есть. Заключаются они в том, что как программная, так и аппаратная конфигурация компьютера со временем могут меняться, а эти изменения могут спровоцировать ошибки, допущенные при проектировании драйвера и оставшиеся незамеченными. Windows 2000/XP и Windows Server 2003, как и Windows NT 4.0, тоже могут быть выведены из строя установкой несовместимого драйвера. Однако загрузка в безопасном режиме (safe mode), концепция которого была позаимствована из Windows 9x, предоставляет более удобные средства быстрого восстановления системы после подобных ошибок, нежели Windows NT 4.0.


Если несовместимый драйвер вызывает проблему при первой же перезагрузке, то вам очень повезло, потому что, как правило, в этом случае вам действительно поможет опция Last Known Good Configuration. Когда пользователь выбирает из меню безопасного режима эту опцию, система при загрузке использует информацию ключа реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlset и восстановит всю конфигурационную информацию, сохраненную после того, как компьютер в последний раз был успешно загружен.

Опция Last Known Good Configuration в Windows XP и Windows Server 2003 претерпела незаметное на первый взгляд, но весьма полезное усовершенствование. В отличие от Windows NT/2000, Windows XP и Windows Server 2003 перед обновлением набора установленных драйверов выполняют его резервное копирование. Опция Last Known Good Configuration, в дополнение к восстановлению информации реестра, выполнит также и восстановление драйверов, использовавшихся при последней успешной регистрации пользователя в системе. Таким образом, теперь эта опция поможет вам восстановить систему с конфигурационными проблемами в тех ситуациях, когда аналогичная опция Windows NT/2000 оказывалась бесполезной.

В ряде случаев, если использование опции Last Known Good Configuration не помогло, но вам известен драйвер, вызвавший проблему (список таких драйверов можно получить с помощью утилиты Sigverif, описанной ранее в этой главе), то вы можете попробовать другие способы быстрого восстановления. Например, можно попытаться использовать такие опции меню безопасного режима, как Safe Mode, Safe Mode with Networking или Safe Mode with Command Prompt. Как уже говорилось, при использовании этих опций Windows 2000, Windows XP и Windows Server 2003 загружаются с использованием минимального набора драйверов и сервисов. После загрузки системы вы сможете удалить из системы проблемный драйвер с помощью штатных средств операционной системы. Особое внимание пользователей Windows XP/Windows Server 2003 следует обратить на уже обсуждавшуюся ранее в этой главе возможность отката драйверов (Driver Rollback), которая может применяться как при нормальном режиме загрузки, так и в безопасном режиме.

Если системный и загрузочный раздел отформатированы для использования файловой системы FAT, можно попытаться загрузить компьютер с помощью загрузочной дискеты MS-DOS (или Windows 9х) и вручную удалить или переименовать файл проблемного драйвера.


Использование Recovery Console


Интерфейс Recovery Console представляет собой полноэкранный интерфейс командной строки (как в MS-DOS). Фактически ориентироваться в работе с Recovery Console вам поможет команда help, которая, как несложно догадаться, выводит список команд, доступных при работе с консолью. Помимо этого, полный список команд Recovery Console можно найти в справочной системе (достаточно выполнить поиск по словам "Recovery Console").

Краткий список команд Recovery Console приведен ниже.

 Attrib — изменение атрибутов файла или каталога.

 Batch — исполнение команд, содержащихся в указанном текстовом файле.



 Bootcfg — конфигурирование и восстановление файла Boot.ini.

 choir (CD) — переход в другой каталог.

 chkdsk — запуск программы chkdsk с выводом отчета.

 cis — очистка экрана.

 сору — копирование указанного одиночного файла.

 Delete (DEL) — удаление одиночного файла.

 Dir — вывод списка содержимого каталога.

 Disable — блокировка системного сервиса или драйвера.

 Diskpart — управление разделами на жестком диске.

 Enable — активизация сервиса или драйвера.

 Exit — завершение работы с Recovery Console и перезагрузка компьютера.

 Expand — распаковка сжатого файла.

 Fixboot — исправление поврежденного загрузочного сектора на системном разделе.

 Fixmbr — исправление поврежденной главной загрузочной записи.

 Format — форматирование диска.

 Help — вывод справочной информации по командам Recovery Console.

 Listsvc — вывод списка всех доступных в системе сервисов и драйверов.

 Logon — регистрация в системе Windows XP.

 мар — отображение списка буквенных обозначений дисков.

 MkDir (мо) — создание каталога.

 More — вывод текстового файла на экран по частям.

 Rename (REN) — переименование файла.

 RmDir (RD) — удаление каталога.

 set — отображение и установка переменных окружения Recovery Console.

 SystemRoot — закрепление за текущим каталогом статуса SystemRoot.

 туре — вывод текстового файла на экран.

Чтобы вывести информацию по работе с конкретной командой, используйте следующий синтаксис: HELP command name (например, HELP FIXBOOT) или command name /? (например, LISTSVC /?).



Изготовление загрузочных дискет


Несмотря на то, что в составе Windows Server 2003 появились новые встроенные средства устранения неполадок с загрузкой, к числу которых относятся так называемый безопасный режим (safe mode) и консоль восстановления (Recovery Console), о которых речь пойдет далее в этой главе, в ряде случаев вам очень пригодится и загрузочная дискета. Разумеется, безопасный режим предоставляет удобное средство для устранения неполадок с загрузкой, например, в таких случаях, когда в системе установлен несовместимый или некорректно работающий драйвер устройства.

Однако в некоторых ситуациях опции безопасного режима не помогут. В частности, эта ситуация возникнет, если получит повреждение один из системных модулей или жизненно важный драйвер устройства, принадлежащий к минимальному набору драйверов, которые должны быть загружены в любом случае. Также подобная проблема возникнет, если повреждена, например, такая важная структура данных, как главная загрузочная запись (MBR). Для таких случаев в состав Windows 2000, Windows XP и Windows Server 2003 включено новое, мощное средство — Recovery Console (RC), которое будет обсуждаться далее в этой главе.

Однако, если опция запуска Recovery Console не включена в меню загрузчика, то для доступа к этому средству вам потребуется так или иначе запустить программу установки операционной системы (наиболее простым способом ее запуска является загрузка компьютера с дистрибутивного компакт-диска). Эти методы запуска Recovery Console являются "штатными" и официально рекомендуемыми. Однако, если имеющееся устройство CD-ROM не является загрузочным, в вашем распоряжении останется только загрузка компьютера с загрузочной дискеты с последующим запуском программы winnt32.exe.

В Windows 2000 в распоряжении пользователей имелся еще один метод запуска Recovery Console — загрузка компьютера с помощью четырех загрузочных дискет Windows 2000. Однако загрузка с помощью установочных дискет занимает довольно много времени. По этой причине предлагаемый метод, пригодный как в Windows 2000, так и в Windows XP/Windows Server 2003, является предпочтительным.


Для изготовления загрузочной дискеты Windows 2000/XP/Windows Server 2003 выполните следующие операции:

1. Отформатируйте дискету, работая под управлением Windows 2000, Windows XP или Windows Server 2003.

2. Скопируйте на эту дискету следующие файлы:

 Ntldr;

 Ntdetect.com;

 Boot.ini;

 Bootsect.dos — если вы имеете мультизагрузочную систему и хотите обеспечить возможность загрузки с этой дискеты также для MS-DOS или Windows 9x/ME;

 Ntbootdd.sys — если в файле Boot.ini применяется синтаксис scsi ().

Изготовленная таким образом загрузочная дискета поможет выполнить загрузку компьютера в следующих случаях:

 повреждены главная загрузочная запись и/или загрузочный сектор раздела на системном разделе;

 возникли проблемы с диском, на котором располагается системный раздел (загрузочный раздел находится на другом диске);

 вы выполняете переконфигурирование жестких дисков и хотите обеспечить возможность запуска Windows NT/2000/XP или Windows Server 2003 в случае возникновения проблем.


Консоль восстановления (Recovery Console)


Консоль восстановления (Recovery Console) впервые появилась в Windows 2000, и многие администраторы и специалисты из групп технической поддержки сразу же оценили это исключительно полезное нововведение. Разумеется, консоль восстановления присутствует и в Windows XP, а также в продуктах из семейства Windows Server 2003.

Recovery Console представляет собой консоль с интерфейсом командной строки, предоставляющую администраторам и пользователям с административными правами необходимый минимум средств, позволяющих выполнить восстановительные процедуры в системе, имеющей проблемы с загрузкой. Используя Recovery Console, можно запускать и останавливать сервисы, форматировать диски, выполнять чтение и запись данных на локальные жесткие диски (включая и те, которые отформатированы для использования файловой системы NTFS), устранять проблемы с поврежденной главной загрузочной записью (MBR) и поврежденными загрузочными секторами, а также выполнять другие административные задачи.

Особенно полезной Recovery Console может оказаться в том случае, если для восстановления системы требуется скопировать на жесткий диск один или несколько системных файлов (с дискеты или компакт-диска) или же переконфигурировать сервис или драйвер, некорректная конфигурация которого мешает выполнить загрузку Windows 2000 или Windows XP/ Windows Server 2003.

Для применения Recovery Console необходимо зарегистрироваться в выбранной операционной системе от имени администратора (пользователь Administrator).



Обзор средств защиты от сбоев и восстановления поврежденной системы


Если процедура POST завершилась успешно, то аппаратные средства компьютера инициализировались корректно. Если при этом в процессе загрузки Windows Server 2003 все же происходит сбой, возможно, что проблема вызвана одной из следующих причин:

 проблемы с жестким диском, на котором находится системный раздел (загрузочный раздел может находиться на другом диске);

 повреждение главной загрузочной записи (Master Boot Record, MBR) или загрузочного сектора на системном разделе;

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

В составе Windows Server 2003 имеется целый арсенал средств, позволяющих выполнить восстановление поврежденной системы. Основные из средств обеспечения отказоустойчивости и предотвращения сбоев перечислены ниже.

 Средства защиты системных файлов цифровой подписью. С появлением Windows 2000 в составе операционной системы появился набор средств, позволяющих гарантировать защиту системных файлов и драйверов устройств от их случайной замены при установке дополнительного программного обеспечения. Во всех предыдущих версиях Windows системные файлы, в том числе динамически загружаемые библиотеки (*.dll) и исполняемые файлы (*.ехе), не имели такой защиты. При их замене некорректно работающей или несовместимой версией были возможны самые разнообразные последствия — от снижения общей производительности системы до ее катастрофического сбоя. Набор средств защиты файлов цифровой подписью включает в свой состав такие средства, как зашита системных файлов (Windows File Protection, WFP), проверка системных файлов (System File Checker, SFC) и верификация цифровой подписи файлов (File Signature Verification, FSV). В Windows XP эти функциональные возможности были расширены за счет включения еще одного чрезвычайно полезного и удобного средства — возможности отката драйверов (Driver Rollback). Теперь, если после установки обновленного драйвера устройства операционная система станет работать нестабильно, пользователю будет предоставлена возможность вернуть ее в исходное состояние путем замены драйвера на предыдущую версию.


 Безопасный режим загрузки (Safe mode). Эта опция, напоминающая аналогичную опцию загрузки Windows 95/98/ME, также была впервые введена в Windows 2000. В Windows XP и продуктах из семейства Windows Server 2003 возможности безопасного режима загрузки были расширены и усовершенствованы, что выгодно отличает эту операционную систему не только от предыдущих версий Windows NT, но и от Windows 2000. При использовании безопасного режима система загружается с минимальным набором драйверов устройств и сервисов. Использование безопасного режима предоставляет средства быстрого восстановления системы после сбоев, вызванных некорректной установкой нового программного обеспечения или драйверов устройств. Однако применение безопасного режима загрузки помогает не во всех случаях. Так, она оказывается практически бесполезной, если повреждены системные файлы, а также в случаях повреждения жесткого диска. Более подробная информация об опциях загрузки в безопасном режиме будет приведена далее в этой главе.

 Автоматическое восстановление системы (Automated System Recovery, ASR). ASR представляет собой двухступенчатую систему восстановления, которая позволяет выполнить восстановление операционных систем Windows ХР и Windows Server 2003 с использованием файлов резервной копии, сохраненных на жестком диске или съемном носителе и конфигурационной информации жесткого диска, сохраненной на дискете. Функция ASR замещает собой диск аварийного восстановления (Emergency Repair Disk, ERD), использовавшийся для аварийного восстановления системы в Windows NT 4.0 и Windows 2000. Подготовка и проведение аварийного восстановления системы будут подробно рассмотрены далее в этой главе. Здесь же следует подчеркнуть, что это средство позволит вам восстановить поврежденную операционную систему в тех случаях, когда все остальные методы восстановления эффекта не дадут (например, если повреждение жесткого диска не позволяет запустить Windows Server 2003 ни в нормальном, ни в безопасном режиме, а также использовать Recovery Console или конфигурацию Last Known Good).



 Консоль восстановления (Recovery Console). Функции Recovery Console предоставляют интерфейс командной строки, с помощью которого можно выполнить восстановление поврежденной системы. Консоль восстановления является функциональной возможностью, впервые введенной в Windows 2000. С помощью Recovery Console можно активизировать и блокировать запуск сервисов, восстанавливать поврежденные главные загрузочные записи и загрузочные секторы разделов, а также выполнять замену поврежденных системных файлов их работоспособными копиями. Эта функциональная возможность предоставляет максимум возможностей по управлению процессом восстановления, и поэтому доступна только пользователям, имеющим административные права в восстанавливаемой системе. Синтаксис команд Recovery Console будет подробно обсуждаться ниже в этой главе.

Все эти средства подробно описаны в данной главе.

В Windows XP, кроме функций, перечисленных выше, имеется также средство восстановления системы (System Restore), позаимствованное из Windows Millennium Edition. Будучи активизированной, эта функция периодически сохраняет системную информацию в автоматическом режиме, не требуя вмешательства пользователя. Поскольку в состав Windows Server 2003 эта функция не включена, мы ее не будем здесь рассматривать.


Подготовка к процессу автоматического восстановления системы


При разработке Windows XP и Windows Server 2003 особое внимание уделялось обеспечению отказоустойчивости системы и безопасности данных. Многие средства и утилиты были радикально переработаны, и встроенная утилита Backup не является исключением из этого правила. Так, помимо традиционных функциональных возможностей по резервному копированию и 'восстановлению данных, версия программы Backup, входящая в состав Windows XP и Windows Server 2003, включает и новую функцию подготовки к автоматическому восстановлению системы (Automated System Recovery, ASR). Автоматическое восстановление системы представляет собой двухступенчатый процесс, который позволяет пользователю восстановить поврежденную копию Windows XP/Windows Server 2003, используя для этой цели резервную копию конфигурационных данных операционной системы и информацию о дисковой конфигурации, сохраненную на дискете.

Большинство опытных пользователей Windows NT/2000 помнят возможности по восстановлению системы с помощью диска аварийного восстановления (Emergency Repair Disk, ERD). В Windows NT для изготовления диска аварийного восстановления применялась специальная утилита — Rdisk.exe. В Windows 2000 эта же задача выполнялась уже с помощью утилиты Backup. Что касается Windows XP и Windows Server 2003, то в этой операционной системе на смену ERD пришел процесс автоматического восстановления системы (ASR).

Для подготовки к автоматическому восстановлению системы, выполните следующие операции:

1. Если на компьютере установлено ленточное устройство, приготовьте носитель для выполнения резервного копирования. Если такого устройства у вас нет, то вы будете ограничены возможностью выполнения резервного копирования в файл на жестком диске. В этом случае следует освободить достаточный объем свободного дискового пространства. Кроме того, в любом случае вам потребуется пустая отформатированная дискета.

2. Запустите утилиту Backup в режиме Advanced Mode. Нажмите кнопку Automated System Recovery Wizard (Мастер автоматического восстановления системы) на вкладке Welcome или выберите команду ASR wizard из меню Tools. В первом окне программы-мастера подготовки к автоматическому восстановлению системы нажмите кнопку Next.


3. В следующем окне (рис. 23.14) вам потребуется указать тип носителя, на который будет производиться резервное копирование, а также указать путь к резервной копии. Как и в случае копирования системных конфигурационных данных, если компьютер оборудован ленточным устройством, вам потребуется выбрать это устройство из списка Backup media type (Тип носителя архива). Если ленточное устройство не установлено, то по умолчанию в этом списке будет установлена опция File. Введите полный путь к носителю или файлу резервной копии в поле Backup media or file name или нажмите кнопку Browse.



Рис. 23.14. Мастер подготовки ASR предлагает указать тип носителя и путь к резервной копии

4. В последнем окне мастера подготовки процесса ASR нажмите кнопку Finish. Утилита Backup начнет сканирование системы и составит список файлов, которые необходимо включить в состав резервной копии ASR. Далее, вам будет предложено вставить носитель для выполнения резервного копирования. Мастер отобразит на экране серию сообщений примерно следующего содержания:

Mounting the media

Preparing to backup using a shadow copy

Затем на экране появится окно Backup Progress (рис. 23.15), информирующее о ходе процесса создания резервной копии ASR.



Рис. 23.15. Окно Backup Progress

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

6. Когда резервное копирование будет завершено, мастер отобразит сообщение, рекомендующее пометить дискету как дискету аварийного восстановления и сохранить ее в безопасном месте. Для просмотра отчета о ходе резервного копирования нажмите кнопку Report в окне Backup Progress (рис. 23.17).



Рис. 23.16. Мастер подготовки ASR предлагает вставить в дисковод чистую отформатированную дискету для сохранения информации, необходимой для автоматического восстановления системы



Рис. 23.17. Для просмотра отчета о ходе процесса резервного копирования нажмите кнопку Report


Следует еще раз отметить, что


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

Восстановить поврежденную систему в кратчайшие сроки и с минимальными потерями будет существенно проще, если выполнены следующие рекомендации:

 в вашем распоряжении имеется точная и достоверная информация об аппаратной конфигурации восстанавливаемого компьютера и установленном на нем программном обеспечении;

 вы регулярно проводите плановые процедуры по профилактическому обслуживанию техники;

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

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

1. Выбор и приобретение устройства резервного копирования. В частности, перед приобретением устройства рекомендуется проанализировать его надежность, быстродействие, емкость, стоимость (с учетом затрат на приобретение необходимого количества съемных носителей), а также совместимость с Windows Server 2003. Поддерживаемые устройства должны быть перечислены в списке совместимых аппаратных средств (HCL), последнюю версию которого можно найти по адресу http://www.microsoft.com/hwdq/hcl/.

2. Тщательное тестирование как устройства резервного копирования, так и используемого для резервного копирования программного обеспечения.

3. Определение необходимого количества носителей и выработка расписания операций резервного копирования.


Процедуры резервного копирования и восстановления


Как и в предыдущих версиях Windows NT/2000, официально рекомендуемым методом резервного копирования и восстановления данных в Windows XP и Windows Server 2003 является использование встроенной утилиты Backup.

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

Windows XP и Windows Server 2003, как и следовало ожидать, вводят технологические усовершенствования и в этой области. К числу таких усовершенствований относится и технология моментальных снимков тома (volume shadow сору), которая позволяет создать "моментальный снимок" жесткого диска на момент начала резервного копирования. В процессе резервного копирования будет использоваться этот "моментальный снимок" (остающийся неизменным), а не фактическое содержимое жесткого диска (которое в ходе резервного копирования может изменяться). Эта технология предоставляет особые преимущества тем пользователям, которым необходимо продолжать работу в ходе выполнения резервного копирования, т. к. она позволяет существенно сократить время, требующееся на завершение процесса резервного копирования. При этом приложение Backup может выполнять резервное копирование открытых файлов, с которыми на данный момент работает пользователь. Обратите внимание, что в Windows 2000 файлы, открытые на момент выполнения резервного копирования, исключались из резервной копии.

Чтобы вызвать программу Backup в Windows XP или Windows Server 2003, выберите из меню Start команды All Programs | Accessories | System Tools | Backup (разумеется, в случае частого использования этой программы для нее можно создать ярлык на рабочем столе). Помимо этого традиционного способа, вызов программы Backup можно осуществить и через контекстное меню, выводимое по нажатию правой кнопки мыши. Для этого в окнах Windows Explorer или My Computer укажите курсором на диск, для которого требуется выполнить резервное копирование, выполните щелчок правой кнопкой мыши и выберите из раскрывшегося меню команду Properties. В появившемся диалоговом окне перейдите на вкладку Tools и нажмите кнопку Backup Now (рис. 23.10).


Перед резервным копированием рекомендуется выполнить проверку файловой системы диска, чтобы полученная резервная копия была качественной и работоспособной. Следует помнить, что программы резервного копирования (в том числе и программа Backup, включенная в состав Windows XP или Windows Server 2003), не могут распознавать ошибки и повреждения в пользовательских данных. Обратите внимание, что при применении этого метода операцию проверки выполнять очень удобно — просто нажмите кнопку Check Now, расположенную на этой же вкладке.



Рис. 23.10. Вкладка Tools диалогового окна свойств диска позволяет быстро выполнить резервное копирование всех файлов, расположенных на этом диске


Проверка системных файлов (System File Checker)


В состав Windows 2000, Windows XP и Windows Server 2003 включено средство проверки системных файлов — System File Checker (Sfc.exe), которое представляет собой утилиту командной строки. Данная утилита сканирует все установленные системные файлы и выполняет проверку их версий. Если эта утилита обнаружит, что один из защищаемых системных файлов был замещен, она найдет корректную версию этого файла в каталоге %SystemRoot%\systern32\dllcache и запишет ее вместо измененного файла.

Эта утилита командной строки имеет следующий синтаксис: SFC [/SCANNOW] [/SCANONCE] [/SCANBOOT] [/REVERT] [/PURGECACHE] [/CACHESIZE=X]

где:

/SCANNOW — параметр, при использовании которого выполняется немедленное сканирование всех защищаемых системных файлов;

/SCANONCE — параметр, указывающий на необходимость однократного сканирования всех защищаемых системных файлов;

/SCANBOOT — параметр, задающий опцию сканирования всех защищаемых системных файлов при каждой перезагрузке;

/REVERT — установить для параметров сканирования значения, принятые по умолчанию;

/PURGECACHE — очищает файловый кэш System File Protection;

/CACHESIZE=X — устанавливает размер файлового кэша Windows File Protection (в мегабайтах). С помощью этой опции можно уменьшать или увеличивать объем дискового пространства, выделяемый для хранения кэшированных версий защищаемых системных файлов в папке %SystemRoot%\system32\dllcache.

Чтобы иметь возможность работы с утилитой sfc.exe, необходимо зарегистрироваться на компьютере как администратор или как пользователь, являющийся членом группы Administrators.

Если содержимое папки %SysfemRoot%\system32\dllcache окажется поврежденным, то вы сможете восстановить его, запустив команду sfc /scannow, sfc /scanonce или sfc /scanboot.



Регулярное выполнение профилактических процедур


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

 Довольно часто причиной некорректной работы системы или даже проблем с ее загрузкой может быть перезапись системного файла или же несовместимый драйвер. Обычно это происходит во время установки дополнительного программного обеспечения, несовместимого с операционной системой. Эта проблема существовала в Windows NT 4.0 и во всех более ранних версиях Windows NT. С выходом Windows 2000 были введены дополнительные средства защиты системных файлов и драйверов с помощью цифровой подписи, которая гарантирует их совместимость с операционной системой и корректную работу. В Windows XP и Windows Server 2003, в дополнение к существующим средствам защиты драйверов и системных файлов, появились новые функциональные возможности, такие как Driver Rollback. Во избежание возникновения проблем рекомендуется пользоваться этими средствами, которые будут подробно описаны далее в этой главе.

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

 Рекомендуется ежедневно просматривать журналы системных событий (как минимум, журналы system и application). В особенности обращайте внимание на ошибки, генерируемые драйвером Ftdisk и драйверами жестких дисков, т. к. они могут указывать на возможные повреждения файловой системы. Если эта рекомендация не выполняется, то ошибки файловой системы могут остаться незамеченными до тех пор, пока программа Chkdsk не укажет на их существование. Стоит отметить, что при этом возможна даже такая ситуация, когда поврежденные данные попадут и на резервную копию, поскольку программы резервного копирования (в том числе и встроенная программа Backup, включенная в состав Windows 2000, Windows XP и Windows Server 2003) не могут распознавать ошибки и повреждения в пользовательских данных.

 Регулярно выполняйте проверку дисков для своевременного обнаружения ошибок файловой системы. Кроме того, рекомендуется регулярно проводить и дефрагментацию дисков, что позволит избежать проблем с низкой производительностью. Стоит дать отдельное предупреждение о том, что для дефрагментации следует применять только встроенные средства операционной системы или утилиты сторонних производителей, имеющие статус "designed for Windows". Информацию о программном обеспечении, тестировавшемся на совместимость с Windows XP и Windows Server 2003, в том числе и об утилитах дефрагментации дисков, можно найти по адресу http://www.microsoft.com.



Резервное копирование системных файлов


Помимо множества новых и чрезвычайно удобных функций программа Backup позволяет выполнить процедуру резервного копирования всех системных файлов. Чтобы упростить процедуру восстановления после сбоев, резервное копирование рекомендуется выполнять регулярно. Сделать это можно двумя различными способами. Первый способ заключается в использовании мастера Backup wizard (Мастер резервного копирования), который можно вызвать, выбрав переключатель Back up files and settings во втором окне программы Backup, работающей в режиме мастера, или выбрав команду Backup Wizard из меню Tools. Пользоваться этим методом рекомендуется начинающим пользователям, не имеющим достаточного опыта в работе с системой.

Помимо использования мастера, процедуру резервного копирования можно выполнить и вручную. Для этого вызовите программу Backup в расширенном режиме (Advanced Mode), перейдите на вкладку Backup и вручную выберите из списка дисков, файлов и папок, подлежащих резервному копированию, опцию System State (Состояние системы) (рис. 23.11).


Рис. 23.11. Чтобы системные конфигурационные файлы были включены в состав резервной копии, установите флажок System State; данный пример иллюстрирует сохранение состояния системы для контроллера домена

Обратите внимание на то, что программа Backup не позволяет выполнить выборочное резервное копирование отдельных компонентов набора System State.

В списке Backup destination выберите ленточное устройство (если оно установлено на компьютере, и резервное копирование должно быть выполнено на ленту, вставленную в это устройство) или выберите опцию File (если резервное копирование должно выполняться в файл). Если компьютер не оснащен ленточным устройством, то опция File всегда будет выбрана по умолчанию. Если резервное копирование будет выполняться в файл, то в поле Backup media or file name укажите путь к файлу, в который будет выполняться резервное копирование (файлы резервных копий всегда имеют расширение bkf), или нажмите кнопку Browse, чтобы найти нужный файл. Если резервное копирование должно выполняться на ленту, выберите ленту, на которую будет выполняться резервное копирование. Дополнительные опции резервного копирования можно задать, выбрав команду Options из меню Tools. Чтобы начать процедуру резервного копирования, нажмите кнопку Start Backup (Начать копирование).




Рис. 23.12. Окно Backup Job Information



Рис. 23.13. Окно Advanced Backup Options

На экране появится окно Backup Job Information (рис. 23.12). Чтобы установить в этом окне дополнительные опции задания на резервное копирование, нажмите кнопку Advanced. Раскроется окно Advanced Backup Options (рис. 23.13). (Обратите внимание на состояние флажка Automatically backup System Protected Files with the System State!)

Краткий список опций, которые можно задать в окне Advanced Backup Options, приведен ниже.

 Back up data that is in Remote Storage. Если эта опция установлена, то программа Backup выполнит резервное копирование данных, перенаправленных для службы Remote Storage.

Восстанавливать данные Remote Storage можно только на тома NTFS. Кроме того, обратите внимание на то, что сервис Remote Storage доступен только для серверных продуктов (Windows 2000 Server и Windows Server 2003, Enterprise Edition).

 Verify data after backup. При использовании этой опции программа Backup после завершения резервного копирования выполнит проверку соответствия скопированных данных и исходных данных. Обратите внимание, что Microsoft настоятельно рекомендует применять эту опцию, т. к. она позволяет гарантировать точность резервной копии и ее пригодность к использованию. Следует, правда, отметить, что установка этой опции может существенно увеличить время, необходимое для завершения операции резервного копирования.

 If possible, compress the backup data to save space. Эта опция будет полезна, если резервное копирование выполняется на магнитную ленту. Обратите внимание на то, что аппаратное сжатие доступно только для ленточных устройств. По этой причине опция будет недоступна при выполнении резервного копирования в файл.

 Automatically backup System Protected Files with the System State. Как уже отмечалось, вы не можете выполнять выборочного резервного копирования данных из набора System State. Однако Windows XP и продукты из семейства Windows Server 2003 предоставляют возможность одновременно с резервным копированием системных конфигурационных файлов выполнить резервное копирование всех защищенных файлов операционной системы (по сути, сделать архивную копию самой системы, что далеко не всегда нужно). По умолчанию эта опция активизирована, однако вы можете блокировать ее, сбросив данный флажок. Размер архива в этом случае будет, понятно, значительно меньше.



Защищенные файлы операционной системы изменяются только в том случае, когда пользователь устанавливает пакеты обновления (Service Pack), приложения или выполняет обновление операционной системы. Как правило, эти файлы занимают существенный объем дискового пространства (около 180 Мбайт). Поэтому включать защищенные файлы операционной системы в состав резервной копии рекомендуется только в том случае, когда вы выполняли установку новых программ (т. к. в противном случае эти программы не будут корректно работать после восстановления данных из набора System State).

 Disable volume shadow copy. Эта опция позволяет блокировать технологию "моментальных снимков тома" (volume shadow copy). Как уже говорилось, эта технология, впервые введенная в Windows XP, позволяет программе Backup работать параллельно с другими приложениями и сервисами. По умолчанию Windows XP/Windows Server 2003 будет использовать свободное дисковое пространство на любом из томов NTFS для хранения данных "моментального снимка" вплоть до завершения процесса резервного копирования. Объем дискового пространства, используемого для хранения "моментального снимка", зависит от объема данных, выбранных для включения в состав резервной копии, а также от объема данных, подвергшихся изменению в ходе резервного копирования. По умолчанию Windows XP и Windows Server 2003 всегда используют "моментальные снимки", но вы можете отключить эту опцию при том условии, что объем резервной копии невелик.

Если в вашей системе недостаточно свободного дискового пространства, Windows XP и Windows Server 2003 не смогут сохранить данные "моментального снимка", и в этом случае программа Backup будет вести себя точно так же, как во всех предыдущих версиях Windows — она будет пропускать файлы, которые были открыты на момент резервного копирования. Кроме того, следует обратить внимание и на то, что при резервном копировании данных из набора System State опция блокирования "моментального снимка" недоступна.



Наверняка любой более или менее любознательный пользователь задастся вопросом: а что же именно скрывается за общим названием "System State"? Ответ на данный вопрос на первый взгляд кажется очевидным: ведь в правой панели окна программы Backup (см. рис. 23.11) отображается список компонентов системы, которые включаются в состав резервной копии, когда пользователь устанавливает флажок System State. Однако обратите внимание на то, что программа Backup не позволяет осуществлять выборочное резервное копирование, флажки напротив опций, отображенных в правой панели, затенены, и их нельзя устанавливать или сбрасывать. Помимо этого, для Windows 2000 Professional/Windows XP и Windows 2000 Server/Windows Server 2003 набор файлов, входящих в System State, будет различным. В системах Windows 2000 Professional/Windows XP в состояние системы включаются следующие файлы:

 реестр (Registry);

 регистрационная база данных классов СОМ+;

 файлы, необходимые для загрузки (Boot files).

Для систем Windows 2000 Server/Windows Server 2003 набор системных конфигурационных данных включает все те же компоненты, что и для Windows 2000 Professional/Windows XP, а также следующие данные:

 базу данных службы сертификатов (Certificate Services database), если сервер является сервером сертификатов;

 базу данных Active Directory и том SYSVOL, если сервер является контроллером домена;

 информацию, необходимую для восстановления кластера, если на сервере работает сервис кластера. Эта информация включает данные контрольных точек реестра и журнал восстановления ресурса кворума (quorum resource), который содержит информацию о базе данных кластера.

Как уже упоминалось, если выбрана опция резервного копирования системных конфигурационных данных (System State), то программа Backup не позволит выполнить выборочное резервное копирование отдельных компонентов этого набора, что объясняется взаимозависимостью данных компонентов. Кроме того, при выполнении резервного копирования данных из набора System State вы не сможете блокировать использование технологии "моментальных снимков" томов.



Помимо этого, важно отметить следующее:

 чтобы выполнить резервное копирование данных из набора System State, необходимо иметь в системе права администратора (Administrator или один из пользователей, включенных в группу Administrators) или оператора резервного копирования (один из пользователей, включенных в группу Backup operators);

 в любом случае можно выполнить резервное копирование системных конфигурационных данных (System State data) только для локального компьютера. Резервное копирование этих данных для удаленного компьютера выполнить нельзя;

 при выполнении резервного копирования данных из набора System State система сохраняет копии файлов реестра в папке %SystemRoot%\Kpa\r \regback. В случае удаления или повреждения файлов реестра резервные копии его файлов, сохраненные в этой папке, могут использоваться для восстановления системы без необходимости прибегать к полной процедуре восстановления системных конфигурационных данных (однако применять этот метод могут только опытные пользователи, хорошо знающие принципы загрузки и функционирования системы).


Способы запуска Recovery Console


Существуют следующие способы запуска Recovery Console.

 Если вы не можете выполнить загрузку Windows XP/Windows Server 2003 с жесткого диска, запустите Recovery Console с дистрибутивного компакт-диска (если на вашем компьютере установлено устройство CD-ROM, с которого можно выполнять загрузку операционной системы). Если загрузка с компакт-диска невозможна, загрузите компьютер с загрузочной дискеты и запустите программу Setup из командной строки (необходимую информацию по данному вопросу можно найти в главе 1 "Планирование и установка системы").

 Recovery Console можно установить на жестком диске вашего компьютера и включить ее как одну из доступных опций в меню загрузки.



Удаление Recovery Console


Если требуется удалить Recovery Console из списка опций, доступных в меню загрузки, выполните следующие операции:

1. Из корневого каталога системного раздела удалите папку \cmdcons и файл cmldr.

Папка \cmdcons и файл cmldr имеют атрибуты Hidden и System, а это значит, что они принадлежат к числу файлов, защищаемых операционной системой, и по умолчанию не отображаются графической оболочкой Windows. Поэтому не забудьте настроить опции отображения папок с помощью значка Folder Options на панели управления.

2. Откройте для редактирования файл Boot.ini, найдите в его составе строку, соответствующую опции запуска Recovery Console, и удалите ее. Пример, иллюстрирующий, как может выглядеть такая строка, приведен ниже.

С:\CMDCONS\BOOTSECT.DAT="Microsoft Windows Recovery Console" /cmdcons



Установка Recovery Console на жесткий диск


Чтобы установить Recovery Console на жесткий диск и указывать ее в качестве одной из опций меню загрузки, выполните следующие операции:

1. Зарегистрируйтесь в Windows Server 2003 как администратор или пользователь, принадлежащий к группе Administrators.

2. Вставьте дистрибутивный компакт-диск в устройство CD-ROM.

3. В режиме командной строки перейдите на дистрибутивный диск и введите команду \I386\winnt32.exe /cmdcons

4. Следуйте инструкциям, появляющимся на экране.



Ведение журнала справочной информации


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

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

В отношении программной конфигурации Microsoft официально рекомендует регистрировать следующую информацию:

 сведения о конфигурации жестких дисков, в том числе расположении и размерах каждого раздела и каждого логического диска;

 информацию обо всех установленных на компьютере операционных системах и разделах, на которых они установлены;

 информацию о дополнительном программном обеспечении, установленном на компьютере.



Верификация цифровой подписи файлов (File Signature Verification)


Как уже говорилось, в некоторых случаях установка нового программного обеспечения приводит к замещению системных файлов некорректными или несовместимыми версиями (которые, естественно, не имеют цифровой подписи). Такая замена, как уже неоднократно упоминалось, как раз и может послужить источником возможных проблем с нестабильностью системы (в том числе ошибок типа "синий экран" и проблем с загрузкой Windows XP/ Windows Server 2003).

Во избежание такого рода проблем все системные файлы, устанавливаемые в процессе инсталляции Windows XP или Windows Server 2003, снабжены цифровой подписью Microsoft. Если системный файл имеет такую подпись, это может служить гарантией его совместимости с операционной системой и указывает на то, что данный файл либо представляет собой оригинальную версию, разработанную Microsoft, либо прошел тестирование и признан пригодным для использования с Windows XP/Windows Sewer 2003. Использование средства верификации цифровой подписи файлов позволяет идентифицировать все установленные на проверяемом компьютере файлы, не имеющие цифровой подписи, и получить об этих файлах следующую информацию:

 имя файла и точный путь к нему;

 дату модификации файла;

 тип файла и точный номер его версии.

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

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

1. Запустите программу Sigverif, и в появившемся на экране окне File Signature Verification (Верификация подписи файлов) (рис. 23.5) нажмите кнопку Advanced (Дополнительно).

2. В раскрывшемся диалоговом окне Advanced File Signature Verification Settings (Дополнительные параметры верификации подписей файлов) перейдите на вкладку Logging (Журнал) (рис. 23.6) и установите флажок Save the file signature verification results to a log file (Сохранять результаты проверки в файле журнала).


3. Перейдите в группу Logging options (Опции журнала), где имеется возможность установить по выбору следующие опции ведения файла журнала:

 Append to existing log file (Добавлять новые записи в конец существующего файла) — если установить этот переключатель, то результаты новой операции поиска будут добавлены в конец существующего файла журнала;

 Overwrite existing log file (Перезаписывать существующий файл) — если выбран этот переключатель, то результаты новой операции сканирования заместят существующий файл журнала;

 В поле Log file name (Имя файла журнала) можно вручную ввести имя файла журнала.



Рис. 23.5. Окно File Signature Verification



Рис. 23.6. Вкладка Logging окна Advanced File Signature Verification Settings

4. Нажмите кнопку ОК. Вы вернетесь в окно File Signature Verification. Чтобы начать операцию сканирования, нажмите в этом окне кнопку Start. Степень завершенности процесса сканирования будет отражаться индикатером Scanning files (Сканирование файлов). Для отмены сканирования нажмите кнопку Stop. По завершении процесса сканирования на экране появится окно Signature Verification Results (Результаты сканирования) (рис. 23.7), в котором будет отображен список всех обнаруженных файлов, не имеющих цифровой подписи.



Рис. 23.7. Окно Signature Verification Results


Воссоздание утерянной дискеты ASR


В заключение обсуждения процесса ASR давайте рассмотрим одну неприятную, но весьма вероятную ситуацию. Предположим, что вам необходимо выполнить процедуру ASR, и вы вдруг обнаруживаете, что потеряли дискету ASR. Значит ли это, что все потеряно? Нет, ничего еще не потеряно, поскольку если ваш носитель с резервной копией ASR пригоден к использованию, то вы имеете возможность воссоздать недостающую дискету ASR.

Если вы изготовили хотя бы одну дискету ASR, то практически наверняка поинтересовались, какие же файлы на нее сохраняются (а файлы asr.sif, asrpnp.sif и setup.log представляют собой текстовые файлы формата ASCII, которые можно просмотреть с помощью любого текстового редактора, например, Notepad.exe). И, наконец, самая хорошая новость заключается в том, что эти файлы не только копируются на дискету ASR, но и включаются в состав резервной копии ASR, откуда их без особого труда можно извлечь с помощью все той же программы Backup (причем для этой цели годится не только версия Backup, входящая в состав Windows XP или Windows Server 2003, но и программа Backup, поставляемая в составе Windows 2000).

Итак, для воссоздания отсутствующей дискеты ASR проделайте следующее:

1. Отформатируйте дискету емкостью 1,44 Мбайт и вставьте ее в дисковод любого компьютера, работающего под управлением одной из перечисленных выше систем.

2. Запустите программу Backup и перейдите на вкладку Restore and Manage Media (Windows XP/Windows Server 2003) или на вкладку Restore (Windows 2000). Вставьте свой носитель с резервной копией ASR в устройство резервного копирования и выберите команду Catalog a backup file из меню Tools. В следующем окне укажите путь к резервной копии (при необходимости можно нажать кнопку Browse).

3. Выберите носитель, содержащий копию ASR и в левой части окна программы Backup разверните архив, соответствующий диску ASR, который требуется воссоздать.

4. Разверните папку %SystemRoot%\Kpair и пометьте для восстановления следующие файлы: asr.sif, asrpnp.sif и setup.log (рис. 23.18). В списке Restore files to выберите опцию Alternate location, а в поле Alternate location укажите путь к корневому каталогу дискеты ("А:\").

5. Нажмите кнопку Start Restore. Выбранные файлы будут скопированы на дискету. Извлеките дискету из дисковода и используйте ее в ходе восстановления ASR.


Рис. 23.18. Воссоздание отсутствующей дискеты ASR



Восстановление системных данных


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

Чтобы восстановить системные конфигурационные данные (System State data), вызовите программу Backup в режиме Advanced Mode, перейдите на вкладку Restore and Manage Media (Восстановление и управление носителями) и в окне Expand the desired media item, then check the box for the items to restore (Разверните узел нужного носителя, затем установите флажки около тех объектов, которые требуется восстановить) установите флажок System State. Затем нажмите кнопку Start Restore, и через некоторое время будут восстановлены системные файлы, а также любые другие запрошенные данные.

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

Тем не менее, восстановление компонентов системных данных можно выполнять в другой (альтернативный) каталог, и в этом случае текущее состояние (том SYSVOL, файлы базы данных кластера и файлы, необходимые для загрузки системы, база данных Active Directory, база данных сервера сертификатов и информация классов СОМ+) останется неизменным.

Кроме того, выполняя восстановление системных конфигурационных данных, необходимо помнить о следующих факторах:

 для выполнения восстановления системных конфигурационных данных необходимо иметь в локальной системе права администратора или оператора резервного копирования;

 если восстановление системных конфигурационных данных выполняется на контроллере домена, то пользователь, осуществляющий процедуру восстановления, должен будет выбрать режим выполнения этой операции. По умолчанию программа Backup выполняет восстановление данных о конфигурации системы в так называемом непринудительном (nonauthoritative) режиме, при использовании которого все реплицируемые данные (например, базы данных Active Directory или содержимое тома SYSVOL) после восстановления с резервной копии будут обновляться данными, поступающими с других контроллеров домена. Если требуется изменить это положение вещей, необходимо выполнять восстановление в так называемом принудительном (authoritative) режиме, с обязательным использованием системной утилиты Ntdsutil, которую следует запускать сразу же после восстановления данных, но до перезагрузки контроллера домена. Утилита Ntdsutil позволяет помечать объекты для принудительного восстановления, что гарантирует их правильную репликацию после восстановления данных;

 перед выполнением восстановления системных конфигурационных данных на контроллере домена необходимо выполнить загрузку компьютера в режиме, называемом режимом восстановления службы каталогов (directory services restore mode), который представляет собой одну из опций меню режима безопасной загрузки. Этот режим позволит восстановить том SYSVOL и базу данных Active Directory;

 восстановление системных конфигурационных данных можно произвести только на локальном компьютере. Как и резервное копирование, эта операция не может производиться на удаленных компьютерах.



Восстановление системы


Несмотря на то, что Windows Server 2003 по надежности и отказоустойчивости превосходит все предшествующие версии Windows, давайте посмотрим на веши реально: поскольку проблемы с загрузкой возможны при работе с любой операционной системой, то и Windows Server 2003 не является исключением из общего правила. Несмотря на новое название, эта операционная система является логическим продолжением семейства операционных систем Windows NT/2000/XP, и по этой причине в процессе загрузки Windows Server 2003 могут возникать некоторые проблемы, с которыми сталкивались пользователи этих операционных систем. В частности, возникновение проблем может быть вызвано:

 сбоями в работе жесткого диска или ошибками в работе контроллера жесткого диска;

 сбоями в подаче электропитания;

 некорректно работающими приложениями и плохо написанными драйверами устройств;

 вирусной атакой;

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

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

В этой главе описываются превентивные меры, которые любой опытный пользователь должен предпринимать в целях устранения неполадок в работе Windows Server 2003, рассматриваются встроенные средства операционной системы по обеспечению ее надежности и отказоустойчивости, а также приводятся инструкции по восстановлению системы и данных в случае возникновения проблем с загрузкой и других неполадок.



Возможности отката драйверов (Driver Rollback)


В дополнение к средствам обеспечения отказоустойчивости, появившимся в Windows 2000, системы Windows XP и Windows Server 2003 предлагают еще одно удобное новшество — возможности отката драйверов (Driver Rollback). Довольно часто такие проблемы, как аппаратные конфликты, нестабильное поведение системы, неправильная работа устройств и даже ошибки STOP бывают вызваны некорректным драйвером. Стоит ли говорить, что в такой ситуации весьма желательно было бы иметь возможность быстрой замены проблемного драйвера на предыдущую версию без переустановки системы.

Функция Driver RollBack оказывается просто незаменимой при устранении неполадок, а также при отладке бета-версий драйверов. Например, если после установки обновленного драйвера при загрузке появляется сообщение STOP, вы имеете возможность попытаться загрузить систему в безопасном режиме и произвести откат драйвера.

Чтобы воспользоваться функцией отката драйверов, проделайте следующее:

1. Вызовите опцию System на панели управления, перейдите на вкладку Hardware и нажмите кнопку Device Manager (Менеджер устройств).

2. Выполните щелчок правой кнопкой мыши, указав на устройство, обновленный драйвер которого вызывает проблему, и выберите из контекстного меню команду Properties.

3. В раскрывшемся диалоговом окне свойств выбранного устройства перейдите на вкладку Driver (Драйвер) (рис. 23.8). Нажмите кнопку Roll Back Driver (Откат драйвера).


Рис. 23.8. Вкладка Driver диалогового окна свойств аппаратного устройства (на примере сетевого адаптера)


Рис. 23.9. Уведомление о невозможности отката драйвера

4. Менеджер устройств предложит вам подтвердить намерение выполнить откат драйвера. Нажмите кнопку Yes. Если старая версия драйвера недоступна, функция Driver Roll Back выведет окно с уведомлением (рис. 23.9) и предложит воспользоваться другими средствами устранения неполадок.



Выполнение процесса аварийного восстановления с помощью резервной копии ASR


Процесс аварийного восстановления поврежденной системы с использованием процедуры ASR запускается из программы установки операционной системы — Windows Server 2003 Setup. Таким образом, для его выполнения вам, помимо резервной копии ASR и дискеты ASR, потребуется также дистрибутивный компакт-диск. Фактически этот процесс очень похож на процедуру автоматической установки операционной системы. Процедура ASR восстановит вашу конфигурацию дисковой подсистемы с использованием данных, сохраненных на дискету ASR, переформатирует раздел %SystemDrive% (тот, на котором установлена копия ОС, подлежащая восстановлению), затем переустановит на этот раздел Windows Server 2003 и восстановит конфигурационную информацию системы с резервной копии.

Следует понимать, что подготовка к ASR не является заменой регулярных процедур резервного копирования. Так, она не исключает риска потери данных, поскольку не выполняет резервного копирования файлов приложений и пользовательских данных. Как уже было сказано, в ходе выполнения процесса восстановления поврежденной системы процедура ASR выполняет переформатирование раздела %SystemDrive%, не восстанавливая при этом файлов приложений и пользовательских данных, которые могут находиться на этом диске (например, в папке Program Files). Таким образом, если вы устанавливаете на этот диск приложения и храните на нем пользовательские данные, то после выполнения процедуры ASR вся эта информация будет уничтожена. Следовательно, прежде, чем прибегать к такому радикальному средству восстановления, как ASR, необходимо попытаться использовать другие опции восстановления, например, System Restore или Recovery Console (установка, запуск и использование Recovery Console будут подробно описаны далее в этой главе).

Чтобы провести процесс аварийного восстановления с помощью ASR, выполните следующую последовательность шагов:

1. Подготовьте все необходимое для процесса ASR, в том числе:

 дискету ASR с конфигурационной информацией, соответствующей конфигурации вашего компьютера на тот момент, когда вы в последний раз выполняли процедуру подготовки ASR;


 дистрибутивный компакт-диск Windows Server 2003;

 носитель с резервной копией данных ASR (как правило, это съемный носитель, например, магнитная лента).

2. Запустите программу Setup. Самый простой способ заключается в перезагрузке компьютера с дистрибутивного компакт-диска.

3. Нажмите любую клавишу, когда на экране появится сообщение Press any key to boot from the CD....

4. Когда запустится программа Windows XP Setup, дождитесь появления сообщения Press F2 to run Automated System Recovery (ASR) И нажмите клавишу <F2>.

5. Вставьте в дисковод дискету ASR, когда программа Windows Server 2003 Setup предложит вам сделать это.

6. На экране появится сообщение следующего содержания: Preparing to ASR, press <ESC> to cancel

Обратите внимание, что на данном этапе вы еще имеете возможность передумать и отказаться от выполнения ASR, нажав клавишу <Esc>.

Если вы не сделаете этого, то процедура ASR запустится и в качестве первого шага сразу же начнет форматирование вашего раздела %SystemDrive%.

7. Если вы намерены продолжать процедуру, не реагируйте на предложение нажать клавишу <Esc> для отмены. Программа Setup отобразит следующие сообщения:

Setup is starting the ASR...

Setup is loading files

Setup is starting Windows

После этого процесс ASR начнет переформатирование раздела %SystemDrive% и проверку остальных разделов с целью определить, не нуждаются ли они в восстановлении.

Обратите внимание, что помимо переформатирования раздела %SystemDrive%, процедура ASR может также выполнить инициализацию других томов (если она определит, что они также нуждаются в восстановлении). Поскольку ASR восстанавливает только данные системы, то существует риск потери данных, хранящихся и на этих томах.

8. После форматирования и завершения проверки всех разделов ASR построит список файлов для копирования и предложит вам вставить носитель с резервной копией ASR. Если при подготовке к ASR резервное копирование выполнялось в файл, то этот шаг будет пропущен. Далее процедура ASR фактически выполнит автоматическую установку Windows Server 2003, а затем восстановит системную конфигурацию.



Следует учесть, что процедура ASR не поддерживает восстановления данных с общих сетевых ресурсов. Поэтому при восстановлении следует указывать только локальные устройства (например, локально подключенные ленточные устройства, съемные носители или локальные жесткие диски). Если при подготовке к ASR вы выполняли резервное копирование в файл на жестком диске, то следует иметь в виду, что ASR поддерживает тома FAT16 объемом не более 2,1 Гбайт. Если резервная копия ASR находится на разделе большего объема, то процесс ASR завершится неудачей. В этих случаях перед запуском ASR следует сначала преобразовать раздел FAT16 в формат NTFS.

Стоит отметить, что если кроме всех компонентов, необходимых для выполнения процедуры ASR, в вашем распоряжении имеется полная резервная копия всех данных, то ASR в сочетании с последующим восстановлением этих данных предоставляет довольно надежный способ восстановления поврежденной системы. Тем не менее, общая рекомендация заключается в следующем: прежде чем прибегать к процессу ASR, попытайтесь сначала воспользоваться другими средствами восстановления поврежденной системы, например такими, как загрузка в безопасном режиме (Safe Mode).


Запуск Recovery Console из программы Windows Server 2003 Setup


Как уже говорилось, Recovery Console можно запустить из программы Windows Server 2003 Setup. Разумеется, для этой цели вам потребуется загрузочное устройство CD-ROM или загрузочная дискета и доступ к дистрибутивным файлам для запуска программы Setup. Независимо от того, каким образом будет запущена программа Setup, в этом случае ^ам придется затратить некоторое время на ожидание (ждать придется до [тех пор, пока не завершится процесс начального копирования базовых драйверов). При появлении экрана, где программа Setup предлагает на выбор установить Windows Server 2003, восстановить поврежденную копию ОС или завершить программу установки, нажмите клавишу <R> (рис. 23.19).

После этого программа Setup выполнит просмотр жестких дисков компьютера в поисках существующих копий Windows, которые могут нуждаться в восстановлении. Обнаружив несколько таких копий, Setup предложит вам выбрать ту, которую вы собираетесь восстанавливать, а затем — ввести пароль пользователя Administrator. Успешно зарегистрировавшись в выбранной системе Windows, вы получите в свое распоряжение мощный набор административных средств восстановления, предоставляющий вам самые широкие возможности.


Рис. 23.19. При появлении экрана, где программа Setup предлагает на выбор опции установки Windows, восстановления поврежденной копии Windows или завершения программы установки, нажмите клавишу <R>

При восстановлении контроллера домена Recovery Console требует для регистрации не обычный пароль администратора, а пароль, указанный для восстановления Active Directory (Directory Services Restore Mode Administrator Password). Этот пароль задается в процессе повышения роли сервера (promotion) до контроллера домена.

В частности, Recovery Console позволяет выполнять следующие операции:

 форматировать разделы;

 запускать и останавливать сервисы;

 выполнять чтение и запись файлов;

 восстанавливать поврежденные главные загрузочные записи (MBR).



Защита системных файлов


Все системные файлы и драйверы в Windows XP и Windows Server 2003 защищены с помощью цифровой подписи. Это сделано, чтобы гарантировать их совместимость с операционной системой. Цифровая подпись Microsoft гарантирует, что файл, подписанный ею, тестировался на совместимость с Windows XP или Windows Server 2003 в лабораториях WHQL (Windows Hardware Quality Labs) и не был модифицирован или переписан во время установки дополнительного программного обеспечения.

Windows XP и Windows Server 2003 выполняют проверку наличия цифровой подписи для драйверов следующих типов устройств:

 клавиатуры

 сетевых адаптеров

 контроллеров жестких дисков

 принтеров

 модемов

 адаптеров SCSI

 мыши

 устройств чтения смарт-карт

 мультимедийных устройств

 видеоадаптеров

В зависимости от установленных опций настройки, Windows может либо игнорировать драйверы, не имеющие цифровой подписи, либо выводить предупреждение при обнаружении таких драйверов (эта опция используется по умолчанию), или же просто не допускать их установки. Чтобы установить опции защиты системных файлов в Windows XP и продуктах из семейства Windows Server 2003, проделайте следующее:

1. Вызовите опцию System на панели управления и в раскрывшемся диалоговом окне System Properties перейдите на вкладку Hardware (рис. 23.1).

2. Нажмите кнопку Driver Signing. На экране появится диалоговое окно Driver Signing Options (Опции подписанных драйверов), показанное на рис. 23.2. В этом окне имеется группа переключателей What action do you want Windows to take? (Какие действия в отношении неподписанных драйверов должна предпринимать Windows?), позволяющая установить следующие опции:

 если установлен переключатель Ignore - Install the software anyway and don't ask for my approval (Игнорировать — устанавливать программное обеспечение, не запрашивая подтверждения), то система даст возможность устанавливать любые драйверы и системные файлы, игнорируя наличие или отсутствие у них цифровой подписи. Как уже упоминалось, отсутствие у драйвера или системного файла цифровой подписи указывает на то, что его совместимость с Windows XP/Windows Server 2003 официально не подтверждена, и он, возможно, станет источником проблемы;




Рис. 23.1. Вкладка Hardware диалогового окна System Properties

 если установлен переключатель Warn - Prompt me each time to choose an action (Предупреждать — запрашивать подтверждения при каждой попытке установки неподписанного файла), то система будет выводить предупреждающие сообщения при попытке установить драйвер или системный файл, не имеющий цифровой подписи (рис. 23.3). Обратите внимание, что, несмотря на вывод предупреждения, драйвер, тем не менее, будет установлен. Стоит отметить, что возможны и такие ситуации, когда Microsoft еще не имеет программы сертификации для устройств, которые вы попытаетесь установить (рис. 23.4). В особенности это относится к новым типам устройств, появившимся на рынке относительно недавно и еще не получившим широкого распространения. Тем не менее, практически все такие устройства (портативные накопители, инфракрасные порты, цифровые фотокамеры, Bluetooth-адаптеры и т. д.) устанавливаются без проблем и прекрасно работают — проверено личной практикой;

 если установлен переключатель Block - Never install unsigned driver software (Блокировать — никогда не устанавливать драйверов, не имеющих цифровой подписи), то драйверы, не имеющие цифровой подписи, устанавливаться не будут.



Рис. 23.2. Диалоговое окно Driver Signing Options с установками по умолчанию

Пользователи, зарегистрировавшиеся в системе от имени администратора (Administrator) или являющиеся членами локальной группы Administrators, имеют возможность установить режим, при котором выбранная ими опция будет применяться как опция по умолчанию для всех пользователей, регистрирующихся на данном компьютере. Для этого следует установить флажок Make this action the system default (Применять выбранное действие по умолчанию) в группе Administrator option (Административные опции).



Рис. 23.3. Окно с предупреждением о том, что устанавливаемый драйвер не имеет цифровой подписи



Рис. 23.4. Диалоговое окно Driver Signature Notice


Защита системных файлов (Windows File Protection)


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

В Windows 2000 впервые за всю историю Windows была сделана попытка исправления этой ситуации. Разумеется, эта же функциональная возможность присутствует и в Windows ХР, а также в продуктах из семейства Windows Server 2003. Функция защиты системных файлов Windows (Windows File Protection, WFP) включает в свой состав следующие два компонента:

 сервис защиты системных файлов (Windows File Protection service);

 утилиту командной строки System File Checker (Sfc.exe).

Сервис Windows File Protection (WFP) работает по принципу определения цифровых подписей защищенных системных файлов (в их число входят файлы с расширениями sys, dll, ocx, ttf, fon и ехе), не позволяя произвольно модифицировать и замещать эти файлы. Сервис Windows File Protection работает в фоновом режиме и защищает все системные файлы, установленные программой Setup при инсталляции операционной системы. Выявив попытку изменения или перемещения защищенного файла, WFP проверяет измененный файл на наличие у него цифровой подписи. В случаях, когда версия, предназначенная на замену, не является корректной, Windows File Protection замещает этот файл резервной копией из папки %SystemRoot% \system32\dllcache и регистрирует попытку замещения файла в журнале системных событий.

Папка %SystemRoot%\System32\Dllcache может быть достаточно объемной и занимать до 300 Мбайт дискового пространства. По этой причине некоторые пользователи, в целях освобождения дополнительного дискового пространства, удаляют эту папку вместе со всем ее содержимым. Если дополнительный объем дискового пространства для вас актуален, вы тоже можете поступить таким образом. Однако при этом следует иметь в виду, что если сервис WFP не сможет обнаружить надлежащей версии файла в папке %SystemRoot%\system32\dllcache, то вам будет предложено вставить дистрибутивный компакт-диск в устройство CD-ROM или указать путь к каталогу, из которого такая версия может быть скопирована.

По умолчанию функция WFP всегда активизирована и позволяет выполнять замену системных файлов только в случае установки следующих видов программного обеспечения:

 сервисных пакетов Windows 2000/XP и Windows Server 2003 (с использованием программы Update.exe);

 дистрибутивных пакетов типа Hotfix (с использованием Hotfix.exe);

 обновлений версии операционной системы (с помощью Winnt32.exe);

 программного обеспечения с сайта Windows Update.



Администрирование реестра


Непосредственное редактирование реестра, даже в тех случаях, когда оно необходимо, при условии неумелого выполнения может привести к большим неприятностям. Поэтому, если вы чувствуете себя неуверенно или просто не можете позволить себе затратить значительное время для проведения восстановительных работ, не ставьте смелых экспериментов над реестром своей операционной системы (будь то Windows NT 4.0/Windows 2000, Windows XP или Windows Server 2003). Вполне возможно, что единственная ошибка приведет к необходимости переустановки операционной системы.

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



Хранение данных реестра


В Windows NT/2000/XP и Windows Server 2003 элементы реестра хранятся в виде атомарной структуры. Реестр подразделяется на составные части, которые разработчики этой операционной системы назвали ульями (hives) по аналогии с ячеистой структурой пчелиного улья. Улей представляет собой дискретную совокупность ключей, вложенных ключей и параметров, берущую начало в вершине иерархии реестра. Отличие ульев от других групп ключей состоит в том, что они являются постоянными компонентами реестра. Ульи не создаются динамически при загрузке операционной системы и не удаляются при ее остановке. Таким образом, ключ HKEY_LOCAL_MACHiNE\Hardware, который строится динамически распознавателем аппаратных средств при запуске операционной системы, ульем не является.

Данные ульев реестра хранятся в файлах, которые находятся в каталогах %SystemRoot%\system32\Config и %SystemRoot'%\Profiles\%Username% (Windows NT 4.0) и %SystemRoot%\system32\Config, и %SystemDrive%\ Documents and Settings\%Username% (Windows 2000, Windows XP и Windows Server 2003).

Каждый улей реестра ассоциирован с набором стандартных файлов. В табл. 24.3 перечислены стандартные ульи реестра Windows NT/2000/XP и Windows Server 2003 и поддерживающие их файлы.

Таблица 24.3. Стандартные файлы, обеспечивающие поддержку ульев реестра Windows NT/2000/XP и Windows Server 2003

Ветвь реестра

Имена файлов

НКЕ Y_LOCAL_MACHINE\SAM

Sam, Sam. log, Sam.sav*

HKEY_LOCAL_MACHINE\Security

Security, Security.log, Security. sav*

HKEY_LOCAL_MACHINE\Software

Software, Software.log, Software. sav

HKEY_LOCAL_MACHINE\System

System, System.alt**, System.log, System. sav

HKEY_CURRENT_CONFIG

System, System.alt**, System.log, System. sav

HKEY_USERS\.DEFAULT

Default, Default.log, Default.sav

(Файлы, не ассоциированные ни с одним ключом)

Userdiff, Userdiff.log, Userdifr***, Userdifr.log***

HKEY_CURRENT_USER

Ntuser.dat, Ntuser.dat.log

* Файлы, появляющиеся в системе лишь при определенных обстоятельствах.


 ** Файлы, исключенные из Windows XP и Windows Server 2003.

 *** Файлы, присутствующие только в Windows XP.

Как видно из приведенной выше таблицы, некоторые из файлов реестра в Windows XP и Windows Server 2003 больше не используются. Это является следствием усовершенствований, внесенных в их реестр.

Все файлы ульев реестра, за исключением HKEY_CURRENT_USER, находятся в подкаталоге %SystemRoot%\system32\config.

Поддержку улья HKEY_CURRENT_USER выполняют файлы Ntuser.dat и Ntuser.dat.log. В файлах Ntuser.dat хранятся пользовательские профили; файл Ntuser.dat.log отслеживает изменения, которые вносились в файл Ntuser.dat. В Windows NT 4.0 (а также в системах Windows 2000/XP и Windows Server 2003, установленных как обновление версий Windows NT 4.0) эти файлы располагаются во всех подкаталогах каталога %SystemRoot%\Profiles (за исключением подкаталога \Аll Users). В Windows 2000/XP и Windows Server 2003 эти файлы располагаются в каталогах %SystemRoot%\Documents and Settings\ % Username%.

Файлы Ntuser и Userdiff были впервые введены в Windows NT 4.0:

 файл Ntuser.dat, в котором хранится пользовательский профиль, заменил собой файлы usernamejcet и admiruco: из предыдущих версий Windows NT;

 файл Ntuser.dat из каталога %SystemRoot%\Profiles\DefaultUser заменил собой файл Userdef из предыдущих версий Windows NT. Этот профиль используется для построения улья HKEY_CURRENT_USER, когда новый пользователь впервые регистрируется в системе;

 файлы UserdifF, которые находятся только в каталоге %SystemRoot% \system32\config, не ассоциируются ни с одним ульем. Они служат для обновления существующих профилей пользователей, использовавшихся в предыдущих версиях Windows NT, таким образом, чтобы эти профили могли применяться в Windows NT 4.0 и последующих версиях (Windows 2000, Windows XP и Windows Server 2003).

С ульями ассоциируются файлы четырех типов. Все эти типы файлов (с соответствующими расширениями имен файлов) перечислены в табл. 24.4.

Таблица 24.4. Типы файлов, ассоциированных с ульями реестра Windows NT4.0Windows 2000/Windows XP/Windows Server 2003



Тип файла

Описание

Без расширения имени файла

Содержит копию улья

ALT*

Содержит резервную копию жизненно важного улья HKEY LOCAL MACHlNE\System. Только ключ System имеет соответствующий файл с расширением alt. Файлы ульев с таким расширением существуют только в Windows NT/2000. В Windows XP и Windows Server 2003 они больше не используются вследствие того, что в этой операционной системе для хранения и доступа к реестру применяются усовершенствованные алгоритмы

LOG

Содержит журнал транзакций, в котором регистрируются все изменения, внесенные в ключи и значимые элементы улья

SAV

Содержит копии файлов улья в том виде, который они имели на момент завершения текстовой фазы процесса установки. Файлы с расширением sav появляются для ключей Software, System, SAM, Security И Default.

Подобно Windows NT/2000/XP, Windows Server 2003 выполняет резервное копирование содержимого ульев в процессе инсталляции. Процедура инсталляции состоит из двух стадий: стадии текстового режима и стадии графического режима. Когда установка в текстовом режиме завершается, выполняется копирование ульев в файлы с расширением sav. Это делается для того, чтобы защитить ульи от ошибок, которые могут произойти в случае сбоя на графической стадии установки. Если процедура установки даст сбой на графической стадии, то после перезагрузки компьютера будет производиться повтор только графической стадии установки. SAV-файлы используются для перестройки ульев реестра

*Файлы, исключенные изWindows XP иWindows Server 2003


Интерфейс программы Regedit


Окно редактора реестра Regedit.exe состоит из четырех основных областей (рис. 24.3).

 Строка меню. В этой строке содержатся основные пункты меню: File, Edit, View, Favorites (этот пункт меню впервые был введен в Windows 2000) и Help.

 Левая панель (левое подокно). Отображает иерархию реестра, организованную в виде ключей (в литературе они часто обозначаются термином "разделы") и вложенных ключей (другие часто встречающиеся термины — "подключи" или "подразделы").

 Правая панель (правое подокно). Показывает текущие параметры выбранного ключа реестра, известные также как значимые элементы (value entires). Каждый параметр реестра характеризуется именем, отображаемым в столбце Name правой панели, типом данных, отображаемым в столбце Туре (на тип данных указывает и небольшой значок, расположенный чуть левее имени), и значением, отображаемым в столбце Data.

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


Рис. 24.3. Окно редактора реестра Regedit.exe с обозначением основных областей

В окне редактора реестра Registry Editor отображаются ключи только верхнего уровня иерархии реестра, ответвляющиеся от значка My Computer. Это — имена корневых ключей, базовая информация о которых была приведена в начале этой главы.

Если выполнить щелчок мышью, указав курсором на значок [+], расположенный левее значка любой из папок, то развернется соответствующий ключ, в котором отобразится иерархия содержащихся в его составе вложенных ключей. Эта операция разворачивает дерево ключа реестра до следующего уровня вложенности и во многом напоминает аналогичную операцию раскрытия папок и вложенных папок в Explorer.

Если в составе вложенных ключей имеются другие вложенные ключи, то слева от них тоже будут находиться значки [+], которые можно в свою очередь развернуть для просмотра следующего уровня иерархии. Этот послойный метод организации реестра известен под названием вложения (nesting) и допускает множество уровней.


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

В табл. 24.5 приведен список клавиш, используемых для просмотра реестра с помощью Regedit.exe

Таблица 24.5. Клавиши, используемые в Registry Editor

Клавиша

Действие

<+>

Разворачивает выбранный ключ на один уровень, показывая вложенные подключи

<- >

Сворачивает выбранный ключ на один уровень

вверх

Перемещает вверх к следующему ключу

вниз

Перемещает вниз к следующему ключу

<- >>

Разворачивает выделенный ключ на один уровень, показывая его подключи; если подключен нет, то перемещает вниз к следующему ключу

<<->

Сворачивает выделенный ключ, если он был развернут; в противном случае перемещает вверх к следующему ключу

<Таb>

Перемещает в другое подокно окна Registry Editor

В правой панели окна Registry Editor располагаются параметры реестра, каждый из которых характеризуется именем, типом данных, и собственно данными.

Каждый параметр реестра характеризуется именем. Многие параметры, предоставляемые Microsoft, используют имя Default (вы убедитесь в этом, когда начнете интенсивно работать с Registry Editor). Имена параметров располагаются в столбце Name правой панели окна Registry Editor. Эти имена присваиваются значимым элементам разработчиками приложений и физических устройств.

Типы данных, характеризующие параметры реестра, отображаются в столбце Туре.

Утилита Regedit.exe для удобства применяет также специальные значки, отображаемые чуть левее имен параметров и позволяющие быстро отличать двоичные данные от текстовых. Краткое описание значков, отображаемых в окне редактора реестра Regedit, приведено в табл. 24.6.

Таблица 24.6. Значки, соответствующие типам данных в окне Registry Editor



Тип данных

Описание



Означает, что данные имеют двоичный формат (типы данных REG_BINARY И REG_DWORD)



Означает текст и символы, которые вы можете прочесть, например, "On The Microsoft Network" (строковые типы данных - REG_EXPAND_SZ, REG_MULTI_SZ И REG_SZ)

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

Последующие разделы содержат инструкции по использованию этих возможностей, а также указания по внесению модификаций в реестр.


Использование редактора реестра


Большинство операционных систем Windows имеет в своем составе утилиты, предназначенные для просмотра и редактирования реестра, так называемые редакторы реестра. В Windows NT/2000 существует два таких редактора. Традиционная программа редактирования реестра Windows NT носит название Regedt32.exe. Эта программа наследуется от предыдущих версий Windows NT и позволяет редактировать реестр Windows NT/2000 с помощью методов, которые не поддерживаются в Windows 9x/ME. Более новая программа, Regedit.exe, была первоначально написана для Windows 95. Она обладает многими из возможностей Regedt32.exe и снабжена интерфейсом Windows Explorer. Версия Regedit.exe, которая имеется в составе Windows NT/2000, почти полностью идентична аналогичному приложению, имеющемуся в составе Windows 9x/ME. По сравнению с Windows NT/2000, Windows XP и продукты из семейства Windows Server 2003 и в этой области предлагают усовершенствование. Теперь все задачи по редактированию реестра могут выполняться только с помощью редактора реестра Regedit.exe, который в дополнение к своим традиционным возможностям предоставляет и все функции, которые ранее были доступны только через редактор Regedt32.exe (установка разрешений на доступ к ключам реестра, импорт и экспорт поддеревьев реестра и др.).

Стоит, правда, отметить и то, что Regedit.exe в Windows XP и Windows Server 2003 не реализует одной, но очень важной функции, которая была присуща Regedt.32.exe. Речь идет о возможности использования редактора реестра в режиме "только для чтения". Этот режим позволяет защитить реестр от случайных непреднамеренных изменений в процессе его просмотра и знакомства с его структурой. Именно наличие команды Read Only Mode в меню Options и делало Regedt32.exe предпочтительным средством, с помощью которого новички могли безбоязненно начинать знакомство со структурой реестра.



Команды меню Edit


Команда Modify (Изменить) используется для изменения данных, содержащихся в составе параметров реестра. Эта опция будет доступна только в том случае, если выбрать один из параметров, перечисленных в правой панели окна Registry Editor. Команда Modify Binary Data (Изменить двоичные данные) позволяет редактировать любые данные (в том числе и данные других форматов) в окне двоичного редактора. Эта команда также будет доступна только в том случае, если выбран один из параметров реестра, перечисленных в правой панели окна редактора реестра.

Команда New (Создать) позволяет добавлять в реестр новые ключи и параметры строковых типов, двоичные параметры и параметры типа REG_DWORD (рис. 24.5). Выбирать тип параметра можно в подменю New в контекстном меню, раскрывающемся по нажатию правой кнопки мыши на выбранном ключе.


Рис. 24.5. Команда New позволяет добавлять в реестр новые ключи, а также строковые и двоичные параметры

Опции Rename (Переименовать) и Delete (Удалить) меню Edit позволяют, соответственно, переименовать или удалить значимый элемент реестра. Удалить значимый элемент можно и другим способом: выделите нужный элемент, выполнив на нем щелчок мышью, а затем нажмите клавишу <Del>. Аналогичным образом, для быстрого переименования значимого элемента можно указать на него курсором, выполнить щелчок правой кнопкой мыши, выбрать из контекстного меню команду Rename и ввести новое имя.

Удаление параметров и ключей реестра с помощью утилиты Regedit — это необратимая операция. Regedit не имеет команды Undo, поэтому при удалении параметров и ключей следует соблюдать осторожность.

Команда Copy Key Name (Копировать имя раздела) позволяет скопировать в буфер обмена имя ключа, выделенного на текущий момент. Впоследствии скопированное имя можно вставить в любой текст с помощью команды Paste (Вставить), имеющейся в любом текстовом редакторе. Поскольку реестр представляет собой сложную иерархическую базу данных, пути к нужному элементу могут оказаться очень длинными и сложными для запоминания. Поэтому многие по достоинству оценили удобство этой функции. Команду Copy Key Name очень удобно использовать в сочетании с командами Find и Find Next.


Команды Find (Найти) и Find Next ( Найти далее) используются для поиска конкретных элементов или данных (включая строки и слова) в реестре. Можно выполнять поиск ключей, параметров, данных или любой их комбинации. Искомые значения могут быть как текстовыми, так и числовыми. Наконец, особого внимания заслуживает команда Permissions (Разрешения), которая позволяет управлять правами доступа к ключам реестра и осуществлять аудит действий в отношении ключей реестра. Здесь необходимо упомянуть, что в Windows NT/2000 эти возможности были доступны только в Regedt32.exe, где для их установки требовалось использовать опции меню Security. В Windows XP и Windows Server 2003 все эти функциональные возможности были интегрированы в состав редактора реестра Regedit.exe. Права доступа к ключам реестра можно назначать вне зависимости от типа файловой системы на разделе, где содержатся файлы операционной системы.

Изменение прав доступа к ключу реестра может иметь серьезные последствия. Например, если вы установите права доступа типа No Access на ключ, необходимый для конфигурирования сети с помощью опции Network Connections из Control Panel, то это приложение работать не будет. Права полного доступа (Full Control) к ключам реестра должны иметь, как минимум, члены группы Administrators и сама операционная система (Operating System). Такая установка прав доступа позволяет гарантировать возможность восстановления ключа реестра администратором при запуске системы.

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

Для того чтобы получить возможность выполнить эти действия, необходимо зарегистрироваться в системе от имени пользователя, имеющего административные права.



В Regedit. exe команды из меню Permissions по назначению ключам реестра прав владельца и прав доступа работают по такому же принципу, как и аналогичные команды Windows Explorer по установке прав доступа к файлам и каталогам на разделах NTFS. Чтобы установить права доступа к конкретному ключу реестра, проделайте следующее:

1. Перед внесением изменений выполните резервное копирование тех ключей реестра, на которые будут устанавливаться права доступа.

2. Выделите ключ, на который собираетесь установить права доступа. После этого выберите команду Permissions меню Edit.

3. В открывшемся диалоговом окне (рис. 24.6) выберите имя нужного пользователя или группы в поле Group or user names (Группы или пользователи) и установите для них нужный тип прав доступа в поле Permissions for <group or user name>. Типы прав доступа, которые вы сможете установить, перечислены в табл. 24.7.

Таблица 24.7. Типы прав доступа к ключам реестра

Тип доступа

Описание

Read

Позволяет пользователям, внесенным в список Permissions, просматривать содержимое ключа реестра, не позволяя сохранять изменения

Full Control

Позволяет пользователям, внесенным в список Permissions, получать доступ к ключу, редактировать его содержимое и изменять к нему уровень прав доступа

Special Permissions

Предоставляет пользователям, внесенным в список Permissions, индивидуально назначаемые комбинации прав доступа и редактирования к избранному ключу. Подробное описание типов и комбинаций Special Permissions можно найти далее в этой главе



Рис. 24.6. Диалоговое окно, позволяющее задать права доступа к ключам реестра

4. Чтобы установить аудит на доступ к реестру и задать комбинацию прав доступа типа Special Permissions, нажмите кнопку Advanced (Дополнительно). Раскроется диалоговое окно Advanced Security Settings for <Registry Key Name>, где <Registry Key Name> — имя ключа, для которого требуется задать расширенные права доступа (рис. 24.7). Выберите имя пользователя или группы из списка Permission entries и нажмите кнопку Edit. Раскроется следующее окно (рис. 24.8), в котором вам будут предоставлены опции по расширенному редактированию прав доступа к ключам реестра. Типы прав доступа, которые вы сможете установить в этом окне, перечислены в табл. 24.8.



Таблица 24.8. Флажки диалогового окна Permission entry for

Флажок

Назначаемые права

Query Value

Дает право чтения значимых элементов из ключа реестра

Set Value

Дает право установить значимый элемент в ключе реестра

Create Subkey

Дает право создавать подключи в выбранном ключе реестра

Enumerate Subkey

Дает право идентифицировать подключи выбранного ключа реестра

Notify

Дает право установить аудит на ключи реестра

Create Link

Дает право создавать символические ссылки в конкретном подключе реестра

Delete

Дает право удаления выделенного ключа

Write DAC

Дает право получать доступ к ключу и создавать/модифицировать для него список контроля доступа (Access Control List, ACL)

Write Owner

Дает право присвоения прав владельца данного ключа

Read Control

Дает право просматривать параметры безопасности, установленные для данного ключа



Рис. 24.7. Окно Advanced Security Settings for Winlogon



Рис. 24.8. Окно, предоставляющее расширенные опции по редактированию прав доступа к ключам реестра

Как системный администратор, вы можете присвоить себе права владельца на ключ реестра и ограничить доступ к этому ключу. Заменить права владельца можно на вкладке Owner, а установить аудит — на вкладке Auditing.

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

Аудит действий в отношении реестра

Чтобы установить аудит на действия в отношении реестра, необходимо выполнить следующие действия:

1. Активизировать в системе аудит и задать политику аудита на все события, которые, с вашей точки зрения, подлежат аудиту.

2. Указать пользователей и группы, за действиями которых в отношении выбранных ключей реестра требуется установить аудит. Воспользуйтесь для этого вкладкой Auditing (Аудит) окна, показанного на рис. 24.7.



3. Результаты аудита можно просматривать в системном журнале Security с помощью оснастки Event Viewer.

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

Как минимум, при установке аудита необходимо выбрать опцию Failure (Отказ) для событий типа File and Object Access. Если выбрать опцию Success (Успех), то в системном журнале может появиться большое количество записей, не имеющих большой практической значимости.


Команды меню File


Команда Import (Импорт) позволяет импортировать в реестр предварительно экспортированные REG-файлы и файлы ульев реестра.

Команда Export (Экспорт) позволяет сохранить весь реестр или его часть в виде REG-файла или файла другого типа, например, файла улья реестра или текстового файла формата ASCII.

Чтобы экспортировать ветвь реестра, выполните следующие действия:

1. Выделите ветвь реестра, затем выберите в меню File (Файл) команду Export.

2. В поле File name открывшегося диалогового окна Export Registry File (рис. 24.4) введите имя файла. По умолчанию файлу будет присвоено расширение reg. Чтобы сохранить экспортируемый файл в другом формате, выберите нужную опцию из списка Save as type, расположенного непосредственно под полем File name. Обратите внимание, что, несмотря на все внешнее сходство, утилиты Regedit.exe, поставляемые в составе Windows 9x, Windows NT 4.0, Windows 2000, Windows XP и Windows Server 2003, представляют собой разные версии этого приложения. Поэтому версия Regedit.exe из Windows XP или Windows Server 2003 позволяет сохранять экспортированные файлы реестра как в формате Windows XP/ Windows Server 2003 (для этой цели служит опция Registration Files (*.reg)), так и в формате файлов реестра Windows 9x/NT 4 (для этой цели служит опция Win9x/NT 4 Registration Files (*.reg)).


Рис. 24.4. Диалоговое окно Export Registry File

3. Если требуется сохранить часть реестра, выбирайте опцию сохранения только выделенной ветви реестра. Для этого установите переключатель Selected branch из группы Export range. Однако, если вы часто модифицируете реестр, то экспорт всего реестра целиком — неплохая идея. Это даст вам дополнительные гарантии восстановления в случае ошибки.

4. Нажмите кнопку Save.

Сохраненный файл можно просмотреть в текстовом редакторе, чтобы убедиться в правильности сохранения. Экспортированные файлы реестра содержат текст ASCII без каких-либо символов форматирования.

Нужно помнить, что файлы с расширением гед по умолчанию ассоциированы с приложением Regedit.exe. По умолчанию над такими файлами выполняется операция merge (слияние), которая импортирует содержимое данного файла в реестр. Чтобы избежать случайного импорта в реестр экспортированного файла, будьте внимательны и осторожны при обращении с такого рода файлами.


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

1. Предварительно создайте резервную копию экспортированного файла, который требуется редактировать. Если при редактировании будет допущена ошибка, которая приведет к возникновению проблем, можно будет импортировать в реестр резервную копию этого REG-файла.

2. Если вы часто экспериментируете с реестрами различных операционных систем, то экспортированные файлы реестров каждой из этих операционных систем рекомендуется держать отдельно друг от друга, в различных каталогах, специально выделенных для этой цели. Это поможет избежать случайного импорта в систему несовместимого файла реестра.

Команды Load Hive (Загрузить улей) и Unload Hive (Выгрузить улей) действуют по аналогии с одноименными командами, существовавшими в редакторе реестра Regedt32.exe. Они позволяют загрузить в реестр ранее сохраненный файл улья или выгрузить ранее загруженный файл улья соответственно. Следует отметить, что эти команды меню File действуют только применительно к ключам HKEY_USERS И HKEY_LOCAL_MACHINE и будут эфективны только в том случае, когда выбран один из этих ключей. Во всех остальных случаях эти команды будут недоступны. Улей, будучи загружен в реестр, станет вложенным ключом одного из упомянутых выше ключей.

Команда Connect Network Registry (Подключить сетевой реестр) позволяет выполнить редактирование реестра на другом компьютере, работающем в составе сети.

Чтобы отключиться от реестра, расположенного на удаленном компьютере, используется команда Disconnect Network Registry (Отключить сетевой реестр). Если вы на текущий момент не подключены к сетевому реестру, эта опция будет недоступна.

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

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

Команда Exit закрывает окно Regedit и завершает сеанс работы с этой программой.


Команды меню View


Команда Status Bar (Строка состояния) меню View (Вид) позволяет при желании отключить строку состояния. Поскольку строка состояния помогает быстрее ориентироваться в реестре, отображая путь к текущему ключу, ее рекомендуется постоянно держать включенной.

Опция Split (Разделить) перемещает курсор мыши на разделитель левой и правой частей окна Registry Editor, после чего остается только переместить мышь влево или вправо, чтобы найти удобную позицию для разделителя, и выполнить щелчок левой кнопкой мыши.

Команда Display Binary Data (Вывод двоичных данных) из меню View, впервые появившаяся в Windows XP, становится доступной только после того, как вы выберете один из параметров реестра, отображаемых в правой панели окна Registry Editor. Эта команда позволяет вам просматривать значение параметра, используя один из следующих трех форматов: Byte, Word или Dword (рис. 24.9). Обратите внимание, что эта команда не позволяет вам выполнять редактирование данных (если вам требуется выполнить именно эту операцию, следует выбрать команду Modify Binary Data из меню Edit).

В меню View имеется еще одна команда — Refresh (Обновить). При внесении изменений в реестр не все они могут отображаться в окне редактора реестра немедленно после внесения модификации. Обновить окно Registry Editor можно с помощью команды Refresh или нажатием клавиши <F5>.

Как правило, в Windows NT 4.0 многие изменения (в том числе и внесенные путем редактирования реестра) входят в силу только после перезагрузки системы. В Windows 2000 впервые (для операционных систем Windows NT) была введена полноценная поддержка Plug and Play, которая была расширена и усе-

вершенствована в Windows XP и Windows Server 2003. Поэтому перезагрузок потребуется меньше. Тем не менее, ряд модификаций все же входят в силу только после перезагрузки операционной системы.


Рис. 24.9. Окно Binary Data позволяет просматривать значение выбранного параметра реестра в одном из трех возможных форматов — Byte, Word или Dword



Меню Favorites


Одним из полезных новшеств, впервые появившихся в Windows 2000, является то, что пункт меню Favorites (Избранное) присутствует теперь повсюду, и редактор реестра Regedit.exe — не исключение (рис. 24.10).

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

Чтобы добавить ключ реестра в список Favorites, проделайте следующее:

1. Выделите ключ реестра, который требуется добавить в список Favorites.

2. В меню Favorites выберите команду Add to Favorites (Добавить в избранное).

3. В раскрывшемся диалоговом окне Add to Favorites (рис. 24.11) согласитесь с именем ключа, предложенным по умолчанию, или введите новое имя в поле Favorite name. Нажмите кнопку ОК, и ключ появится в списке Favorites.

Теперь вы в любой момент сможете быстро перейти к нужному ключу, выбрав его имя из списка Favorites. Удалить ключ реестра из списка Favorites очень просто — для этого достаточно выбрать в меню Favorites команду Remove Favorite (Удалить из избранного), а затем в раскрывшемся диалоговом окне выделить ключ, который требуется удалить из списка Favorites, и нажать кнопку ОК.


Рис. 24.10. С выходом Windows 2000 в Regedit появился пункт меню Favorites


Рис. 24.11. Диалоговое окно Add to Favorites



Назначение реестра


Реестр пришел на смену конфигурационным файлам (INI-файлам) и призван был снять неудобства и ограничения, связанные с их использованием. В виде, более или менее напоминающем его нынешнюю структуру, реестр появился в Windows NT 3.5 (тогда он имел 4 корневых ключа: HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT и HKEY_USERS). Новый компонент операционной системы был предназначен для того, чтобы заменить собой многочисленные инициализационные и установочные файлы, разбросанные по различным каталогам на жестком диске и сетевом сервере. Эти файлы требовались для обеспечения корректной работы операционной системы, приложений и аппаратных устройств, но управление ими было задачей сложной, трудоемкой и неудобной. Реестр как централизованная база данных представляет собой источник конфигурационной информации, где все параметры сведены воедино, что обеспечивает возможность эффективного управления операционной системой.

Перечисление компонентов Windows Server 2003, использующих реестр, и краткое описание их взаимодействия с этой базой данных приведено ниже.

 Программы установки (Setup). Каждый раз при запуске программы Setup или других установочных программ (для аппаратных и программных средств) происходит добавление в реестр новых конфигурационных данных. Начиная свою работу, все грамотно разработанные программы уста-новки считывают информацию реестра, чтобы определить, присутствуют ли в системе компоненты, обязательные для успешного завершения установки. Наконец, централизованный реестр позволяет приложениям совместно использовать конфигурационную информацию и предоставляет им больше возможностей взаимодействия между собой. Чтобы приложение могло получить статус "Designed for Windows", оно должно активно и правильно использовать реестр, а также содержать утилиту, позволяющую корректно выполнить удаление этого приложения (uninstall utility), не удаляя компонентов, которые могут использоваться другими программами (.dll, .ocx и т. д.). Эта утилита использует информацию, хранящуюся в реестре.


 Распознаватель (Recognizer). Каждый раз при запуске компьютера распознаватель аппаратных средств (hardware recognizer) помещает в реестр список обнаруженных им устройств. На компьютерах с процессорами Intel распознавание аппаратных средств осуществляется программой Ntdetect.com и ядром операционной системы (Ntoskrnl.exe).

 Ядро системы (Ntoskrnl.exe). При старте системы ядро извлекает из реестра сведения о загружаемых драйверах устройств и порядке их загрузки. Кроме того, программа Ntoskrnl.exe передает в реестр информацию о себе (примером такой информации может служить, например, номер версии).

 Драйверы устройств. Драйверы устройств обмениваются с реестром параметрами загрузки и конфигурационными данными. Эти данные аналогичны строкам DEVICE=, которые можно найти в файле config.sys для запуска компьютера под управлением MS-DOS. Драйвер устройства должен сообщить об используемых им системных ресурсах, включая аппаратные прерывания и каналы DMA, чтобы система могла включить эти данные в реестр. Приложения и драйверы устройств могут считывать эту информацию реестра, предоставляя пользователям интеллектуальные программы инсталляции и конфигурирования.

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

 Пользовательские профили (user profiles). Windows NT/2000/XP, а также продукты из семейства Windows Server 2003 обеспечивают возможность создания множества пользовательских профилей. Вся информация, относящаяся к конкретному пользовательскому имени и ассоциированным с ним правам, хранится в реестре. Более подробная информация о пользовательских профилях будет приведена далее в этой главе, здесь же отметим, что пользовательский профиль определяет индивидуальные параметры настройки дисплея, параметры сетевых соединений, принтеры и многое другое. Пользовательские профили бывают следующих типов: локальные (local user profile), создаваемые автоматически при первой регистрации пользователя на локальном компьютере, "блуждающие" или перемещаемые (roaming user profile), создаваемые администратором и хранящиеся на сервере, и обязательные (mandatory user profile) — "блуждающие" профили, обязательные для применения. Информация о пользовательских профилях также хранится в реестре.



Обязательные пользовательские профили (mandatory user profiles) поддерживаются в Windows XP и Windows Server 2003 только в целях обеспечения обратной совместимости с существующими доменами Windows NT 4.0. Если же в вашей сети уже применяются домены на базе Windows 2000 или Windows Server 2003, и необходимость обеспечения обратной совместимости отсутствует, то вместо обязательных пользовательских профилей рекомендуется использовать групповую политику (Group Policy).

 Аппаратные профили (hardware profiles). Реестр, в отличие от INI-файлов, позволяет хранить множественные аппаратные конфигурации. Так, например, можно создать профили для dock-станций (что актуально для пользователей портативных компьютеров), а также профили для съемных устройств. Аппаратный профиль представляет собой набор инструкций, с помощью которого можно указать операционной системе, драйверы каких устройств должны загружаться при запуске компьютера. В процессе установки системы создается стандартный аппаратный профиль, который содержит информацию обо всех аппаратных средствах, обнаруженных на компьютере на момент инсталляции.


Некоторые методы решения проблем путем редактирования реестра


Теперь, после рассмотрения общих концепций реестра и его усовершенствований, введенных с выходом Windows XP и Windows Server 2003, средств и методов его редактирования, резервного копирования и восстановления, рассмотрим пару примеров настройки и конфигурирования Windows, а также решения проблем и устранения неполадок с помощью редактирования реестра. Цель этих примеров — продемонстрировать на практике методы модификации системного реестра, рассмотренные в предыдущих разделах данной главы.

Стоит также отметить, что некоторые из приведенных методов специфичны для Windows Server 2003, в то время как некоторые другие применимы также и к Windows NT/2000.



Удаление недействительных записей из списка установленных программ


Утилита Add/Remove Programs на панели управления предназначена для установки, удаления или модификации приложений, установленных в Windows. В Windows XP и Windows Server 2003 эта программа-мастер обладает существенно улучшенным и интуитивно понятным пользовательским интерфейсом (рис. 24.12).


Рис. 24.12.Окно Add or Remove Programs

Однако, несмотря на все улучшения, в работе этого мастера могут возникать неполадки, вызванные некорректно или не полностью удаленными приложениями. В частности, если одно из приложений удалено некорректно, то ссылка на него по-прежнему будет фигурировать в списке Currently installed programs. При этом любая попытка воспользоваться мастером установки и удаления приложений (путем нажатия на кнопку Change/Remove) будет приводить к появлению сообщений об ошибке, информирующих пользователя об отсутствии файлов, требующихся для корректного удаления приложения и невозможности завершить процедуру удаления. Несуществующие приложения по-прежнему останутся в списке. Возникновение данной проблемы возможно как в Windows 9x/ME, так и в Windows NT/2000/XP и Windows Server 2003.

Чтобы устранить эту проблему и удалить несуществующие приложения из списка установленных программ, проделайте следующее:

1. Запустите редактор реестра (Regedit.exe) и раскройте ключ HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\Windows\CurrentVersion\Uninstall.

2. В составе этого ключа найдите вложенный ключ, соответствующий приложению, которое требуется удалить из списка установленных программ. Если наименование программы не следует с очевидностью из имени вложенного ключа, просмотрите содержимое всех вложенных ключей списка. В составе каждого из вложенных ключей имеется параметр DispiayName, значение которого представляет собой строки, отображаемые мастером установки и удаления программ.

3. Обнаружив ключ, в составе которого имеется параметр DispiayName, задающий имя приложения, которое должно быть удалено из списка установленных программ, удалите этот ключ вместе со всем его содержимым.

Никогда не удаляйте ключ Uninstall целиком!

4. Закройте редактор реестра и убедитесь в том, что мастер установки и удаления программ больше не отображает несуществующего приложения.

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



Принудительный показ "Синего экрана смерти"


Сразу же следует сказать, что в Windows XP и Windows Server 2003 появление "Синего экрана смерти" (Blue Screen of Death, BSOD) стало гораздо более редким событием, нежели в Windows NT/2000. Как правило, теперь Windows корректно обрабатывает многие ситуации, которые в предыдущих версиях могли вызвать такого рода сбой.

Однако, если вы хотите в ознакомительных целях посмотреть, что же представляет собой пресловутый "Синий экран" (который более подробно будет рассмотрен в следующей главе), вы можете это сделать путем несложного редактирования реестра. Данный совет применим как к Windows 2000/XP, так и к операционным системам из семейства Windows Server 2003. Дело в том, что все перечисленные операционные системы имеют возможность искусственной генерации ошибки ядра (сообщения STOP) с последующим созданием аварийного дампа памяти (Memory.dmp). Экран сообщения STOP, который при этом появится, будет содержать следующее сообщение:

*** STOP: 0x000000E2 (0x00000000,0x00000000,0x00000000,0x00000000)

 The end-user manually generated the crashdump.

По умолчанию эта функция блокирована. Для ее активизации следует открыть реестр, найти ключ HKEY_LOCAL_MACHINE \SYSTEM\CurrentcontrolSet\ Services\i8042prt\Parameters, добавить В его состав параметр CrashOnCtrlScroll(тип данных REG_DWORD) и установить его равным 1.

После перезагрузки вы сможете вручную создать аварийный дамп и посмотреть на "синий экран". Для этого нажмите правую клавишу <Ctrl> и, удерживая ее в этом состоянии, дважды нажмите клавишу <Scroll Lock>



Конфигурирование программы Backup путем редактирования реестра


Если вы регулярно выполняете резервное копирование вашей системы, то уже наверняка заметили, что встроенная программа Backup, имеющаяся в составе Windows 2000, Windows XP и Windows Server 2003, исключает из резервного копирования целый ряд файлов. Чтобы просмотреть список этих файлов, запустите программу Backup, затем выберите команду Options из меню Tools и перейдите на вкладку Exclude Files (Исключить файлы) (рис. 24.13).

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

Все файлы, которые по умолчанию исключаются из процедур резервного копирования и восстановления, перечислены под следующим ключом реестра: HKLM\SYSTEM\CurrentControlSet\Control\ BackupRestore\FilesNotToBackup (рис. 24.14).

Несмотря на то, что на вкладке Exclude Files окна Options программы Backup пользователю предоставляется возможность редактирования списка файлов, исключаемых из процессов резервного копирования и восстановления, внесенные изменения будут действовать только применительно к тому пользователю, от имени которого вы зарегистрировались в системе (т. е. они будут записаны в реестре под ключом HKEY_CURRENTJJSER).


Рис. 24.13. Вкладка Exclude Files окна Options встроенной программы Backup


Рис. 24.14. Содержимое ключа  HKLM\SYSTEM\CurrentControlSet\Control\ BackupRestore\FilesNotToBackup

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

Параметры, которые по умолчанию находятся в составе ключа FilesNotToBackup (все они имеют тип данных REG_MULTI_SZ), перечислены в табл. 24.9.

Таблица 24.9. Список параметров реестра ключа FilesNotToBackup

Параметр Значение
ASR error file*

%SystemRoot%\repair\asr.err

ASR log file*

%SystemRootf%\repair\asr.log

Catalog database*

%SystemRoot%\sysiem32\CatRoot2\ * /s

Client Side Cache

%SystemRoot%\csc\* /s

ComPlus

%SystemRoot/%\Registration\*.crrnlog /s

Digital Rights Management (DRM) folder*

%SystemDrive%\Documer\te and SettingsW/ l/sers\DRM\* /s

Internet Explorer

%UserProfile%\mdex.dai /s

Memory Page File

\Pagefile.sys

Microsoft Writer (Bootable state)*

%SystemRoot%\Registration\*.clb \ *. crmlog /s

Microsoft Writer (Service state)*

%SystemRoot%\system32\NtmsData\*

MS Distributed Transaction

%SystemRoot%\system32\DTCLog\MSDTC.LOG

Netlogon*

%SystemRoot%\netlogon.chg

NTDS**

%SystemRoot%\NTDS\*

NtFrs

%SystemRoot%\ntf rs\jet\* /s %SystemRoot%\debug\NtFrs*

%SystemRoot%\sysvol\domain \DO_NOT_REMOVE_NtFrs_Prelnstall_Directory\*/s

%SystemRoot%\sysvol\domain \NtFrs_PreExisting __ See_EventLog\* /s

%SystemRoot%\sysvol\staging\domain\NTFRS_*

Power Management

\hiberfil.sys

Registry Writer**

%SystemRoot%\system32\NtmsData\*

Task Scheduler**

%SystemRoot%\Jasks\sc hed Ig u . txt

Temporary Files

%TEMP%\* /s

VSS Default Provider*

\System Volume lnformation\*{3808876B-C176-4e48-B7AE-04046E6CC752} /s

VSS Service Alternate DB**

\System Volume lnformation\*.{7cc467ef-6865-4831-853f-2a4817fd1bca}ALT

VSS Service DB**

\System Volume lnformation\*.{7cc467ef-6865-4831-853f-2a4817fd1bca}DB

Winlogon debug**

%W//VD/R%\debug\*

<
* Параметры, новые для Windows XP.

** Параметры, новые для Windows Server 2003.

Еще более сложная ситуация возникает с ключами реестра, которые должны исключаться из процесса резервного копирования. Эти ключи даже не перечисляются на вкладке Exclude Files окна Options; следовательно, пользовательский интерфейс не предоставляет возможности их редактирования. Сам этот список хранится в реестре под ключом HKLM\SYSTEM\ CurrentContrоlSet\Control\BackupRestore\KeysNotToRestore (рис. 24.15).

Список параметров реестра, по умолчанию исключаемых из процесса резервного копирования в Windows Server 2003, приведен в табл. 24.10.

Таблица 24.10. Список параметров ключа HKLM\SYSTEM\Current ControlSet\Control\BackupRestore\KeysNotToRestore


Параметр

Значение

Active Directory Restore

CurrentControlSet\Services\NTDS\Restore In Progress \CurrentControlSet\Services\NTDS\Parameters \New Database QUID

ASR Information

CurrentControlSet\Control\ASR\

Fault Tolerance

Disk\

Installed Services

CurrentControlSet\Services\*

LDM Boot Information

CurrentControlSet\Services\dmio\boot info\

LDM Boot Information (dmboot)

CurrentControlSet\Services\dmboot\

Mount Manager

Мои nted Devices\

NtFrs

CurrentControlSet\Services\NtFrs\Parameters\Backup/Re store\Process at Startup\

Pending Rename Operations

CurrentControlSet\Control\Session Man-ager\PendingFileRenameOperations

Plug and Play

CurrentControlSet\Enum\CurrentControlSet \Control\CriticalDeviceDatabase\

Removable Storage Manager

CurrenlControlSet\Control\NTMS\lrnporlDatabase

Session Manager

CurrentControlSet\Control\Session

Windows Setup

Setup\SystemPartition




Рис. 24.15. Содержимое ключа реестра HKLM\SYSTEM\CurrentControlSet\Control \BackupRestore\KeysNotToRestore
Обратите внимание на то, что в составе ключа реестра HKLM\SYSTEM\ CurrentControlSet\Control\BackupRestore В Windows XP И Windows Server 2003 появился новый вложенный ключ — HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\BackupRestore\AsrKeysNotToRestore (рис. 24.16). Как видно из приведенной иллюстрации, этот ключ содержит параметр Plug & Play, указывающий на базу данных критических устройств. Редактировать этот параметр не следует, поскольку эта база данных содержит устройства, для которых программа Windows Setup должна произвести повторную энумерацию в ходе процесса ASR.


Рис. 24.16. Ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Control\BackupRestore\AsrKeysNotToRestore



Конфигурирование регистрации событий, связанных с квотированием диска


Большинство опытных пользователей и администраторов оценили новую весьма полезную возможность квотирования дискового пространства, появившуюся впервые в составе Windows 2000 и, безусловно, присутствующую в Windows XP и Windows Server 2003. События, связанные с квотированием дискового пространства, могут регистрироваться в системном журнале, и вкладка Quota (Квота) окна свойств диска NTFS предоставляет простейшие опции для конфигурирования режима регистрации этих событий (рис. 24.17).

По умолчанию регистрация событий, связанных с квотированием дискового пространства, происходит асинхронно (один раз в час). Если вы хотите, чтобы система регистрировала такие события немедленно после того, как пользователь превысит пороговое значение, раскройте редактор реестра, найдите ключ HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ Filesystem и создайте параметр NtfsQuotaNotifyRate (тип данных REG_DWORD). Задайте для этого параметра значение, соответствующее требуемой частоте регистрации событий квотирования в системном журнале (временной интервал в секундах).


Рис. 24.17. Вкладка Quota окна свойств раздела NTFS



Снижение вероятности инсталляции "троянских коней"


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

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run

 HKEY__LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunServices

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunOnce

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunServicesOnce

 HKEYJJSERS\DEFAULT\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run

 HKEY_CURRENT_USER\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run

 HKEY_CURRENT_USER\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunServices

 HKEY_CURRENT_USER\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunOnce

 HKEY_CURRENT_USER\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunServicesOnce

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunOnceEx

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

 HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths

 HKLM\Software\Microsoft\Windows\CurrentVersion\Controls Folder

 HKLM\Software\Microsoft\Windows\CurrentVersion\DeleteFiles

 HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer

 HKLM\Software\Microsoft\Windows\CurrentVersion\Extensions

 HKLM\Software\Microsoft\Windows\CurrentVersion\ExtShellViews

 HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings

 НКM\Software\Microsoft\Windows\CurrentVersion\ModuleUsage

 HKLM\Software\Microsoft\Windows\CurrentVersion\RenameFiles

 HKLM\Software\Microsoft\Windows\CurrentVersion\Setup


 HKLM\Software\Microsoft\Windows\CurrentVersion\SharedDLLs
 HKLM\Software\Microsoft\Windows\CurrentVersion\Shell Extensions
 HKLM\Software\Microsoft\Window-s\CurrentVersion\Uninstall
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\Compatibility
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\Drivers
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\drivers.desc
 HKLMXSoftware\Microsoft\Windows NT\CurrentVersion\Drivers32\0
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\Embedding
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\MCI
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\MCI Extensions
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\Ports
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList
 HKLM\Software\Microsoft\Windows NT\CurrentVersion\WOW
Разумеется, приведенные здесь советы и рекомендации не заменят собой ни антивирусного программного обеспечения, ни системы обнаружения атак. Однако они все же смогут обеспечить хотя бы минимальную защиту от неприятных "подарков" и рекомендуются в качестве дополнительных защитных мер.

Итак, чтобы минимизировать риск инсталляции "троянских коней", следует запретить этим программам доступ к реестру путем установки аудита на доступ к перечисленным ключам и редактирования прав доступа к ним. Общая рекомендация сводится к следующему: права типа Full Control к этим ключам должны иметь только пользователи из группы Administrators и встроенная учетная запись SYSTEM. В Windows XP и Windows Server 2003 эта задача выполняется с помощью редактора реестра Regedit.exe.


Редактирование реестра с целью защиты DNS-серверов от DoS-атак


Атаки типа "отказ в обслуживании" (Denial of Service, DoS-attacks) и особенно распределенные атаки (Distributed Denial of Service, DDoS) за последние несколько лет начали представлять собой одну из наиболее серьезных угроз безопасности сетей любого масштаба. При этом количество таких атак с каждым годом растет, и теперь уже практически никто не может считать себя полностью от них застрахованным. Подобно рекомендациям, рассмотренным в предыдущем разделе, советы, приведенные здесь, не дадут полной гарантии защиты от атак сервера DNS. Однако они послужат хорошим дополнением к принимаемым вами мерам защиты.

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

Все параметры реестра, описанные в данном разделе, находятся под ключом  реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ Parameters (рис. 24.18).

Краткие описания этих параметров и рекомендуемые значения приведены ниже.

 EnableDeadcwDetect (тип данных REG_DWORD). Значение по умолчанию позволяет TCP/IP переключаться на дополнительный шлюз в том случае, когда большое количество соединений начинает испытывать проблемы. Такое поведение нежелательно в случае DoS-атак, поскольку в этом случае трафик может быть перенаправлен на шлюз, который не является объектом постоянного мониторинга. Поэтому установите для данного параметра значение 0.


Рис. 24.18. Ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters

 EnablePMTUDiscovery (тип данных REG_DWORD). Значение, по умолчанию устанавливаемое для данного параметра, позволяет TCP/IP определять максимальный размер передаваемого фрагмента (maximum transmission unit, MTU), который может быть передан системе. В принципе, это опасно, поскольку дает возможность обойти систему защиты или вывести ее из строя путем передачи фрагментированного трафика (например, многие системы обнаружения атак не умеют правильно восстанавливать фрагментированные IP-пакеты). Если для этого параметра установить значение 0, то MTU всегда будет установлено на значение 576 байт.


 KeepAlive (тип данных REG_DWORD). Этот параметр указывает, насколько часто будет осуществляться проверка и верификация активности открытых соединений. Для этого параметра рекомендуется установить значение 300 000.
 synAttackProtect (тип данных REG_DWORD). Создание этого параметра позволяет защититься от атак SYN Flood, препятствующих нормальному процессу установления соединения между клиентом и сервером. При нормальных условиях, этот процесс протекает в три этапа.
 Клиент отправляет серверу запрос на установление соединения (SYN).
 Сервер отвечает отправкой подтверждения (SYN-ACK).
 Клиент подтверждает прием, отправляя сообщение АСК.
Если сервер стал мишенью для атаки SYN Flood, он будет получать огромное количество запросов на соединения, что создаст препятствия в получении подтверждений от клиентов и, таким образом, не позволит легальным пользователям устанавливать соединения. Рекомендуемое значение для этого параметра — 2 (можно также установить значение 1, но оно действует менее эффективно).


Конфигурирование Windows для очистки файла подкачки при останове системы


Некоторые программы могут временно хранить пароли и другую конфиденциальную информацию в памяти в незашифрованном виде. Поскольку Windows периодически сбрасывает эту информацию на диск, она может присутствовать в файле подкачки (Pagefile.sys), что представляет собой потенциальную угрозу безопасности системы. Таким образом, пользователи, обеспокоенные безопасностью системы, наверняка захотят сконфигурировать ее таким образом, чтобы при останове происходила очистка файла подкачки.

Эта рекомендация универсальна и применима ко всем версиям Windows NT (начиная с NT 3.51 и заканчивая продуктами из семейства Windows Server 2003). Обратите внимание на то, что очистка файла подкачки при останове системы не является заменой физической безопасности компьютера. Однако она поможет обезопасить вашу конфиденциальную информацию, когда операционная система не загружена (например, компьютер загружен под управлением альтернативной ОС).

Чтобы сконфигурировать Windows для очистки файла подкачки при останове, проделайте следующее:

1. Для Windows XP и Windows Server 2003 запустите редактор реестра Regedit.exe. Для выполнения той же задачи в Windows NT/2000, запустите Regedt32.exe.

2. Найдите ключ реестра:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ Session Manager\Memory Management

3. Создайте параметр ClearPageFileAtshutdown (тип данных — REG_DWORD) и установите его значение равным 1.

Чтобы внесенное изменение вошло в силу, перезагрузите компьютер.



Устранение неполадок при останове системы


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


Рис. 24.19. Процесс, не укладывающийся в отведенный временной интервал, препятствует корректному останову Windows

Чтобы устранить эту проблему, следует модифицировать значение параметра WaitToKillAppTimeout под следующим ключом реестра:  HKEY_CURRENT_USER\Control Panel\Desktop

Значение указывается в миллисекундах. Увеличьте этот интервал (в разумных пределах) и перезагрузите систему, чтобы внесенное изменение вошло в силу.

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



Проблема размера реестра


Одним из основных недостатков INI-файлов, использовавшихся для управления конфигурацией системы и приложений до введения реестра, являлась проблема, вызванная ограничением по размеру файла Win.ini, использовавшегося в ранних версиях Windows для хранения параметров настройки всех установленных в системе приложений. Каждое вновь устанавливаемое приложение вносило свои параметры в этот файл, вследствие чего он очень быстро рос. Когда размер файла Win.ini превышал установленное ограничение (не более 64 Кбайт), добавление новых записей в его состав создавало проблему, поскольку все дальнейшие изменения, вносимые в последние разделы этого файла (за пределами инициализационной границы), игнорировались.

Казалось, что с введением концепции реестра эта проблема была решена. Однако реестр, при всей своей прогрессивности, все же остался ограниченным по объему (на практике, его размер ограничивался до 80% от объема нерезидентного пула памяти). Поэтому проблема снова начала возникать с появлением приложений, интенсивно использующих реестр (к их числу относятся, например, СОМ и терминальные сервисы). При установке в системе таких приложений значительный объем нерезидентного пула поглощался реестром, оставляя слишком малый объем адресного пространства для других приложений, работающих в режиме ядра. В Windows NT/2000 для решения этой проблемы применяется ограничение по размеру реестра, т. е. существует возможность установить ограничение на размер, до которого может разрастаться реестр.

В отличие от Windows NT/2000, в Windows XP и Windows Server 2003 ограничение по размеру реестра практически снято. Код реестра был переработан таким образом, чтобы переместить реестр из нерезидентного пула и передать управление им диспетчеру кэша. Эта новая реализация позволяет реестру разрастаться до существенно больших размеров, нежели в предыдущих версиях, и фактически ограничивает его размеры только объемом доступного дискового пространства. Таким образом, ни в Windows XP, ни в Windows Server 2003 вы больше не найдете опции, позволяющей задать ограничение по размеру реестра.



Работа с системным реестром


Как и в предыдущих версиях операционных систем из семейства Windows (включая Windows 9x/ME и Windows NT/2000/XP), реестр Windows Server 2003 представляет собой централизованную базу данных параметров настройки системы и работающих в ней приложений. В этом смысле реестр аналогичен разнообразным INI-файлам, а также файлам autoexec.bat и config.sys, которые использовались ранее. Реестр содержит информацию обо всех аппаратных средствах, программном обеспечении, операционной системе и сетевых параметрах компьютера. Эта сложная иерархическая база данных принимает участие во всех аспектах работы Windows. Хорошее понимание принципов работы реестра, выполняемых им задач, а также умение манипулировать реестром необходимо всем: системным и сетевым администраторам, специалистам из групп технической поддержки, а также опытным пользователям из числа программистов. Кроме того, для системных администраторов особенно важны вопросы администрирования и защиты реестра, а также его резервного копирования и восстановления.

Как и в предыдущих системах, в Windows Server 2003 реестр также играет ключевую роль в управлении системной конфигурацией и представляет собой централизованное хранилище всей информации об аппаратных средствах, операционной системе и установленных приложениях, а также данных, управляющих пользовательской средой. Реестр по-прежнему хранится на диске в виде файлов ульев, в состав которых внесены лишь незначительные изменения. Однако в код реестра Windows XP/Windows Server 2003 были внесены изменения, направленные на повышение производительности системы за счет ускорения доступа к реестру и на снятие ограничений по размеру реестра, существовавших во всех предыдущих версиях, включая Windows 2000. Усовершенствования, внесенные в реестр, будут подчеркиваться далее по ходу изложения материала данной главы.

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


Windows 2000 Could not start because the following file is missing or corrupt:

\WINNT\SYSTEM32\CONFIG\SYSTEM

You can attempt to repair this file by Starting Windows NT Setup using the original Setup floppy disk or CD-ROM.

Select 'r' at the first screen to repair.

Аналогичное сообщение может появиться и в процессе работы с Windows Server 2003. Появление такого сообщения свидетельствует об отсутствии или повреждении важной части реестра — файла улья реестра SYSTEM (речь о принципах хранения реестра пойдет далее в этой главе). Приведенный пример убедительно демонстрирует, что единственная ошибка в системном реестре может не только повлиять на всю конфигурацию, но и сделать невозможным запуск операционной системы. Помимо этого, добиться корректной работы некоторых приложений можно также лишь через редактирование реестра. Таким образом, важность навыка редактирования реестра нельзя недооценивать.


Резервное копирование и восстановление реестра


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

Таким образом, прежде чем начинать редактирование реестра, необходимо выполнить его резервное копирование. Windows XP и Windows Server 2003 предоставляют множество методов резервного копирования реестра, в том числе перечисленные ниже.

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

 System Restore — функция System Restore создает точки восстановления, фактически представляющие собой "моментальные снимки" системной конфигурации, которая включает в себя и данные реестра. Перед внесением любых серьезных изменений в конфигурацию системы (включая и непосредственное редактирование реестра) рекомендуется вручную создать точку восстановления, которая позволит выполнить быстрое восстановление системы в случае возникновения неполадок и проблем с загрузкой. Что особенно важно, System Restore может применяться как при нормальном режиме загрузки, так и в безопасном режиме (safe mode). Следует, однако, отметить, что данная функция имеется только в Windows XP.

 Процедура автоматического восстановления поврежденной системы (Automated System Recovery, ASR). Никогда не пренебрегайте подготовкой к процедуре ASR перед внесением серьезных изменений в конфигурацию системы. Процедуры подготовки и выполнения ASR были подробно рассмотрены в главе 23 "Восстановление системы".


  Резервное копирование системных конфигурационных данных (System State). Подобно предыдущим двум опциям, этот вариант резервного копирования реестра подробно рассматривался в главе 23. Здесь же стоит отметить один факт, весьма важный с точки зрения резервного копирования и восстановления реестра, а именно: при выполнении резервного копирования системных конфигурационных данных система сохраняет резервные копии файлов реестра в каталоге %SystemRoot%\repair. Если ульи реестра получат повреждения, то вы можете воспользоваться этими резервными копиями для восстановления системы, не прибегая к громоздкой процедуре переустановки системы и последующего восстановления системных конфигурационных данных. Однако пользоваться этим методом могут только опытные пользователи, которые отлично понимают, что именно они делают.

 Ручное резервное копирование реестра. Чтобы выполнить ручное резервное копирование и восстановление реестра Windows NT/2000/XP или Windows Server 2003, скопируйте на съемный носитель следующие файлы, хранящиеся в каталоге %SystemRoot%\system32\config:

 Appevent.evt

 Secevent.evt

 Sysevent.evt

 Default

 Security

 System

 Default.log

 Security.log

 System.alt*

 Default.sav

  Software

 System.log

 Sam

 Software.log

 System.sav

 Sam.log

 Software.sav

Userdiff

* Файл, присутствующий только в Windows NT/2000.

Использование этого метода резервного копирования и восстановления реестра сопряжено с некоторыми сложностями. Так, весьма логично было бы использовать для резервного копирования дискету емкостью 1,44 Мбайт, но отнюдь не всегда ее объема хватит для копирования всех файлов. Далее, если раздел, на котором установлена поврежденная копия Windows XP или Windows Server 2003, отформатирован для использования NTFS, то вы столкнетесь с некоторыми трудностями при загрузке с дискет MS-DOS или Windows 9x/ME (хотя эта трудность легко преодолима, если вы воспользуетесь утилитой NTFSDOS, которую можно загрузить, посетив сайт http://www.sysinternals/com). Помимо этого, в данной ситуации могут помочь загрузочная дискета Windows Server 2003, параллельная установка операционной системы, а также Recovery Console.


Структура реестра


Как и реестры систем Windows NT/2000/XP, реестр Windows Server 2003 состоит из пяти так называемых корневых ключей (root keys):

 HKEY_CLASSES_ROOT

 HKEY_CURRENT_USER

 HKEY_LOCAL_MACHINE

 HKEY_USERS

 HKEY_CURRENT_CONFIG

Каждый отдельный ключ может содержать элементы данных, которые называются параметрами (value entries), а также дополнительные вложенные ключи (subkeys). Для понимания этой концепции можно провести аналогию с файловой системой. Ключи в структуре реестра аналогичны каталогам, а значимые элементы — файлам. Рис. 24.1 иллюстрирует иерархическую структуру реестра.


Рис. 24.1. Реестр имеет иерархическую структуру, и его ключи могут содержать вложенные ключи и параметры

Все имена корневых ключей начинаются со строки HKEY_, что указывает разработчикам программного обеспечения на то, что это — дескриптор, который может использоваться программой. Дескриптор (handle) — это значение, используемое для уникального описания ресурса, к которому программа может получить доступ. Описания корневых ключей реестра Windows NT/2000/XP и Windows Server 2003 приведены в табл. 24.1.

Таблица 24.1. Корневые ключи реестра

Имя корневого ключа

Описание

HKEY_LOCAL_MACHINE

Содержит глобальную информацию о компьютерной системе, включая такие данные об аппаратных средствах и операционной системе, как: тип шины, системная память, драйверы устройств и управляющие данные, используемые при запуске системы. Информация, содержащаяся в этом ключе, действует применительно ко всем пользователям, регистрирующимся в системе. На верхнем уровне иерархии реестра для этого ключа имеются три псевдонима: HKEY_CLASSES_ROOT, HKEY CURRENT_CONFIG И HKEY_DYN_DATA

HKEY_ CLASSES_ ROOT

Содержит ассоциации между приложениями и типами файлов (по расширениям имени файла). Кроме того, этот ключ содержит информацию OLE (Object Linking and Embedding), ассоциированную с объектами СОМ, а также данные по ассоциациям файлов и классов (эквивалент реестра ранних версий Windows, служивших настройкой над MS-DOS). Параметры этого ключа совпадают с параметрами, расположенными под ключом HKEY_LOCAL_MACHINE \ Sof tware\Classes.

Подробную информацию о ключе HKEY_CLASSES_ROOT можно найти в руководстве OLE Programmer's Reference, входящем в состав продукта Windows Platform Software Development Kit (SDK)

HKEY_CURRENT_ CONFIG

Содержит конфигурационные данные для текущего аппаратного профиля. Аппаратные профили (hardware profiles) представляют собой наборы изменений, внесенных в стандартную конфигурацию сервисов и устройств, установленную данными ключей Software И System корневого ключа HKEY LOCAL_MACHINE. В ключе HKEY_CURRENT_CONFIG отражаются только изменения.

Кроме того, параметры этого ключа появляются также под ключом HKEY_LOCAL_MACHINE\System \CurrentControlSet\HardwareProfiles\Current

HKEY_CURRENT USER

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

Этот ключ представляет собой ссылку на ключ HKEY_USERS \user SID, где user SID— идентификатор безопасности (Security ID, SID) пользователя, зарегистрировавшегося в системе на текущий момент

HKEY_USERS

Содержит все активно загруженные пользовательские профили, включая HKEY_CURRENT_USER, а также профиль по умолчанию. Пользователи, получающие удаленный доступ к серверу, не имеют профилей, содержащихся под этим ключом; их профили загружаются в реестры на их собственных компьютерах.

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

<
/p> Следует обратить особое внимание на весьма существенное различие между реестрами Windows 9x/ME и Windows NT/2000/XP/Windows Server 2003, касающееся ключа HKEY_USERS. Как известно, в Windows 9x/ME не существует встроенных средств для предотвращения несанкционированного доступа к системе, и для регистрации нового пользователя не требуется наличия учетной записи. Ключ реестра HKEY_USERS в этих операционных системахсодержит вложенные ключи вида username, где username — входные имена пользователей.

В отличие от Windows 9x/ME и по аналогии с Windows NT/2000, Windows ХР и Windows Server 2003 для доступа пользователей в обязательном порядке требуют наличия пользовательской учетной записи (user account), причем это требование совершенно не зависит от того, принимает ли ваш компьютер участие в работе сети. Далее, Windows NT/ 2000/ХР или Windows Server 2003 идентифицируют пользователей не по входным именам (login names), а по идентификаторам безопасности (Security IDs, SIDs), большинство из которых является уникальными для каждого пользователя (в том числе и для пользовательских учетных записей в разных системах). Исключение составляют только так называемые "хорошо известные" SID (well-known SIDs), например, такие, как встроенная группа Everyone (S-1-1-0) или пользователь Creator Owner (S-1-3-0), полный список которых можно найти в статье Microsoft Knowledge Base Q243330 — "Well Known Security Identifiers in Windows 2000 and Windows ХР". Если вы удалите пользовательскую учетную запись в локальной системе или в домене, а затем создадите новую с использованием того же входного имени, то для новой учетной записи будет сгенерирован новый SID. Идентификаторы безопасности имеют следующий формат: S-1-XXXXX1-YYYYY2-...-RID, где: S-1 — идентификатор безопасности (Security ID), версия 1; ХХХХХ — номер ведомства (authority number), YYYYYn — номера подразделений (subauthority numbers), RID — относительный идентификатор (Relative ID). Обратите внимание на то, что относительные идентификаторы (RID) уже не будут уникальны для каждого компьютера.



Многие пользователи Windows, даже довольно опытные, часто ошибочно считают, что система идентифицирует пользователей по их регистрационной информации — входному имени (username или login name) и паролю (password). Следует особо подчеркнуть, что это распространенное мнение является ошибочным, т. к. система идентифицирует пользователей именно по их идентификаторам безопасности. Пользовательские профили также идентифицируются по ассоциированным с ними SID (рис. 24.2).

Данные реестра поддерживаются в виде параметров, расположенных под ключами реестра. Каждый параметр характеризуется именем, типом данных и собственно значением. Три части параметра реестра всегда располагаются в следующем порядке:



Рис. 24.2. В отличие от Windows 9x/ME и по аналогии с Windows NT/2000, Windows XP и Windows Server 2003 идентифицируют пользовательские профили по ассоциированным с ним идентификаторам безопасности (SID)

В табл. 24.2 перечислены типы данных, определенные для параметров реестра и используемые в системе.

Таблица 24.2. Типы данных для параметров реестра

Тип данных

Описание

REG_BINARY

Двоичные данные. Большинство аппаратных компонентов используют информацию, которая хранится в виде двоичных данных. Редакторы реестра отображают эту информацию в шестнадцатеричном формате

REG_DWORD

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

REG_EXPAND_SZ

Расширяемая строка данных. Эта строка представляет собой текст, содержащий переменную, которая может быть заменена при вызове со стороны приложения

REGJMULTI_SZ

Многострочное поле. Значения, которые фактически представляют собой списки текстовых строк в формате, удобном для восприятия человеком, обычно имеют этот тип данных. Строки разделены символом NULL

REG_SZ

Текстовая строка в формате, удобном для восприятия человеком. Значениям, представляющим собой описания компонентов, обычно присваивается именно этот тип данных

REG_DWORD_ LITTLE_ENDIAN

32-разрядное число в формате "остроконечников" (little-endian). Представляет собой эквивалент REG DWORD.

При использовании метода "остроконечников" самый младший байт ("little end") хранится в памяти первым в числе. Например, шестнадцатеричное число A02Bh по методу "остроконечников" сохраняется как 2ВАО.

Метод "остроконечников" используется в микропроцессорах Intel

REG_DWORD_BIG_ ENDIAN

32-разрядное число в формате "тупоконечников" (big-endian). В противоположность методу "остроконечников", при использовании метода "тупоконечников" самый старший байт ("big end") оказывается первым байтом числа

REG_LINK

Символическая ссылка Unicode. Этот тип данных предназначен для внутреннего использования.

Тип данных REG LINK особенно интересен тем, что он позволяет одному элементу реестра ссылаться на другой ключ или параметр. Например, если элемент реестра \Rootl\Link имеет параметр типа REG LINK со значением \Root2\RegKey, а ключ RegKey содержит параметр RegValue, то этот параметр идентифицируется двумя путями: \Rootl\Link\RegValue И \Root2 \ RegKey \RegValue. Windows NT/2000/XP и Windows Server 2003 активно использует этот метод — некоторые из корневых ключей реестра, перечисленных в табл. 24.1, являются ссылками на вложенные ключи других корневых ключей

REG_NONE

Параметр не имеет определенного типа данных

REG_QWORD

64-разрядное число

REG_QWORD_LITTLE_ ENDIAN

64-разрядное число в формате "остроконечников". Эквивалент REG QWORD

REG_RESOURCE_LIST

Список аппаратных ресурсов, применяется только в ветви

HKEY_LOCAL_MACHINEXHARDWARE

REG_FULL_RESOURCE_ DESCRIPTOR

Дескриптор (описатель) аппаратного ресурса. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE

REG_RESOUECE_ REQUIREMENTS_LIST

Список необходимых аппаратных ресурсов. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE


Усовершенствования в структуре реестра


Новый подход к реализации реестра позволил также существенно повысить производительность системы за счет усовершенствований, перечисленных ниже.

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

 Улучшенные механизмы для работы с данными большого объема. Во всех версиях, предшествующих Windows XP, неэффективно работающее приложение могло создавать разреженные файлы реестра большого объема за счет постоянного увеличения значения параметра реестра малыми приращениями. В Windows XP и Windows Server 2003 эта проблема решена за счет реализации разбиения крупных ячеек на цепочки ячеек размером по 16 Кбайт.



Запуск Regedit


По умолчанию утилита Regedit.exe в процессе установки операционной системы копируется в каталог %SystemRoot% (например, C:\Windows). Обычно редактор реестра запускается с помощью команды Run (Выполнить) меню Start (Пуск).

Редактор реестра можно также запустить из командной строки с ключом /s. В этом случае Regedit.exe не будет предоставлять графического пользовательского интерфейса и не будет запрашивать подтверждения пользователя на выполнение указанной ему операции. Эта опция позволяет использовать редактор реестра в командных файлах. Например, чтобы выполнить импорт файла реестра MyRegSettings.reg в состав реестра без запроса подтверждения, дайте следующую команду: Regedit /s MyRegSettings.reg