Параметры regedit. Работа с реестром из командной строки

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

Разделы и параметры реестра Windows

Реестр Windows хранит конфигурационную информацию операционной системы, приложений, пользователей и оборудования. Эти данные содержатся в разделах (keys) и параметрах (values) реестра, которые размещаются в определенном корневом разделе (root key), который контролирует, как и когда используются разделы и параметры. В корневых разделах вы найдете главные разделы (main keys), управляющие параметрами системы, пользователей, приложений и оборудования. Эти разделы организованы в древовидную структуру, где разделы представлены папками. Так, в разделе HKEY_LOCAL MACHINE\SYSTEM\CurrentControlSet\Services находятся папки для всех служб, установленных в системе. В этих папках содержатся разделы реестра, хранящие важную конфигурационную информацию, и их подразделы (subkeys). Нужные разделы реестра задаются через их пути к папкам.

Команда REG управления реестром из командной строки

REG поддерживает несколько подкоманд, и мы рассмотрим некоторые из них.

  • REG add - добавляет в реестр новый подраздел или элемент.
  • REG delete - удаляет из реестра подраздел или элемент.
  • REG query - выводит список элементов раздела и имена подразделов (если они есть).
  • REG compare - сравнивает подразделы или элементы реестра.
  • REG сору - копирует элемент реестра по указанному пути раздела на локальной или удаленной системе.
  • REG restore - записывает в реестр ранее сохраненные подразделы, элементы и параметры.
  • REG save - сохраняет копию указанных подразделов, элементов и параметров реестра в файл.

Иногда, чтобы поменять что-то в реестре (выполнить твик или просто внести нужное вам изменение) в первую очередь требуется получить доступ к ветке/ключу реестра. Казалось бы, для администратора это не проблема. Но нюанс в том, что в некоторые ветки реестра Windows не может внести изменения даже администратор. Доступ к таким веткам ограничивается ACL, в которых либо отсутствуют права записи для группы локальных администраторов, либо владельцем таких разделов назначены TrustedInstaller или System. В этом руководстве мы покажем несколько простых способов предоставить администратору права владельца и полные права на защищенный таким образом раздел реестра.

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

Получение прав владельца на ключ реестра с использованием утилиты SubInACL

SubInACL – это официальная утилита от Microsoft, которую можно использовать для просмотра и изменения прав, владельца и информации о безопасности и т.д. для файлов, папок, ключей реестра, сервисов и т.д. в ОС Windows .

Утилита была написана для Windows 2000, XP и Server 2003, однако ее можно использовать и со всеми новыми версиями Windows.

ШАГ 1:

Скачайте утилиту с сайта Microsoft: https://www.microsoft.com/en-us/download/details.aspx?id=23510

ШАГ 2:

Это стандартный MSI инсталлятор, который копирует SubInACL.exe file в папку «C:\Program Files (x86)\Windows Resource Kits\Tools\» в Windows x64 и в папку «C:\Program Files\Windows Resource Kits\Tools\» в Windows х86.

Но никто не мешает вам просто распаковать MSI файл (например, с помощью 7-Zip) в любое место без необходимости его установки.

ШАГ 3:

Вы можете выбрать как запускать SubInACL.exe. Из места установки (cd C:\Program Files (x86)\Windows Resource Kits\Tools), или из места куда вы сами его распаковали, да хоть с флэшки 🙂 . Или можете скопировать SubInACL.exe в папку С:\ Windows \ System 32 и тогда он будет запустится по имени. Мы предлагаем скопировать subinacl.exe файл в папку C:\Windows\System32 (C:\Windows\SysWOW64) чтобы была возможность запустить SubInACL из любого удобного места.

ШАГ 4:

Давайте научимся, как работать с SubInACL.exe. Синтаксис утилиты (в командной строке с правами администратора):

SubInACL /type name /action

/ type : Укажите нужный тип объекта. Если надо сменить владельца файла или папки используем file , а если надо поменять владельца ключа реестра, то используем keyreg или subkeyreg . Разница между keyreg и subkeyreg в том, что keyreg меняет владельца только конкретного ключа, а subkeyreg меняет владельца этого ключа и всех подчиненных ключей.

name : Замените этот параметр на название файла, папки или ключа реестра.

/ action : Этот параметр определяет то действие, которое будет произведено над объектом. Ну а раз мы собрались менять владельца ключа и прав на ключ, будем использовать / setowner = administrators / grant = administrators = f в качестве действия.

