...
...

NT club. Часть 19. Восстановление системы

NT club. Часть 19. Восстановление системы

Продолжим
Итак, в предыдущей статье ( КГ № 35 ) мы начали рассматривать средства обеспечения корректного функционирования операционной системы и восстановления оной в случае сбоев. Продолжим данную тему. Сразу, однако, дополню предыдущую часть: если вам вдруг приспичило убрать кэш защищенных системных файлов (папка %SystemRoot%\system32\dllcache), то сделать это можно командой sfc /cachesize=0. Как вариант — использование Групповой политики, которая имеет больший приоритет; нужный параметр находится по адресу Политика "Локальный компьютер"\Административные шаблоны\Система\Защита файлов Windows\Ограничить размер кэша защиты файлов Windows. Это обязательное условие — простое удаление файлов из этой папки ничего не даст — при первой же возможности система наполнит кэш заново.

1.7. Резервное копирование
Так как нам ничто не может помешать архивировать не только пользовательские данные, но и системные файлы, этим мы и займемся. В нашем распоряжении есть даже специальная утилита (см. рис. 1), ускоряющая и упрощающая данный процесс, — Программа архивации (Пуск\Программы\Стандартные\Служебные\ Архивация данных).
Данная программа позволяет сохранять (в т.ч. и по расписанию) произвольные папки и файлы в архив, который может быть записан на ряд носителей, в т.ч. жесткий диск, дискету, стример (ленточный накопитель), а затем восстанавливать их. Для архивирования файлов системы достаточно указать папку Windows. Если система загрузилась, и вы смогли запустить Программу архивации, у вас будет возможность вернуть все сохраненные файлы в то состояние, которое они имели на момент создания архива. Однако грамотнее было бы использовать архивирование System State, включающее в себя загрузочные, системные и защищенные WFP-файлы, реестр, базу данных COM (часть реестра) и еще некоторые данные, зависящие от задач, выполняемых ОС. Этот набор архивируется и восстанавливается лишь целиком, так как входящие в него компоненты сильно зависят друг от друга.
Хм… Интересным побочным действием рассмотренной утилиты является то, что при каждом запуске архивации она делает копии ряда файлов кустов реестра в папку %SystemRoot%\Repair. Этим можно воспользоваться в случае повреждения ветви HKLM реестра. Кстати, насчет реестра: я, наверное, уже предупреждал, что, работая с ним, рекомендуется делать резервные копии изменяемых ключей, а то и всего реестра. Не забывайте об этом! В Regedit у вас есть выбор, что и как сохранять (экспортировать): указанную ветвь или весь реестр, в текстовый reg-файл или куст реестра и т.д. Кроме того, существует еще и консольная утилита Reg, имеющая свои преимущества.

1.8. Диск аварийного восстановления
Для быстрого восстановления системы в Windows 2000 есть Emergency Recovery Disk (ERD), а в XP присутствует более мощное средство — Automated System Recovery (ASR). Создать диск аварийного восстановления можно из Программы архивации, нажав на первой закладке кнопку Мастер аварийного восстановления системы (для XP).
В случае Windows 2000 мастер создаст дискету восстановления, и, если вы ему указали, сделает копии кустов реестра в папке %SystemRoot%\Repair. Для восстановления системы нужно запустить программу Setup (установка ОС), например, загрузившись с диска с дистрибутивом ОС. Программа найдет установленные Windows 2000 и соответствующие каталоги Repair и предложит исправить поврежденную конфигурацию. В качестве способа мы выберем операцию аварийного восстановления, а программа попросит дискету восстановления. Далее нам предложат выбрать режим: ручной или автоматический. Мне больше импонирует ручной. Затем нам нужно будет указать действия, которые следует сделать программе восстановления:
• Анализ среды — проверка и исправление загрузочных файлов.
• Проверка системных файлов — проверка и исправление системных файлов (каталог %SystemRoot%). Все изменения, в т.ч. и Service Pack'и, будут утеряны.
• Анализ загрузочного сектора — проверка и исправление загрузочного сектора.
Поставив нужные галочки, жмем Продолжить. Система восстановлена.
Если же вы используете Windows XP, мастер также создаст дискету восстановления, но, кроме этого, он сделает копию всей системы на какой-либо носитель достаточной емкости. Для восстановления системы загружаемся с компакта с дистрибутивом ОС (или загрузочных дискет), жмем F2, когда нас попросят, далее следуем указаниям программы (вставить дискету восстановления, дистрибутив ОС, архив восстановления и т.д.).
Учтите, что восстанавливаются только системные файлы, но никак не пользовательские. И еще один очень важный момент: ASR очень похожа на установку ОС в автоматическом режиме. Это означает, что ASR _форматирует_ системный раздел и заново устанавливает систему из созданного архива. Кроме того, дискета восстановления содержит информацию о конфигурации разделов диска, так что ни в коем случае не запускайте ASR, если после создания диска аварийного восстановления вы производили какие-либо изменения в структуре разделов жесткого диска — это "чревато боком".

