Как скопировать ветку реестра

от admin

Как скопировать ветку реестра

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

Работа с Редактором реестра¶

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

Способы открытия редактора реестра описаны в разделе Открытие реестра данного руководства.

Создание резервной копии реестра (Экспорт)¶

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

Перед внесением каких-либо изменений в реестр всегда создавайте его резервную копию!

Чтобы создать полную копию реестра необходимо:

  1. Запустить редактор реестра, как это описано выше;
  2. Оставаясь в корне реестра открыть меню «Файл» и выбрать пункт «Экспорт…»;
  3. Выбрать место, где будет сохранена резервная копия, и указать «Имя файла»;
  4. Нажать на кнопку «Сохранить».

Чтобы сэкономить место, можно сделать резервную копию отдельного раздела или подраздела. Для этого необходимо нажать правой кнопкой мыши на раздел (подраздел) и в выпадающем меню выбрать пункт «Экспорт…». Также можно просто перейти в нужный раздел (подраздел) и выбрать меню «Файл → Экспорт…».

Рис. 5 – Экспорт веток реестра. Создание резервной копии.

Рис. 5 – Экспорт веток реестра. Создание резервной копии.

Экспортированный файл будет иметь расширение .reg .

Экспортированные из реестра файлы с расширением .reg являются простыми текстовыми файлами, их можно открыть любым простым текстовым редактором (Notepad++, Блокнот).

Восстановление реестра из резервной копии (Импорт)¶

Чтобы импортировать сохраненный файл реестра, достаточно дважды нажать левой кнопкой мыши по файлу с расширением .reg .

  1. Открыть редактор реестра;
  2. В меню «Файл» выбрать пункт «Импортировать файл реестра»;
  3. В меню открытия файлов найти файл, который следует импортировать, выделить его и нажать кнопку «Открыть».

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

Поиск в реестре¶

Для быстрого доступа к параметром можно воспользоваться функцией поиска по реестру, которая находится в меню «Правка → Найти» ( Ctrl+F ).

Для перемещения между найденными значениями используется «Правка → Найти далее» ( F3 ).

Загрузка и выгрузка куста¶

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

  1. Подключить жесткий диск к рабочему компьютеру;
  2. Открыть реестр на рабочем компьютере;
  3. Выбрать необходимую ветку реестра;

Рис. 6 – Выбор ветки

Рис. 6 – Выбор ветки

  1. Перейти в меню «Файл → Загрузить куст»;

Рис. 7 – Выбор ветки

Рис. 7 – Выбор ветки

  1. В файловом менеджере выбрать соответствующий файл куста с нерабочего компьютера;

Рис. 8 – Выбор ветки

Рис. 8 – Выбор ветки

  1. Задать произвольное имя загруженному кусту.

Рис. 9 – Присвоение произвольного имени разделу

Рис. 9 – Присвоение произвольного имени разделу

В соответсвии с примером, в ветку HKEY_LOCAL_MACHINE работающего компьютера была загружена ветка HKEY_LOCAL_MACHINE\Software с неработающего компьютера.

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

Также допустимо скопировать папку C:\Windows\System32\config\ на обыкновенную флешку и загружать требуемые кусты с нее.

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

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

После завершения работы с загруженными кустами, их желательно выгрузить. Для этого необходимо перейти в «Файл → Выгрузить куст».

Права доступа (Разрешения)¶

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

Прав доступа может не быть по нескольким причинам:

  1. У текущего пользователя, залогиненного в системе, нет прав администратора;
  2. Группа «Администраторы» является владельцем раздела, но не имеет полных прав на него. В этом случае достаточно просто выдать группе «Администраторы» полные права.
  3. Владельцем раздела является системная служба TrustedInstaller.
  4. Владельцем раздела является системная учетная запись «Система».

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

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

Получение полных прав и смена владельца¶

  1. Нажать правой кнопкой мыши на раздел и выбрать пункт «Разрешения»;

Рис. 10 – Вызов диалога работы с разрешениями

Рис. 10 – Вызов диалога работы с разрешениями

  1. Выделить текущего пользователя:
  • Если доступен флажок «Полный доступ», установить его и нажать кнопку «ОК. Этого может оказаться достаточно, если группа является владельцем раздела.

Рис. 11 – Открытие Полного доступа гурппам и пользователям

Рис. 11 – Открытие Полного доступа гурппам и пользователям