Смотрим на пример.

SUBINACL /keyreg "HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla" /setowner=Администраторы /grant=Администраторы=f

Примечание . В английской версии Windows вместо Администраторы нужно указывать Administrators.

Эта команда означает, что меняется владелец данного ключа и Администратор получает полные права управления данным ключом.

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

PS : Если интересно посмотреть весь доступный синтаксис, ключи и параметры команды SubInACL, запустите с таким ключом SubInACL / help

Смена владельца и прав на ключ реестра с помощью утилиты SetACL

SetACL является бесплатной консольной утилитой. Вам нужно скачать программку и затем запустить нужные команды.

ШАГ 1:

Качаем программу SetACL: https://helgeklein.com/download/#setacl

ШАГ 2:

После скачивания распакуйте ZIP файл и увидите две версии утилиты: для x86 и для x64 версий Windows. Вам надо использовать правильный SetACL.EXE для вашей версией Windows. Посмотреть какая версия Windows можно в Свойствах Системы (System Properties).

ШАГ 3:

Есть два способа использовать приложение. Вы можете, например, сохранить утилиту в папке E:\SetACL, затем открыть Командную строку от имени Администратора и перейти в эту папку используя стандартные команды или ввести полный путь для запуска утилиты, например E:\SetACL\SetACL.exe. Или вы можете скопировать SetACL.exe в системную папку C :\ Windows \ System 32 (C:\Windows\SysWOW64) тогда можно запускать команду SetACL из любого места. Мы предлагаем скопировать EXE файл в папку C:\Windows\System32 (C:\Windows\SysWOW64).

ШАГ 4:

Теперь, когда вы сделали все предварительные процедуры, вы можете запустить SetACL:

SetACL -on name -ot type -actn action

Синтаксис:

То что выделено жирным остается неизменным, то что выделено курсивом будем менять:

on : Этот параметр указывает на полный путь к фалу или ключ реестра, владельца которого надо изменить.

ot : Этот параметр определяет тип объекта. Если меняем владельца файла, то меняем параметр на file . Если ключ реестра, то указываем reg

actn : Этот параметр указывает, что именно сделать. Возможно много вариантов, но так как мы говорим о ключах реестра, в частности о смене владельца или назначении других прав на ключ, будем использовать только значения setowner или ace .

Чтобы лучше понять как это работает, посмотрим пример:

Предположим, что нужно сменить владельца ключа HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla. Для этого нам надо запустить SetACL со следующими параметрами:

SetACL.exe -on "HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla" -ot reg -actn setowner -ownr "n:Администраторы"

SetACL.exe -on "HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla" -ot reg -actn ace -ace "n:Администраторы;p:full"

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

Вам просто надо поменять значение ключа между кавычками(«»), на тот, который вам нужен.

Получение прав владельца на ключ реестра с использованием встроенной команды REGINI

Эта команда идет в составе любой Windows и мы можем ее использовать для назначения разрешений на ключи реестра. Использование команды очень простое. Создаем файл скрипта с необходимыми параметрами и передаем этот файл для обработки команде REGINI.

ШАГ 1:

Открываем Блокнот (Notepad ) и вписываем название необходимого ключа и ACL (Access Control List) используя вот такой вот формат:

Key_name [ACL ]

Меняем Key _ name на название нужного ключа, но смотрите, чтобы название ключа была корректным, как показано ниже:

\Registry\machine\software\classes (для ключей раздела HKEY_CLASSES_ROOT)

\Registry\machine (для ключей раздела HKEY_LOCAL_MACHINE)

\Registry\user\user_sid (для ключей раздела HKEY_CURRENT_USER) (замените user_sid на правильный Security ID этого пользователя)

\Registry\user (для ключей раздела HKEY_USERS)

Для примера, давайте рассмотрим ключ «HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla» и запишем скрипт:

\Registry\machine\SOFTWARE\Mozilla

Заменяем ACL на те, которые нам необходимы list:

