вторник, 21 декабря 2010 г.

Редактирование удаленного реестра или реестра другой машины.




Эта статья скопирована мною с ресурса http://tehm.info/remote_reestr

Как отредактировать реестр, если компьютер не загружается, а привода CD ROM нет. Снимаем винчестер, подключаем (например, через usb кейс) к исправному компьютеру и читаем далее..
Все началось с антивируса. В процессе героической борьбы с вирусом на одном из пользовательских компьютеров, он удалил зараженный файл userinit.exe (данный файл является системным). Что привело к невозможности загрузки данного компьютера в дальнейшем. CD ROM описываемый компьютер не имел, поэтому любые трюки с загрузочными дисками мне не подходили. Пришлось снимать винчестер и подключать его к своему компьютеру, через usb кейс. userinit.exe можно просто скопировать с любого компьютера с аналогичной версией Windows. Однако из Интернета я узнал, что в подобных случаях бывает удаляется и ветка реестра, содержащая вызов userinit.exe . Чтобы не заниматься сборкой-разборкой компьютера дважды, проверим реестр машины, винчестер которой подсоединен к нашей.
Просто открыть нетекущий и несетевой реестр из редактора реестра нельзя.

Сперва нужную ветку целевого реестра надо примонтировать к ветке HKEY_LOCAL_MACHINE (HKLM) или HKEY_USERS (HKU) Важно понимать, что при этом разные реестры не "смешиваются" между собой, просто это такой способ визуализации.
Итак, запускаем regedit (Пуск - Выполнить - Regedit). Мы видим текущий реестр, то есть реестр запущеной Windows. Нам же нужен реестр нерабочей Windows. Выбираем, к примеру, ветку HKEY_USERS (к ней будем монтировать реестр нерабочей Windows)
Файл - Загрузить куст


Как именно выбрать файл куста?
Вот описание файловой структуры реестра с сайта WindowsFaq.ru:
Реестр, по сути, это несколько файлов, хранящихся на жестком диске. Эти файлы находятся в %SystemRoot%\System32\Config, где %SystemRoot% - папка, куда установлена Windows. Еще один файл (Ntuser.dat), который создается для каждого пользователя и хранит его настройки находится в %SystemDrive%\Documents and Settings\%Username%, где %Username% - имя пользователя. Ниже перечислены имена файлов.

Имя файла
Куст реестра, хранимый в нем
SAM
HKEY_LOCAL_MACHINE\SAM
SECURITY
HKEY_LOCAL_MACHINE\SECURITY
SOFTWARE
HKEY_LOCAL_MACHINE\SOFTWARE
SYSTEM
HKEY_LOCAL_MACHINE\SYSTEM
SYSTEM
HKEY_CURRENT_CONFIG
DEFAULT
HKEY_USERS\.DEFAULT
Ntuser.dat
HKEY_CURRENT_USER
Таким образом, мы подошли к определению того, что Кустом реестра называются группа разделов и параметров, как бы составляющих комплект для совместного применения и являющихся самодостаточной единицей, которую можно сохранять и восстанавливать независимо от других кустов. В англоязычной литературе куст обозначается термином «hive», что в дословном переводе значит «улей». Это вносит некоторую путаницу, но эти два термина (куст и улей) являются синонимами.
Корневой раздел - это верхний уровень разделов. Пример корневого раздела - HKEY_LOCAL_MACHINE или HKEY_CURRENT_USER.
Раздел - это папка, которая может содержать подразделы и параметры. Здесь уместна аналогия с папкой в файловой системе.
Параметр реестра состоит из трех компонент: имени, типа данных и значения.

В моем случае (напомню, мне нужна ветка, осуществляющая вызов userinit.exe), надо проверить и, при необходимости, отредактировать ветку[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"Userinit"="C:\WINDOWS\system32\userinit.exe" . Для этого открываем файл %SystemRoot%\System32\Config\Software целевой машины (в моем случае полный путь был J:\Windows\System32\Config\Software)



Придумываем название папки (точки монтирования), через которую будет "виден" нужный нам куст целевого реестра. Если быть точным, предлагается указать имя раздела. Я придумал 1234



Вуаля, у нас появилась нужная папка



Открываем ее и ищем нужную нам ветку



Находим нужное значение, при необходимости редактируем



Закрываем папку и выделяем ее



Отключаем целевой куст (Файл-Выгрузить куст)



Вот и все



Если вы поклонник командной строки, то "примонтировать" и "отмонтировать" целевые файлы к текущему реестру вы можете с помощью команд
reg load hku\1234 "J:\windows\system32\config\software
и
reg unload hku\1234 "J:\windows\system32\config\software
соответственно

Комментариев нет:

Отправить комментарий