Если отсутствует необходимый пользователь, флажок «Полный доступ» недоступен или возникает сообщение об ошибке, переходите к пункту 3.

  1. В меню разрешений нажать кнопку «Дополнительно»;

Рис. 12 – Добавление или смена владельца

Рис. 12 – Добавление или смена владельца

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

Перейти на вкладку «Владелец» и добавить текущего пользователя;

Рис. 13 – Выбор владельца

Рис. 13 – Выбор владельца

На вкладке «Разрешения» нажать кнопку «Добавить»;

Рис. 14 – Добавление разрешений владельцу

Рис. 14 – Добавление разрешений владельцу

В поле «Введите имена выбираемых объектов» ввести имя текущей учетной записи и нажать кнопку «Проверить имена», затем нажать «ОК»;

Рис. 15 – Ввод имени выбираемых объектов

Рис. 15 – Ввод имени выбираемых объектов

Рис. 16 – Проверка имен

Рис. 16 – Проверка имен

Появится диалог разрешений. Поставить галочку напротив «Полный доступ» и нажать «ОК»;

Рис. 17 – Установка полного доступа текущему владельцу

Рис. 17 – Установка полного доступа текущему владельцу

После добавления владельца и назначения прав нажать клавишу F5 или «Вид → Обновить». Напротив непустого раздела появится треугольник, который означает, что у текущего пользователя есть права на доступ в него.

Рис. 18 – Доступ к подразделам

Рис. 18 – Доступ к подразделам

На рисунке 18 видно, что у текущего пользователя есть доступ к подразделу Keys , но нет прав на открытие разделов KeyDevices и Random . Треугольника напротив подраздела может не быть, если данный подраздел пуст.

В Windows 8 и выше порядок работы с диалогом смены и добавления владельца немного отличается – владелец выбирается сверху.

Рис. 19 – Выбор/смена владельца в Windows 8 и выше

Рис. 19 – Выбор/смена владельца в Windows 8 и выше [11]

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

Работа через утилиту PsExec¶

Для запуска редактора реестра с полными правами от имени системы можно воспользоваться программой PsExec.exe.

    утилиту PsExec.exe и скопируйте в корень диска C .
  1. Запустите командную строку от имени администратора. «Пуск → Выполнить → cmd».
  2. Введите в командную строку команду:

Запустится редактор реестра от имени системы, что задается параметром -s (параметр -i обеспечивает интерактивный запуск приложения)[11].

Если возникает сообщение об ошибке Couldn’t install PSEXESVC service. , то необходимо отключить контроль учетных записей Windows (UAC):

  1. Меню «Пуск → Панель управления»;
  2. «Учетные записи пользователей → Изменение параметров контроля учетных записей»;
  3. Сдвинуть ползунок до самого низа — «Никогда не уведомлять»;
  4. Перезагрузить компьютер.

Рис. 20 – Отключение параметров контроля учетных записей (UAC)

Рис. 20 – Отключение параметров контроля учетных записей (UAC)

В Windows Vista в диалоговом окне «Пуск → Панель управления → Учетные записи пользователей → Включение и отключение контроля учетных записей» снять галочку «Используйте контроль учетных записей для защиты компьютера».

В Windows 8 и выше для полного отключения контроля учетных записей (UAC) необходимо в реестре в ветке HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System присвоить параметру EnableLUA значение 0 .

Рис. 21 – Отключение параметров контроля учетных записей (UAC) в Windows 8 и выше

Рис. 21 – Отключение параметров контроля учетных записей (UAC) в Windows 8 и выше

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

Добавление и удаление элементов¶

Для создания разделов, подразделов и параметров, необходимо перейти в меню «Правка → Создать» и выбрать необходимый тип создаваемого элемента. Либо нажать правой кнопкой мыши и в появившемся меню выбрать пункт «Создать».

Рис. 22 – Создание разделов, подразделов и параметров

Рис. 22 – Создание разделов, подразделов и параметров

Более подробную информацию о типах параметров смотрите в статье Сведения о реестре Windows для опытных пользователей.

Name already in use

regedit / docs / source / reg-cmd.rst

  • Go to file T
  • Go to line L
  • Copy path
  • Copy permalink
  • Open with Desktop
  • View raw
  • Copy raw contents Copy raw contents

Copy raw contents

Copy raw contents

Работа с реестром из командной строки