1 (to provide Administrators Full Access) Дать Администраторам полный доступ
2 (to provide Administrators Read Access) Дать Администраторам доступ только на чтение
3 (to provide Administrators Read and Write Access) Дать Администраторам право на изменение
4 (to provide Administrators Read, Write and Delete Access) Дать Администраторам право на изменение и удаление
5 (to provide Creator/Owner Full Access) Дать Создателю/Владельцу полный доступ
6 (to provide Creator/Owner Read and Write Access) Дать Создателю/Владельцу доступ на изменение
7 (to provide Everyone Full Access) Дать Всем полный доступ
8 (to provide Everyone Read Access) Дать Всем доступ только на чтение
9 (to provide Everyone Read and Write Access) Дать Всем право на изменение
10 (to provide Everyone Read, Write and Delete Access) Дать Всем право на изменение и удаление
17 (to provide System Full Access) Дать Системе полный доступ
18 (to provide System Read and Write Access) Дать Системе право на изменение
19 (to provide System Read Access) Дать Системе доступ только на чтение

Сейчас [ACL ] в скрипте будет установлен как-то так:

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

Окончательно строка будет выглядеть так:

\Registry\machine\HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla

Вы можете использовать любые комбинации ACL как вам нужно.

Примечание: Помните, что существующие разрешения для указанного в скрипте ключа будут заменены на новые. Не забывайте включить в скрипт разрешения для всех аккаунтов. Если вы забудете дать права аккаунту СИСТЕМА, то этот аккаунт будет удален из списка предоставления доступа.

ШАГ 2:

Сохраняем скрипт под именем ACL.TXT затем открываем командную строку от имени администратора и запускаем нашу команду:

full_path_of_script_file

Или, в нашем случае, это будет выглядеть так

REGINI c:\install\acl.txt

И все. Разрешения будут немедленно изменены.

Ну вот как-то так. Метод 1 наиболее эффективен и работает на все 100%.

Пример использования

Было необходимо запустить Remote Desktop Host, предоставить группе разработчиков совместный доступ к серверу для настройки определенных приложений и базы данных. В дальнейшем, предоставлять удаленный к доступ к этому серверу не планировалось. Разработчиков было более 2-х и все хотели работать одновременно. И клятвенно обещали закончить менее чем за 4 месяца.

Сказано-сделано. Был поднят Remote Desktop Host на Windows 2012 R2 и мы начали пользоваться 120-ти дневным бесплатным периодом. Но … 4 месяцев не хватило (как всегда). Использовать же легальный ключ для TS не хотелось, так как работа, временная, как я уже сказал ранее. Пришлось … воспользоваться знаниями, которые вы только что получили.

Ключ реестра, отвечающий за отсчет 120-ти дневного Grace Period расположен здесь:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod

У группы Администраторы есть доступ только на чтение этого ключа.

Был использован Метод 1. Так сказать, Microsoft сами себя и наказали:)

SUBINACL /keyreg "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod" /setowner=administrators /grant=administrators=f

Сменили владельца и дали полный доступ администраторам

Удаляем содержимое этого ключа

reg delete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod" /va /f

И после перезагрузки получаем …. Правильно! 120 дней нового бесплатного периода.

Например, можно эту команду оформить в виде скрипта и запускать каждые 115 дней по расписанию.

Пользоваться этим или нет – решать вам, на основании консультаций с вашей совестью и жабой 🙂

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

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

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

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

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

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

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

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

Рис. 3.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • 1. Выделите ветвь реестра, затем выберите в меню File (Файл) команду Export.
  • 2. В поле File name открывшегося диалогового окна Export Registry File (рис. 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)).

Рис. 4.

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

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

Нужно помнить, что файлы с расширением reg по умолчанию ассоциированы с приложением 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 и завершает сеанс работы с этой программой.

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

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

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


Рис. 5.

Опции Rename (Переименовать) и Delete (Удалить) меню Edit позволяют, соответственно, переименовать или удалить значимый элемент реестра. Удалить значимый элемент можно и другим способом: выделите нужный элемент, выполнив на нем щелчок мышью, а затем нажмите клавишу . Аналогичным образом, для быстрого переименования значимого элемента можно указать на него курсором, выполнить щелчок правой кнопкой мыши, выбрать из контекстного меню команду 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. В открывшемся диалоговом окне (рис.6) выберите имя нужного пользователя или группы в поле Group or user names (Группы или пользователи) и установите для них нужный тип прав доступа в поле Permissions for

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

Рис. 6.

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

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

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

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

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

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

Enumerate Subkey

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

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

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

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

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

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


Рис. 7.

