ПРЕДУПРЕЖДЕНИЕ: НИКОГДА не удаляйте или не меняйте информацию в реестре, если Вы не уверены что это именно то, что нужно. Неверные действия при изменении реестра могут серьезно повредить систему. Перед изменением реестра создайте резервную копию всех важных данных, имеющихся на компьютере.
Вся ответственность за нарушение работоспособности компьютера лежит на Вас!
Я предупредил - вы прочитали. Поехали...
Для начала расскажу, что из себя вообще представляет реестр:
Реестр или системный реестр - это база данных для хранения сведений о конфигурации компьютера и настроек операционной системы. Реестр содержит данные, к которым Windows XP постоянно обращается во время загрузки, работы и её завершения, а именно:
* профили всех пользователей, то есть их настройки;
* конфигурация оборудования, установленного в операционной системе. Я не пишу установленного в компьютере, поскольку железо может быть на борту, но не быть установленным в ОС, например, из-за устаревших драйверов.
* данные об установленных программах и типах документов, создаваемых каждой программой;
* свойства папок и значков программ;
* данные об используемых портах.
Разобраться в реестре - задание не из легких, но это необходимо, если Вы желаете узнать ОС полностью, в большинстве случаев мало кто даже подозревает о существовании реестра. Для работы с реестром используется простая и понятная утилита
Regedit.
Важное замечание : Windows XP в отличие от своих предшественниц не имеет ограничения по размеру реестра.
Разделы реестра:
HKEY_CURRENT_USER
Код:
Данный раздел является корневым для данных настройки пользователя, вошедшего в систему в настоящий момент. Здесь хранятся папки пользователя, цвета экрана и настройки панели управления. Эти данные называются профилем пользователя.
HKEY_USERS
Код:
Данный раздел содержит все профили пользователей компьютера. HKEY_CURRENT_USER является подразделом HKEY_USERS.
HKEY_LOCAL_MACHINE
Код:
Раздел содержит данные настройки, относящиеся к данному компьютеру (для всех пользователей).
HKEY_CLASSES_ROOT
Код:
Данный раздел является подразделом HKEY_LOCAL_MACHINE\Software. Хранящиеся здесь сведения обеспечивают открытие необходимой программы при открытии файла с помощью проводника.
HKEY_CURRENT_CONFIG
Код:
Данный раздел содержит сведения о профиле оборудования, используемом локальным компьютером при запуске системы
Три части параметра реестра всегда располагаются в определенном порядке: [RegistrySizeLimit] [REG_DWORD] [0x8000000]. Имя, Тип данных, значение.
REG_BINARY
Необработанные двоичные данные. Большинство сведений об аппаратных компонентах хранится в виде двоичных данных и выводится в редакторе реестра в шестнадцатеричном формате.
REG_DWORD
Данные, представленные целым числом (4 байта). Многие параметры служб и драйверов устройств имеют этот тип и отображаются в двоичном, шестнадцатеричном или десятичном форматах.
REG_EXPAND_SZ
Расширяемая строка данных. Эта строка представляет собой текст, содержащий переменную, которая может быть заменена при вызове со стороны приложения.
REG_MULTI_SZ
Многострочное поле. Значения, которые фактически представляют собой списки текстовых строк в формате, удобном для восприятия человеком, обычно имеют именно этот тип данных. строки разделены символом NULL.
REG_SZ
Текстовая строка в формате, удобном для восприятия человеком. Значениям, представляющим собой описания компонентов, обычно присваивается именно этот тип данных.
REG_FULL_
RESOURCE_
DESCRIPTOR
Последовательность вложенных массивов, разработанная для хранения списка ресурсов аппаратного компонента или драйвера.
Хранение реестра.
Элементы реестра хранятся в виде атомарной структуры. Реестр разделяется на составные части, называемые ульями (hives), или кустами. Ульи хранятся на диске в виде файлов. Некоторые ульи, такие, как HKLM\HARDWARE, не сохраняются в файлах, а создаются при каждой загрузке, то есть являются изменяемыми (vola-tile). При запуске системы реестр собирается из ульев в единую древовидную структуру с корневыми разделами. Перечислим ульи реестра и их местоположение на диске (для NT старше версии 4.0).
HKLM\SYSTEM
Код:
%SystemRoot%\system32\config\system
HKLM\SAM
Код:
%SystemRoot%\system32\config\SAM
HKLM\SECURITY
Код:
%SystemRoot%\system32\config\SECURITY
HKLM\SOFTWARE
Код:
%SystemRoot%\system32\config\software
HKLM\HARDWARE
HKLM\SYSTEM\Clone
HKU\<SID_пользователя>
Код:
%USERPROFILE%\ntuser.dat
HKU\<SID_пользователя>_Classes
Код:
%USERPROFILE%\Local Settings\Application Data\Microsoft\Windows\UsrClass.dat
HKU\.DEFAULT
Код:
%SystemRoot%\system32\config\default
Кроме этих файлов, есть ряд вспомогательных, со следующими расширениями:
•
LOG — журнал транзакций, в котором регистрируются все изменения реестра.
•
SAV — копии ульев в том виде, в котором они были после завершения текстовой фазы установки.
Файлы реестра Windows XP: (имени файла соответствует куст реестра Windows XP)
SAM - HKEY_LOCAL_MACHINE\SAM
SECURITY - HKEY_LOCAL_MACHINE\Security
Software - HKEY_LOCAL_MACHINE\Software
System - HKEY_LOCAL_MACHINE\System
HKEY_CURRENT_CONFIG
Default - HKEY_USERS\.DEFAULT
Файлы Ntuser.dat - HKEY_CURRENT_USER
Сокращения:
HKEY_CLASSES_ROOT -
HKCR
HKEY_CURRENT_USER -
HKCU
HKEY_LOCAL_MACHINE -
HKLM
HKEY_USERS -
HKU
HKEY_CURRENT_CONFIG -
HKCC
Теперь, соответственно, я буду повествовать вам о способах восстановления реестра:
Способ №1. Резервное копирование файлов реестра. На сменный носитель копируются файлы:
SYSTEM.DAT и
USER.DAT (для Windows 95/98), которые находятся в каталоге, куда была установлена операционная система, и имеют атрибуты «только для чтения» и «скрытый». Для Windows XP это (лучше скопировать всю папку) файлы по адресу
%SystemRoot%\System32\Config, а также
Ntuser.dat, который находится по адресу
C:\Documents and Settings\User. В случае сбоя по причине повреждения реестра грузимся под другой ОС (DOS, Linux…) и копируем файлы на место.
Способ №2. Для того чтобы создать резервную копию реестра, можно воспользоваться мастером архивации и восстановления —
Пуск/Программы/Стандартные/Служебные/Архивация данных — или просто
Выполнить: ntbackup. Программа архивации позволяет архивировать копии важных системных компонентов — таких, как реестр, загрузочные файлы (
Ntldr и
Ntdetect.com) и база данных службы каталогов Active Directory. Для архивации реестра Windows XP пошаговые инструкции следующие:
1. Заходим в систему с требуемыми правами — например, администратор.
2. Запускаем NTbackup — Архивация данных.
3. Из режима мастера переходим в Расширенный режим.
4. Выбираем закладку Архивация.
5. В левом окошке находим значок (строку) System State и помечаем ее «птичкой»:
6. Нажимаем на кнопку Архивировать, после чего выбираем Дополнительно.
7. Устанавливаем галочку Проверка данных после архивации; снимаем с пункта Автоматически архивировать защищенные системные файлы вместе с состоянием системы (процедура займет значительно меньше времени):
8. Тип архива устанавливаем Обычный.
9. Кнопка ОК и Архивировать. При необходимости после архивации можно просмотреть отчет, который располагается по адресу в папке
С:\Documents and Settings\%User%\Local Settings\Application Data\Microsoft\Windows NT\NTBackup\data\ в файлах backup01.log, back up02.log…
Пошаговые инструкции для полного восстановления реестра посредством NTbackup выглядят следующим образом:
1. Входим в систему с правами администратора.
2. Запускаем NTbackup.
2. Переходим на вкладку «Восстановление и управление носителем».
3. В списке Установите флажки для всех объектов, которые вы хотите восстановить устанавливаем флажок для объекта Состояние системы. Далее следуем интуитивному ОК.
Способ №3. Суть данного способа заключается в т.н. экспорте reg-файла. Способ особенно эффективен (занимает не много времени и позволяет делать копии отдельных подразделов) и актуален при экспериментировании с реестром.
Техника:
1. Выполнить/
regedit.
2. Выбираем нужный нам раздел/подраздел.
3. Правая кнопка «грызуна»/экспорт, указываем путь сохранения копии и
имя файла:
При архивации части реестра мы экспортировали данные в reg-файл. Для того, чтобы извлечь их и восстановить первоначальное состояние реестра, необходимо выполнть следующие шаги:
1.
Запускаем regedit: Пуск/Выполнить/
regedit.
2. В главном меню выбираем Файл/Импорт с указанием пути к импортируемому файлу или просто запустить reg-файл, подтвердив импорт в реестр:
Способ №4. В данном случае мы заархивируем системный реестр посредством консоли восстановления (
Recovery Console). Для этого необходимо: 1. Загрузиться в Recovery Console (через загрузочный диск вашей Windows XP).
2. В появившейся командной строке Recovery Console выполняем следующие команды*:
md tmp
copy c:\windows\system32\config\system c:\windows\tmp\system.bak
copy c:\windows\system32\config\software c:\windows\tmp\software.bak
copy c:\windows\system32\config\sam c:\windows\tmp\sam.bak
copy c:\windows\system32\config\security c:\windows\tmp\security.bak
copy c:\windows\system32\config\default c:\windows\tmp\default.bak
*Не рекомендуется перемещать сохраненные файлы за пределы
%SystemRoot%, т.к. в Recovery Console они могут оказаться недоступными.
В заключении:
Способ №1 можно считать способом на все случаи. Все манипуляции по созданию копий совершаются вручную, вследствие чего №1 по праву можно отнести к категории «все гениальное просто».
Способ №2 —
восстановление реестра проводится только под работающей Windows-системой, но с одной оговоркой: в выбранном нами режиме это действительно так, однако (!) существует так называемый режим мастера аварийной подготовки системы (ASR — создает архив системы, состоящей из двух частей: дискеты с системными параметрами и других носителей, которые содержат архив системного раздела), в котором возможно восстановление с нуля, используя предварительно созданную загрузочную дискету восстановления.
Способ № 3 можно считать простым и эффективным способом в процессе экспериментов с реестром.
Способ № 4 —
для любителей «страшных черных окон»…
Терминология:
В описании реестра в английской литературе, среди прочих, используется термин
Hive. В некоторых работах его переводят на русский как «
улей». Microsoft в своих документах переводит это как
куст.
Например:
Registry hive HKEY_LOCAL_MACHINE\SAM == Куст реестра HKEY_LOCAL_MACHINE\SAM
Куст реестра — это подмножество разделов, подразделов и параметров реестра, которому сопоставлен набор вспомогательных файлов, содержащих резервные копии этих данных
Устранение ошибки прав доступа в списке системных DLL
HKLM\System\CurrentControlSet\Control\Session Manager\Protection Mode
Устраняется возможность атаки с применением троянских DLL, и, как следствие,
получения прав администратора. Требуется установить параметр в 1 (REG_DWORD).
Запрет перезагрузки и выключения компьютера без локального входа в систему:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\ShutdownWithoutLogon
Установка ключа в 0 (REG_SZ) позволяет запретить завершение работы системы
(кнопка "Shutdown" в окне Logon становится недоступной и окрашивается серым
цветом).
Ограничение доступа на просмотр журналов событий пользователям группы Guest:
HKLM\System\CurrentControlSet\Services\EventLog\Sy stem\RestrictGuessAccess
HKLM\System\CurrentControlSet\Services\EventLog\Se curity\RestrictGuessAccess
HKLM\System\CurrentControlSet\Services\EventLog\Ap plication\RestrictGuessAccess
Создание ключей со значением 1 (REG_DWORD) ограничивает доступ к Журналу событий
(EventLog).
Изменение местонахождения файлов Журнала событий на жестком диске:
HKLM\System\CurrentControlSet\Services\EventLog\Sy stem\File
HKLM\System\CurrentControlSet\Services\EventLog\Se curity\File
HKLM\System\CurrentControlSet\Services\EventLog\Ap plication\File
Перевод log-файлов в другой каталог на диске с помощью ключа File (REG_SZ) может
затруднить взломщику их умышленную модификацию.
Полезное:
RegShot (если что-то не находится)
REG (утилита, которая сразу создает REG файлы)
(Набор бесплатных программ от Paul Lee для просмотра, редактирования и мелкого ручного ремонта файлов реестра)
Реестр MS Windows XP. Справочник профессионала
p. s. собирал и "отсеивал" инфу с разных "уголков" инета, так что смело можно называть полноценной статьёй.