Работа с реестром возможна не только через утилиту regedit.exe , но и напрямую из командной строки с помощью утилиты REG , она поддерживает все возможности, которые имеет программа regedit.exe . И более того — она также поддерживает несколько особенных функций. Полезна в том случае когда работа с regedit по каким либо причинам невозможна.

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

В общем виде синтаксис команды REG выглядит следующим образом:

Всего существует одиннадцать процедур, которые способна выполнять директива REG : QUERY , ADD , DELETE , COPY , SAVE , LOAD , UNLOAD , RESTORE , COMPARE , EXPORT , IMPORT . Каждая из этих процедур имеет, как правило, собственный набор параметров.

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

Более подробные сведения об использовании утилиты REG вы можете получить, набрав в командной строке директиву REG /? , чтобы получить информацию о какой-либо из перечисленных процедур, воспользуйтесь командой REG <процедура> /? .

Для удобства ввода применяются сокращения названий веток реестра. Все сокращения представлены в таблице ниже:

Сокращения названий веток реестра

Ветка Сокращение
HKEY_CLASSES_ROOT HKCR
HKEY_CURRENT_USER HKCU
HKEY_LOCAL_MACHINE HKLM
HKEY_USERS HKU
HKEY_CURRENT_CONFIG HKCC

Вывод содержимого ветвей (QUERY)

Команда REG QUERY отправляет в системный реестр Windows запрос о содержимом ветвей, ключей, подразделов или параметров, и выводит на экран результат обработки этих запросов. В общем виде синтаксис данной команды записывается следующим образом:

В составе директивы могут использоваться следующие параметры:

  • Компьютер — имя компьютера в локальной сети, если директива предназначена для обработки на удаленном компьютере. В случае, если этот параметр опущен, команда выполняется на локальном компьютере.
  • Путь — полный путь к целевому разделу реестра в виде корень\ключ\подраздел , где корень — сокращенное обозначение ветви реестра ( HKLM , HKCU , HKCR , HKU или HKCC ), а ключ\подраздел — полный путь к искомому подразделу в иерархии реестра, включая все вложенные подразделы.
  • /v — запрос о содержимом указанного раздела реестра.
  • Параметр — вывести имя и значение запрашиваемого параметра в указанном разделе.
  • /ve — запрос стандартного параметра с пустым именем.
  • /s — вывести список всех подразделов данного раздела реестра вместе с их содержимым.

В качестве примера получим содержимое ветки в которой хранятся закрытые ключи квалифицированных электронных подписей:

Лучше вводить путь в кавычках.

Будет выведен примерно такой результат:

Как видно из вывода, в реестре компьютера находится всего один контейнер 2015ZAO_ .

Экспорт и импорт веток реестра (EXPORT и IMPORT)

Для экспорта используется команда EXPORT . Синтаксис команды:

  • имя_раздела — полное имя подраздела реестра в одном из выбранных корневых разделов.
  • имя_файла — имя .reg файла, который получится после экспорта.
  • Параметр /y в конце команды позволяет выполнение замены существующего файла без запроса подтверждения.

Экспортируем контейнеры закрытых ключей на рабочий стол:

Вся ветка с контейнерами успешно экспортирована на рабочий стол и сохранена в файле keys.reg . Теперь импортируем ее обратно.

Команда доступна только для выполнения на локальном компьютере.

Для импорта используется команда IMPORT . Синтаксис команды:

Напомню, что для экспорта ветки на другом компьютере, необходимо будет изменить в файле keys.reg путь к ветке реестра с учетом разрядности операционной системы и SID текущего пользователя. Подробнее об импорте и экспорте закрытых ключей смотрите в Руководстве по работе с реестром ОС Windows в разделе Где хранятся ключи(закрытый ключ сертификата) в реестре? [1739].

Создание резервной копии реестра (SAVE и RESTORE)

Для резервного копирования и восстановления реестра используются следующие команды (типы операций) утилиты REG SAVE и REG RESTORE :

В данному разделе перечислены основные команды утилиты REG для получения более подробной информации обратитесь к ресурсам, перечисленным в разделе Дополнительные ссылки

Редактирование реестра Windows из командной строки, bat-файлы

Редактирование реестра батниками

На нашем ресурсе уже есть публикация, описывающая основной способ работы с системным реестром Windows : Изменение параметров cистемного реестра Windows. Также мы рассматривали способ автоматизации процесса при помощи специальных файлов: Создание reg-файлов. Синтаксис редактирования записей реестра — позволяющий значительно упростить монотонную работу и воспроизведение часто используемых настроек. В рамках данной статьи мы затронем логическое продолжение темы, а именно, поговорим о том, как редактировать реестр из командной строки.