Рис. 8.

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

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

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

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

  • 1. Активизировать в системе аудит и задать политику аудита на все события, которые, с вашей точки зрения, подлежат аудиту.
  • 2. Указать пользователей и группы, за действиями которых в отношении выбранных ключей реестра требуется установить аудит. Воспользуйтесь для этого вкладкой Auditing (Аудит) окна, показанного на рис. 7.
  • 3. Результаты аудита можно просматривать в системном журнале Security с помощью оснастки Event Viewer.

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

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

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

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

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

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

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

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

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


Меню Favorites

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

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

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

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

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


Рис. 10.

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

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

Опции командной строки редактора реестра regedit.exe

regedit.exe -mЗапуск нескольких экземпляров редактора реестра. Без этого ключа редактор реестра можно запустить только один раз.

regedit.exe диск:\путь\к_файлу.regИнтерактивный импорт файла реестра. Это - действие по умолчанию для REG-файлов, когда вы выполняете двойной щелчок по ним. При этом появляется подтверждение на внесение изменений в реестр.

regedit.exe /s диск:\путь\к_файлу.reg Тихий импорт файла реестра. Подтверждения в этом случае не появляется, импорт выполняется сразу.

regedit.exe /e диск:\путь\к_файлу.regЭкспортировать реестр целиком в указанный файл. Экспорт выполняется также в "тихом" режиме, без взаимодействия с пользователем и без диалоговых окон. Чтобы экспортировать конкретный раздел, используйте команду вида: regedit /e диск:\путь\к_файлу.reg "HKEY_CURRENT_USER\Control Panel\Desktop"

По умолчанию regedit.exe, начиная с Windows 2000, во время экспорта ключей реестра создает REG-файлы в кодировке UNIСODE. Это поведение можно переопределить, указав вместо ключа /e ключ /a.

regedit /a диск:\путь\к_файлу.reg "HKEY_CURRENT_USER\Control Panel\Desktop"

В результате файл будет в кодировке win1251 и с таким заголовком:

"ActiveWndTrackTimeout"=dword:00000000

В Windows 9x редактор реестра принимал ещё три ключа:

regedit.exe /L:диск:\путь\к_файлу\user.datВыполнять операции над альтернативным файлом с пользовательской веткой реестра (HKCU).

regedit.exe /R:диск:\путь\к_файлу\system.datВыполнять операции над альтернативным файлом с веткой реестра HKLM.

regedit.exe /D "HKEY_CURRENT_USER\Control Panel\Desktop"Удалить из реестра указанный раздел.

В настоящее время все три ключа являются устаревшими и не работают.

Реестр Windows — это самая главная база данных в этой операционной системе. Через него можно отредактировать работу практически любой программы. Для работы в нём существует специальный редактор, который открывает файлы реестра и предоставляет их в удобном для работы представлении — в виде так называемых веток. Как он выглядит на практике — Вы можете увидеть на картинке выше.
Каким же образом открыть редактор реестра Виндовс — Regedit.exe, если в списке программ его нет?
На самом деле запускает он — проще некуда.

1 способ. Актуально для Windows 7. Нажимаем кнопку Пуск и в строке поиска набираем слово — regedit . В результатах поиска должен отобразиться искомый ярлычок «Регедит».

Отлично! Кликаем по значку и редактор реестра Виндовс запустится. Если Вы работаете не под Администратором, то по ярлыку надо будет кликнуть правой кнопкой мыши и выбрать пункт меню «Запустить под Администратором».

В Виндовс 10 это выглядит вот так:

2 способ. Этот вариант более удобен для Windows 8 и 8.1, так как там нет нормальной кнопки «Пуск». На клавиатуре нажимаем комбинацию клавиш Win+R. Откроется окно «Выполнить»:

В нем набираем слово regedit и нажимаем кнопку OK. Кстати, так делали ещё на древней Виндовс 2000 и чуть более новой Windows XP.

3 способ. Командная строка. Ещё один из классических способов открыть редактор «Регэдит» — это запустить его из командной строки с правами администратора. Для этого нажимаем кнопку Пуск и вводим слово «Командная». В найденных результатах кликаем правой кнопкой на найденном значке системной консоли и в контекстном меню выберите пункт «Запуск от имени Администатора». Появится вот такое черное окошко:

пишем команду «regedit» и нажимаем клавишу Enter.

4 способ . Через проводник. Вам просто надо зайти на системный раздел, где установлена операционная система и открыть папку Windows. В ней будет лежать файлик regedit.exe. Запускаем его и вуа-ля — откроется реестр!

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