1.9. Консоль восстановления
Мое любимое средство:-). Emergency Recovery Console (ERC) позволяет выполнять ряд действий, направленных на устранение различных неполадок системы. В целом ERC похожа на командную строку NT, даже большинство команд те же. Загрузиться в ERC можно двумя способами: при запуске установки ОС с компакт-диска или дискет нажать F10 (или R, когда нас попросят) или же установить консоль на винчестер в качестве второй ОС (командой winnt32/cmdcons, находясь в папке i386 дистрибутива ОС). Во втором случае в меню выбора ОС появится новый пункт, соответствующий консоли восстановления.
Загружаясь, ERC перечислит все установленные Windows 2000/XP и предложит на выбор одну из них для восстановления. Затем она попросит ввести пароль Администратора (3 ошибки — перезагрузка). Если база учетных записей SAM повреждена или отсутствует, ERC не сможет провести аутентификацию и откажется работать. Команда help выведет список доступных команд, а ключ /? отобразит справку по назначению и использованию конкретной программы.
Консоль восстановления — довольно мощное средство, хотя и не идеальное. Подробнее о нем мы поговорим в следующих "сериях" нашего клуба — она того стоит.

2. Новые средства Windows XP

2.1. Windows Side by Side
Как вы, наверное, помните, начиная с Windows 2000 в арсенале NT появилось средство защиты системных файлов — WFP (см. пункт 1.5). Данный механизм позволяет избежать такой специфичной проблемы, как dll hell. Однако есть и оборотная сторона данной проблемы: иногда бывает так, что программа работает только с более старой/новой версией какой-то библиотеки. Да, это бывает редко, но все-таки бывает. Что делать? Заменить библиотеку другой версией нельзя — получим dll hell (неработоспособность других программ), да и WFP будет активно противиться этому.
В ответ программисты из Microsoft сделали "финт ушами": Windows Side by Side ("Windows бок о бок" — дословный перевод). Сущность данной технологии заключается в следующем. Если программа использует версию системной библиотеки, отличную от текущей, то данная версия библиотеки будет скопирована в папку %SystemRoot%\WinSxS и будет вызываться программой оттуда. Например, видавшая виды игрушка пытается заменить более старой версией некоторую библиотеку DirectX, так как с новой просто не работает из-за особенностей использования старой версии библиотеки (тут я сильно утрирую — у меня такая ситуация еще не случалась). В случае с Windows 2000 мы уже поиграли:-), а Windows XP делает следующее: не дает заменить текущую версию библиотеки старой, копирует старую версию в папку %SystemRoot%\ WinSxS, при запуске нашей игры "подсовывает" ей нужную версию dll вместо текущей — и все работает!
Заметьте, что данное средство спасает не только старые программы, но и поделки программистов, заменяющих системные файлы своими собственными версиями, — системе, в общем-то, это без разницы. Ну, и самое приятное — все это работает автоматически без нашего вмешательства. Кстати, средство Windows Side by Side не относится напрямую к отказоустойчивости ОС — скорее к совместимости, тем не менее, я упомянул о нем, так как оно органично дополняет функционал WFP.

2.2. Откат драйверов
Очень полезное нововведение Windows XP. У вас наверняка бывали случаи, когда нужно было по каким-либо причинам вернуть старый драйвер устройства. Раньше для этого приходилось ставить его заново, теперь же достаточно нажать кнопку Откатить на закладке Драйвер окна свойств нужного устройства из Диспетчера устройств (см. рис. 2). При этом будет восстановлена старая версия драйвера, заархивированная перед установкой нового драйвера в папке %Sys-temRoot%\system32\Reinstall-Backups. Думаю, вам должна понравиться эта возможность.

2.3. Восстановление системы
О! Это средство стоит того, чтобы о нем серьезно поговорить. Если вы работали в Win-dows ME (Millennium Edition), то знаете, что это такое. Вообще у меня сложилось впечатление, что ME создали именно для того, чтобы опробовать новые технологии, позже воплотившиеся в Windows XP.
Что же такое System Restore (Восстановление системы), и чем нам это грозит? Данное средство основано на концепции точек восстановления (Restore Points). Эти точки представляют собой моментальные снимки состояния системы: изменения в наблюдаемых файлах с момента создания точки, копии файлов реестра и репозитория объектов WMI. Точки восстановления хранятся в папке System Volume Information\_restore <GUID_компьютера> на каждом наблюдаемом диске (разделе), однако образы реестра и репозитория WMI находятся только на системном разделе. Учтите, что точки восстановления специфичны для каждой установки ОС, так что, если вы перенесете диск на другой компьютер с Windows XP, операционная система создаст новую папку System Volume In-formation\_restore<GUID_компьютера> с другим GUID.
System Restore следит за изменениями в ряде файлов, имеющих непосредственное отношение к самой системе и программам, т.е. это в основном исполняемые файлы (.exe) и динамически связываемые библиотеки (.dll). Файлы-документы (.txt, .doc, .html etc.) System Restore не наблюдает, соответственно и восстановить их не сможет. Полный список наблюдаемых и исключаемых из мониторинга файлов можно посмотреть в файле %SystemRoot%\system32\ Restore\filelist.xml.