Содержание статьи:

Использование bat-файлов для редактирования реестра

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

Достаточно подробно о создании и использовании батников речь шла в записи Пакетные файлы (bat, батники) Windows, ещё одна функция, которую можно и нужно использовать — изменение записей реестра при помощи cmd языка .
Использование батников для редактирования реестра иногда может быть выгоднее и удобнее, нежели работа со стандартными для этих целей reg-файлами.

  1. батники шире используются в администрировании;
  2. батники имеют режим тихого запуска (без всплывающих окон);
  3. батники можно запускать с повышенными правами, то есть от имени Администратора;
  4. с помощью бат-файлов возможна работа с реестром сетевых машин.

Именно для таких частных случаев будет полезно знать, как написать батник для редактирования системного реестра Windows.

Работа с реестром из командной строки

Синтаксис бат-файлов и процесс их создания описан в статье, приведённой выше, в данной же публикации затронем исключительно тему, касающуюся выполнения функции изменения реестра из командной строки.
Сразу отметим, что в bat-файлах не требуется заголовок в начале файла по типу того, что используется в reg-файлах: Windows Registry Editor Version 5.00 — здесь можно начинать писать команду с первой же строки.

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

  • /v — имя добавляемого/изменяемого ключа;
  • /ve — добавление пустого параметра;
  • /t — параметр для указания типа добавляемых/изменяемых данных;
  • /d — значение, присваиваемое параметру;
  • /s — применение команды ко всем вложенным ключам;
  • /f — отключение системных предупреждений при выполнении операции.

Но, конечно, основа любого батника Windows — сама команда. Итак, приведём список команд, используемых для редактирования реестра .

reg add — команда для добавления данных, будь то параметры, ключи или целые ветки.
Допустим, после вирусной атаки нам необходимо вернуть место хранения hosts файла (а также файлов lmhosts, networks и protocols) в директорию %SystemRoot%\System32\drivers\etc\ Для этого нужно выполнить команду:

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

Вот такой файл, как в архиве, у нас получится: drivers_etc
Остальные примеры в данной статье будем приводить вымышленные, дабы при их тестировании не вносить нежелательных изменений в реестр

reg delete — команда для удаления указанной информации из реестра компьютера.
Чтобы удалить определённый параметр, нам достаточно указать его полный путь после команды удаления. Пример:

Данная команда удалит параметр Save из указанной ветки.

reg copy — команда для копирования параметров и ключей из одной ветки реестра в другую.
Для копирования параметров достаточно после команды последовательно прописать сначала исходную ветку, а потом изменяемую. Например:

Данная команда скопирует всю информацию из ветки User1 в ветку User2.

reg export — команда для экспорта указанных веток реестра в виде *.reg файла на жёсткий диск.
Пример использования:

В результате выполнения данной команды будет создан рег-файл с бэкапом раздела Football.

reg import — команда, позволяющая импортировать данные из reg-файла в реестр системы.
Пример использования:

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

reg query — данная команда возвращает значение запрашиваемых параметров и кустов реестра.
Пример использования:

В ответ будет возвращено значение параметра Run в реестре.

reg compare — команда позволяет сравнить две указанные последовательно ветки реестра.
Пример использования:

В ответ команда возвращает одно из значений: 0 — данные веток идентичны; 1 — при выполнении операции произошла ошибка; 2 — данные веток отличаются.

reg load , reg unload , reg save , reg restore — команды, позволяющие бэкапить и восстанавливать нужные ветки системного реестра Windows при помощи файлов *.hiv.

Изменение параметров реестра компьютера в сети

Выше мы рассмотрели достаточно широкие возможности батников в работе с реестром операционной системы. Последний момент, который отметим в контексте данной темы — это редактирование реестра компьютеров в локальной сети.

Для использования в работе с компьютерами в сети доступны все вышеперечисленные команды, единственное ограничение — операции из командной строки над реестром удалённых машин возможно производить только в разделах HKEY_ LOCAL_MACHINE (HKLM), и HKEY_USERS (HKU)

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

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

Указанная команда скопирует содержимое раздела User с компьютера FRIEND в локальной сети в реестр машины, с которой выполняется команда.

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

Читать:
Что такое hex редактор

Похожие статьи