Точки восстановления создаются по умолчанию в трех общих случаях: периодически каждые 24 часа (системные), при установке нового ПО и неподписанных драйверов (установочные), вручную пользователем (пользовательские). Особенно радует создание точки восстановления перед установкой неподписанного драйвера. Учтите, что, если вы ставите новое ПО, то точка восстановления будет создана только в случае прямого указания инсталлятора системе о ее создании (MSI по умолчанию так и делает). Точки восстановления удаляются по методу FIFO (First In First Out — "первым пришел — первым ушел") по мере достижения порога зарезервированного под них места. Если же на диске будет меньше, чем 200 Мб, Восстановление системы отключится, и потом его нужно будет включать вручную.
Если вы хотите настроить данное средство, то вам дорога в Панель управления\Система, закладка Восстановление системы (см. рис. 3). Здесь вы можете отключить System Restore, указать, какие диски наблюдать, сколько дискового пространства можно использовать под точки восстановления. Внимание: если вы отключите наблюдение системного раздела, отключится все средство System Restore. Под точки восстановления вы можете зарезервировать от 4% (не менее 200 Мб) до 12% (400 Мб на диске, меньшем, чем 4 Гб) места на разделе. Если вы используете NTFS, то данные восстановления будут сжиматься встроенным в файловую систему механизмом сжатия. Имеет смысл отключить восстановление на всех дисках, которые содержат лишь пользовательские данные (в большинстве случаев это все разделы, кроме системного).

Теперь рассмотрим, как пользоваться Восстановлением системы. Для этого идем в меню Пуск\Программы\Стандартные\Служебные\Восстановление системы. Появившееся окошко предоставляет нам две возможности: восстановить систему до более раннего состояния и создать новую точку восстановления. Если вы создаете новую точку, то система сначала попросит вас ввести описание для нее. Если же вы решили откатить систему до более раннего состояния, появится окошко, позволяющее выбрать нужную дату и конкретную точку восстановления (см. рис. 4). После подтверждения система вернется в состояние, которое имела на момент создания указанной точки восстановления, и перегрузит компьютер. Имейте в виду: все изменения, внесенные после выбранной точки восстановления, будут потеряны.
Как видите, Восстановление системы — довольно гибкое и удобное средство. Рекомендую пользоваться им для создания пользовательских контрольных точек перед установкой новых программ — не все инсталляторы создают контрольные точки автоматически. Судя по моему опыту, данное средство спасло немало инсталляций Windows XP от неумелых действий пользователя и "кривых" программ.

2.4. Удаленный помощник
В качестве десерта представляю средство Удаленный помощник (Remote Assistance). Его назначение — предоставить более грамотному пользователю/администратору возможность удаленно по сети управлять сеансом того, кто запросил помощь, т.е. видеть его рабочий стол, двигать курсор, вводить символы и т.д. По сути дела, это тот же Удаленный рабочий стол, просто с одной сессией работают сразу два пользователя. Напомню, что обе упомянутые технологии базируются на терминальных службах, и возможность подключения к чужому сеансу существует уже давно, просто Microsoft немного переориентировала эту возможность на благо неопытного пользователя.
Запустить Удаленный помощник можно из Центра справки и поддержки. Запрашивая помощь, вы по сути дела отправляете сообщение посредством Windows Messenger или почтового клиента. Затем обе стороны обмениваются ключами шифрования и т.д. — нам это неинтересно. В конце концов устанавливается соединение по протоколу RDP, если, конечно, нет никаких помех вроде неправильно настроенного брандмауэра. Замечу: пользователь, запросивший помощь, имеет возможность ограничить в правах своего помощника, а то и вовсе его отключить.
К сожалению, данное средство используется довольно редко, так как для этого необходимо наличие локальной сети или подключения к Интернету. Если же вам будет интересно узнать о нем подробнее, я напишу небольшой обзор.

Заключение
Что ж, основные моменты мы разобрали. Если вспомню еще что-нибудь интересное по теме — напишу продолжение. Все вопросы о "непонятках", предложения и т.д. отправлять по нижеуказанному адресу. Надеюсь, что был полезен вам и вашей ОС. До встречи.

Creator, for_creator@tut.by


© Компьютерная газета

полезные ссылки
Оффшорные банковские счета