Реестр Windows (англ. Windows Registry), или системный реестр — иерархически построенная база данных параметров и настроек в большинстве операционных систем семейства Microsoft Windows [2].
В реестре хранятся данные, которые необходимы для правильного функционирования Windows. К ним относятся профили всех пользователей, сведения об установленном программном обеспечении и типах документов, которые могут быть созданы каждой программой, информация о свойствах папок и значках приложений, а также установленном оборудовании и используемых портах [1].
Открытие реестра¶
Поскольку файлов в реестре несколько, его нельзя открыть, например, в текстовом редакторе и внести какие-либо коррективы. Для работы с ним требуется специальная программа – редактор реестра, который является встроенным компонентом операционной системы Windows и вызывается путем ввода команды Regedit
[4].
Существует несколько способов открыть редактор реестра.
Способ №1 – Открытие через утилиту «Выполнить»:
- Выбрать Пуск → Выполнить, либо нажать сочетание клавиш
Win+R
(Win
— клавиша, междуCtrl
иAlt
в нижнем ряду клавиатуры, обычно на ней изображен значок Microsoft Windows ; - В открывшимся окне ввести команду
regedit
; - Нажать клавишу
ОК
.
Рис. 1 – Открытие через утилиту «Выполнить»
Способ №2 – Открытие через поиск по меню «Пуск»:
- Открыть меню Пуск;
- Ввести в строке поиска
regedit
и запустить найденный файл, который отобразится в верхней части Пуска.
Рис. 2 – Открытие через поиск по меню «Пуск»
С другими способами можно ознакомиться в статье Три способа открыть редактор реестра Windows.
Структура реестра¶
Реестр имеет иерархическую структуру, которая напоминает файловую систему жесткого диска – с его каталогами, подкаталогами и файлами. Но называются элементы реестра по-другому: верхний уровень иерархии составляют разделы, каждый из которых может содержать вложенные подразделы, а также параметры. Именно в параметрах хранится основное содержимое реестра, разделы служат лишь для группировки схожих по назначению параметров [4].
Рис. 3 – Редактор реестра
Далее приведен краткий перечень и краткое описание стандартных разделов реестра. Максимальная длина имени раздела составляет 255 символов.
HKEY_CURRENT_USER
Данный раздел является корневым для данных конфигурации пользователя, вошедшего в систему в настоящий момент. Здесь хранятся папки пользователя, цвета экрана и параметры панели управления. Эти сведения сопоставлены с профилем пользователя. Вместо полного имени раздела иногда используется аббревиатура HKCU
.
HKEY_USERS
Данный раздел содержит все активные загруженные профили пользователей компьютера. Раздел HKEY_CURRENT_USER
является подразделом раздела HKEY_USERS
. Вместо полного имени раздела иногда используется аббревиатура HKU
.
HKEY_LOCAL_MACHINE
Раздел содержит параметры конфигурации, относящиеся к данному компьютеру (для всех пользователей). Наиболее интересным является подраздел Software
, который включает в себя настройки всех установленных в системе приложений. Вместо полного имени раздела иногда используется аббревиатура HKLM
.
HKEY_CLASSES_ROOT
Является подразделом HKEY_LOCAL_MACHINE\Software
. Хранящиеся здесь сведения обеспечивают выполнение необходимой программы при открытии файла с использованием проводника. Вместо полного имени раздела иногда используется аббревиатура HKCR
. Начиная с Windows 2000, эти сведения хранятся как в HKEY_LOCAL_MACHINE
, так и в HKEY_CURRENT_USER
.
Раздел HKEY_LOCAL_MACHINE\Software\Classes
содержит параметры по умолчанию, которые относятся ко всем пользователям локального компьютера. Параметры, содержащиеся в разделе HKEY_CURRENT_USER\Software\Classes
, переопределяют принятые по умолчанию и относятся только к текущему пользователю.
Раздел HKEY_CLASSES_ROOT
включает в себя данные из обоих источников. Кроме того, раздел HKEY_CLASSES_ROOT
предоставляет эти объединенные данные программам, разработанным для более ранних версий Windows. Изменения настроек текущего пользователя выполняются в разделе HKEY_CURRENT_USER\Software\Classes
. Модификация параметров по умолчанию должна производиться в разделе HKEY_LOCAL_MACHINE\Software\Classes
. Данные из разделов, добавленных в HKEY_CLASSES_ROOT
, будут сохранены системой в разделе HKEY_LOCAL_MACHINE\Software\Classes
. Если изменяется параметр в одном из подразделов раздела HKEY_CLASSES_ROOT
и такой подраздел уже существует в HKEY_CURRENT_USER\Software\Classes
, то для хранения информации будет использован раздел HKEY_CURRENT_USER\Software\Classes
, а не HKEY_LOCAL_MACHINE\Software\Classes
.
HKEY_CURRENT_CONFIG
Данный раздел содержит сведения о профиле оборудования, используемом локальным компьютером при запуске системы.
Примечание
Реестр 64-разрядных версий Windows подразделяется на 32- и 64-разрядные разделы. Большинство 32-разрядных разделов имеют те же имена, что и их аналоги в 64-разрядном разделе, и наоборот. По умолчанию редактор реестра 64-разрядных версий Windows отображает 32-разрядные разделы в следующем узле: HKEY_LOCAL_MACHINE\Software\WOW6432Node
Файлы реестра на жестком диске¶
Основные файлы, отвечающие за формирование реестра хранятся в папке %SystemRoot%\System32\Config\
. Обычно это C:\Windows\System32\Config\
и в зависимости от версии ОС их состав может несколько различаться.
Файл, хранящий личные настройки пользователя, «скрыт» в папке соответствующей учетной записи, например, в C:\Documents and Settings\Dmitry
. Также файлы, отвечающие за пользовательские настройки, могут храниться в:
C:\Documents and Settings\%Username%\(Ntuser.dat)
;C:\Documents and Settings\%Username%\Local Settings\Application Data\Microsoft\Windows\ (UsrClass.dat)
.
Еще есть резервные копии файлов реестра, созданные системой, хранятся они в
C:\Windows\System32\config\RegBack
– для Windows 7 и Server 2008;C:\Windows\repair
– для XP и Server 2003.
Примечание
По умолчанию операционная система делает резервные копии этих файлов раз в 10 дней с помощью планировщика задач.
Вспомогательные файлы для всех кустов за исключением HKEY_CURRENT_USER
хранятся в системах Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003 и Windows Vista в папке %SystemRoot%\System32\Config
.
Вспомогательные файлы для куста HKEY_CURRENT_USER
хранятся в папке %SystemRoot%\Profiles\Имя_пользователя
. Расширения имен файлов в этих папках указывают на тип содержащихся в них данных. Отсутствие расширения также иногда может указывать на тип содержащихся в файле данных.
Примечание
Куст (дерево) реестра (англ. hive) — это группа разделов, подразделов и параметров реестра с набором вспомогательных файлов, содержащих резервные копии этих данных.
Таблица 1 — Соответствие кустов реестра и вспомогательных файлов¶
Куст реестра | Вспомогательные файлы |
---|---|
HKEY_LOCAL_MACHINE\SAM |
Sam , Sam.log , Sam.sav |
HKEY_LOCAL_MACHINE\Security |
Security , Security.log , Security.sav |
HKEY_LOCAL_MACHINE\Software |
Software , Software.log , Software.sav |
HKEY_LOCAL_MACHINE\System |
System , System.alt , System.log , System.sav |
HKEY_CURRENT_CONFIG |
System , System.alt , System.log , System.sav , Ntuser.dat , Ntuser.dat.log |
HKEY_USERS\DEFAULT |
Default , Default.log , Default.sav |
Примечание
Например, кусту HKEY_LOCAL_MACHINE\Software
соответствует на жестком диске файл C:\Windows\System32\config\SOFTWARE
.
Рис. 4 – Файлы реестра на жестком диске
Разберемся в сути реестра Windows.
Представьте себе таинственный мир, скрытый внутри вашего компьютера, о котором вы даже не подозреваете. Этот мир — структура, описанная в документации, которая называется реестром Windows.
По документации, реестр — это центральное хранилище информации о настройках, параметрах и приложениях операционной системы. Он содержит ключи, значения и данные, определяющие работу Windows и программ, установленных на компьютере.
Вы, вероятно, никогда не обращали внимание на эту таинственную структуру, но именно она определяет поведение вашей операционной системы и влияет на вашу работу за компьютером.
Документация Windows предупреждает, что неправильное редактирование реестра может привести к серьезным проблемам с работой вашего компьютера, включая отказ от запуска системы или даже полное выход из строя. Будьте осторожны и не занимайтесь редактированием реестра без должной подготовки и знаний.
Таким образом, реестр Windows — это нечто гораздо более сложное и важное, чем просто набор ключей и значений. Это основа работы операционной системы, которая требует особого подхода и понимания для того, чтобы избежать негативных последствий.Следите за обновлениями документации и изучайте реестр более глубоко, чтобы раскрыть все его секреты.
Описание структуры и документации реестра Windows
В документации Windows можно найти информацию о том, какие ключи и значения отвечают за различные службы и настройки системы, какие параметры можно изменить для оптимизации работы операционной системы и какие данные необходимы для корректной работы приложений.
Структура реестра Windows представляет собой древовидную иерархию ключей, в каждом из которых содержатся значения, определяющие определенные настройки или параметры. Организация реестра позволяет операционной системе быстро найти необходимую информацию и использовать ее для правильной работы программ и системы в целом.
Ключ | Значение |
---|---|
HKCU | Текущий пользователь |
HKLM | Локальная машина |
HKCR | Корневой ключ классов |
С помощью документации и понимания структуры реестра Windows можно проводить настройку системы, решать проблемы с работой приложений и даже улучшать производительность компьютера. Понимание принципов работы реестра позволяет эффективно управлять всеми аспектами операционной системы и использовать ее в полной мере.
Назначение и структура документа для пользователей с опытом
В документе содержится огромное количество информации, структурированной в виде иерархических веток и узлов. Для опытного пользователя это может показаться сложным, но каждая ветка содержит ключевые настройки для работы операционной системы. Документ помогает в настройке, обслуживании и управлении Windows.
Важно отметить, что структура документа обеспечивает доступ к всем настройкам системы. Таким образом, опытный пользователь может легко настроить параметры системы с помощью соответствующих ключей в реестре. Несмотря на то, что документ предназначен для продвинутых пользователей, понимание его структуры занимает время и требует опыта работы с операционной системой.
В документе содержатся ключи и значения, определяющие поведение системы. Эти данные хранятся в надежной и защищенной структуре, обеспечивая целостность и стабильность операционной системы. Структура документа позволяет легко находить и изменять настройки системы, что делает его важным инструментом для опытных пользователей.
Таким образом, понимание структуры документа и его назначение помогают опытным пользователям успешно настраивать и поддерживать Windows. Важно помнить, что хорошее знание реестра позволяет эффективно управлять ключевыми параметрами системы и повышает стабильность работы операционной системы.
Основные сегменты системы
Опытный пользователь знает, что структура документации реестра состоит из нескольких ключевых разделов.
Первым из них является «HKEY_CLASSES_ROOT», который содержит информацию об ассоциациях файлов и объектов.
Далее следует раздел «HKEY_CURRENT_USER», в котором хранятся настройки и параметры текущего пользователя.
Следующий раздел — «HKEY_LOCAL_MACHINE», содержит информацию о программном обеспечении и оборудовании компьютера.
И, наконец, можно обратить внимание на раздел «HKEY_USERS», где хранятся данные о пользователях, зарегистрированных в системе.
Стоит отметить, что каждый из этих разделов имеет свою уникальную структуру и ключи, что обеспечивает корректную работу операционной системы.
Редактирование записей в операционной системе Microsoft
Опытные пользователи, желающие изменить настройки или исправить ошибки в системе, могут обратиться к документации, которая содержит описание процесса редактирования записей.
Важно помнить, что редактирование реестра может повлечь за собой серьезные последствия, поэтому перед внесением изменений необходимо создать резервную копию системы.
Пользователи могут найти множество статей и видеоуроков, которые подробно объясняют, как редактировать записи в реестре Windows.
Некоторые ключи и параметры в реестре требуют специальных привилегий для доступа, поэтому при редактировании важно быть осторожным и следовать инструкциям.
Только имея хорошие знания об операционной системе и опыт работы с реестром, пользователь может успешно изменить значения и параметры, не повредив работу компьютера.
Проведя анализ документации и ознакомившись с рекомендациями опытных специалистов, пользователь сможет осуществить редактирование записей в реестре Windows без неприятных последствий.
Ошибки в системном реестре и их исправление
При работе с структурой операционной системы возможны различные сбои и ошибки. Для опытного пользователя важно знать, как правильно их исправить, чтобы избежать возможных проблем в будущем.
- Получение доступа к системным файлам и ключам реестра требует особой осторожности, поэтому перед внесением изменений лучше создать резервную копию для восстановления.
- Одной из распространенных ошибок является неправильное удаление ключей или файлов из реестра, что может привести к некорректной работе операционной системы.
- Для исправления ошибок в реестре Windows можно воспользоваться инструментами операционной системы или сторонними программами, предназначенными для работы с реестром.
Один из способов исправления ошибок в реестре — восстановление системы с помощью точки восстановления, которую можно создать заранее или использовать стандартные точки, предоставляемые Windows.
При возникновении серьезных проблем с реестром Windows рекомендуется обращаться к документации (Docs) или к опытному специалисту, чтобы избежать дополнительных ошибок и повреждений операционной системы.
Опытные методы защиты реестра от возможных повреждений
Первым шагом является регулярное создание резервных копий реестра. Для этого можно использовать встроенные инструменты Windows или сторонние программы. Этот шаг поможет восстановить поврежденный реестр в случае возникновения проблем.
Другим эффективным методом защиты является контроль изменений в реестре. Существуют специальные программы, которые мониторят изменения в реестре и предупреждают пользователя о возможных угрозах. Это помогает немедленно принять меры по исправлению проблемы.
Для более сложных случаев существуют документация и рекомендации от разработчиков Windows. В документации (docs) описаны методы восстановления реестра после критических сбоев или атак вредоносного ПО.
Опытные пользователи также рекомендуют регулярно проводить сканирование системы на вирусы и малварь. Вредоносное программное обеспечение часто направлено на разрушение реестра, что может привести к серьезным проблемам с работоспособностью системы.
Исключительно важно, чтобы пользователь был внимателен и осторожен при установке нового программного обеспечения. Некоторые приложения могут проводить изменения в реестре без предупреждения, что может привести к нежелательным последствиям.
В целом, обеспечение безопасности реестра – это постоянный процесс, требующий внимания и оперативности со стороны пользователя. Соблюдение описанных выше методов и рекомендаций поможет избежать множества проблем и сохранить стабильность работы операционной системы.
В этом уроке мы более подробно рассмотрим устройство реестра операционной системы Windows (данная информация актуальна для XP, 7, 8, 8.1, 10).
Если вы хотите узнать, что такое системный реестр, можете начать с предыдущего урока, в нём я всё подробно рассказал, вот ссылка. Если же вам уже знакомы основы, то приглашаю погрузиться в глубины реестра ОС Windows.
Как устроен реестр Windows
Структуру реестра можно увидеть в специальной программе «Редактор реестра» (подробные инструкции по его запуску можно найти здесь).
Самый простой вариант запуска: нажмите сочетание клавиш Win+R, введите команду regedit и нажмите ОК.
Редактор реестра очень похож на проводник, а структура реестра похожа на файловую систему вашего компьютера:
— слева отображаются разделы, похожие на папки, внутри них есть подразделы (совсем как подпапки);
— справа отображаются параметры (очень похожи на файлы) и их значения.
Устройство реестра Windows 10
Разделы реестра Windows
Реестр Windows 10, 8, 7, XP состоит из пяти стандартных разделов – корневых ключей:
- HKEY_CLASSES_ROOT – информация о зарегистрированных в Windows типах файлов
- HKEY_CURRENT_USER – настройки пользователя, вошедшего в Windows
- HKEY_LOCAL_MACHINE – настройки, относящиеся к компьютеру
- HKEY_USERS – настройки для всех пользователей
- HKEY_CURRENT_CONFIG – сведения о настройках оборудования
Для простоты, их часто указывают в сокращенном обозначении (аббревиатура из первых букв): HKCR, HKCU, HKLM, HKU, HKCC.
Назначение разделов реестра
Разберемся с разделами реестра Windows 10 немного подробнее (если покажется сложным, переходите сразу к параметрам реестра):
Раздел реестра | Описание |
---|---|
HKEY_CLASSES_ROOT (HKCR) |
Раздел хранит информацию о всех типах файлов, о которых должна знать Windows (avi, doc, jpg и все остальные). Для каждого типа указана программа, связанная с ним, закреплен значок, который отображается в проводнике, приведены команды, которые можно использовать для данных файлов (открыть, печать и т.д.) После установки различных программ, здесь регистрируются новые типы файлов (например, после установки архиватора 7-Zip появляется тип файла .7z) Раздел является копией подраздела HKEY_LOCAL_MACHINE\Software\Classes |
HKEY_CURRENT_USER (HKCU) |
Этот раздел содержит настройки пользователя, вошедшего в систему в данный момент. Здесь хранятся настройки экрана, раскладка клавиатуры, сетевые подключения, настройки программ и многое другое. Большинство рекомендаций по настройке реестра относятся к этому разделу. |
HKEY_USERS (HKU) |
Здесь находятся настройки всех пользователей операционной системы, а также настройки по умолчанию. На самом деле раздел HKEY_CURRENT_USER – это один из подразделов раздела HKEY_USERS и все изменения настроек, совершенные пользователем, сохраняются в выделенном для него подразделе. |
HKEY_LOCAL_MACHINE (HKLM) |
В этом разделе хранится информация о настройках компьютера (программной и аппаратной конфигурации). Всё, что вы измените в этом разделе, будет влиять на всех пользователей ПК. Этот раздел второй по популярности вносимых изменений. |
HKEY_CURRENT_CONFIG (HKCC) |
Раздел содержит информацию о настройке оборудования для текущего сеанса (профиль оборудования). Этот раздел является копией подраздела «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles» и практически не используется при ручных изменениях. |
Поздравляю, мы уже разобрались с половиной урока, и вы знаете о пяти корневых разделах реестра!
Чтобы изучить устройство реестра, осталось познакомиться с параметрами и их значениями.
Виды параметров реестра Windows
Как мы уже знаем, разделы и подразделы содержат параметры (на английском языке — value entries). Параметры могут иметь различные значения, например: путь к файлу, название программы, различные числа и т.д.
Пример структуры реестра Windows 10
Параметры реестра делятся на три основных типа (и несколько разновидностей):
- Строковые параметры – REG_SZ
- Двоичные параметры – REG_BINARY
- DWORD-параметры – REG_DWORD
Подробнее о параметрах реестра
Попробую кратко описать отличия параметров реестра:
Параметр | Описание |
---|---|
Строковый параметр REG_SZ |
Содержит строку текста, например, путь к файлу или папке («C:\Windows»). |
Расширенный строковый параметр REG_EXPAND_SZ |
Может содержать специальные переменные, например, вместо «C:\Windows» можно указать %systemroot% (фактически, это будет тот же путь, но мы можем использовать его, если не знаем заранее, куда установлена ОС). |
Многострочный параметр REG_MULTI_SZ |
Может содержать более одной строки, удобно, если нужно внести целый список. |
Двоичный параметр REG_BINARY |
Набор двоичных данных, которые отображаются в шестнадцатеричном формате (например, 10 82 A0 8F). Используется для хранения информации об оборудовании. |
Параметр DWORD REG_DWORD |
Это целое число, которое может быть в двоичном, десятичном или шестнадцатеричном виде (например, 0x00000020 (32) — в скобках указано десятичное значение ключа). Длина числа – 4 байта (32 бита). Часто этот параметр работает как переключатель: 1 – включено, 0 – выключено. |
На самом деле, видов параметров в два раза больше, но чтобы понять принципы устройства реестра, их разбирать не обязательно (но если желание появилось, обязательно напишите в комментариях!)
Внешний вид различных параметров
Вот как отображаются все перечисленные параметры в редакторе реестра:
Виды параметров реестра в Windows 10 и 8 (пример)
То есть, все виды строковых параметров обозначаются значком с буквами «ab», а двоичные и числовые параметры обозначаются значком с цифрами «0011».
Ух ты, кажется, мы рассмотрели всё, что нужно!
Заключение
Итак, в этом уроке мы разобрались с устройством реестра Windows 10/8/7/XP.
Давайте повторим: реестр состоит из пяти разделов, которые могут содержать подразделы (как папки в проводнике). В разделах и подразделах находятся параметры (строковые и числовые). Изменяя значения параметров, мы можем изменять настройки операционной системы, программ и пользователя.
Не слишком сложно?
Жду ваших отзывов и вопросов в комментариях!
В следующем уроке мы узнаем, где хранится реестр на жестком диске. Подписывайтесь на новости, делитесь с друзьями в социальных сетях.
P.S. Минутка юмора
А вот что бывает, если не изучать IT-уроки 🙂
Автор: Сергей Бондаренко http://it-uroki.ru/
Копирование запрещено, но можно делиться ссылками:
Поделитесь с друзьями:
Много интересного в соц.сетях:
О чём эта статья.
Итак, сегодня разговор пойдёт о теме , казалось бы, не очень важной, но, по сути, очень нужной каждому пользователю Windows (а таких подавляющее большинство) – о том, что такое реестр, из чего состоит, зачем он нужен и как его сохранить в своих закромах. Итак, что же такое вообще реестр? Если говорить по сути – это огромная, иерархически построенная база данных, работающая от запросов пользователя. Эта база данных нужна для систематизации данных о системе, а также оптимизации доступа к ним. Реестр содержит множество разноплановой информации как об обычных настройках операционной системы, так и об различных тонких настройках – в том числе, настройках безопасности и работы с низкоуровневыми программами, а также драйверами.
Реестр не является какой-то внешней программой, он – часть операционной системы. Ntdetect ищет при загрузке системы именно файлы реестра и подгружает оттуда параметры этой самой загрузки . знание ключей реестра и знание их значимости необходимо для эффективно управления системой. А также хотя бы для элементарной диагностики «почему это работает не так». Реестр является древовидной системой каталогов значений/ключей. Которые отвечают за определенные настройки. Причем следует учитывать, что разные ключи могут иметь различный тип – от логического до строкового.
Показательная анатомия.
Итак, стоит рассказать, из чего физически состоит реестр и как он работает. Сразу стоит оговориться. Что в том виде, в каком реестр представляется пользователю он нигде не хранится и для его редактирования необходимы специальные программы – редакторы реестра. Стандартные regedit.exe и regedit32.exe вполне подойдут. В процессе настройки и установки системы формируется некоторая часть данных реестра, а также в процессе работы системы – другая. В результате при загрузке системы формируется виртуальный объект REGISTRY\, который и является реестром. Для редактирования, просмотра и изучения реестра стандартными средствами Windows (программы regedit.exe и regedt32.exe) доступны именно ветки реестра. После редактирования реестра и/или внесения в него изменений эти изменения сразу записываются в файлы, являющиеся составными частями реестра. Таковыми являются, в Windows 95 и Windows 98 user.dat и system.dat; в Windows ME — user.dat, classes.dat и system.dat. В более поздних версиях системы появилось куда большое количество необходимых файлов.
О недостатках и как на этих недостатках зарабатывают мошенники.
На самом деле система достаточно сложна, однако достаточно надежна. Из-за чрезмерной сложности возникают сложности с фрагментацией реестра, следовательно – со скоростью его работы. Также реестр имеет свойство чрезмерно «толстеть» в результате накопления данных за долгое время работы, что также осложняет его функционирование. Эта проблема решается с помощью специальных программ по оптимизации и чистке реестра. Самостоятельно занимаясь этим вопросом следует помнить, что не стоит удалять что-то из реестра, если не знаешь о его назначении – так можно серьезно повредить систему, а то и вообще вывести ее из строя. Кроме того на этих проблемах стараются неслабо навариться мошенники – сеть полна предложениями «скачать программу по оптимизации реестра, после установки которой компьютер будет работать быстрее на 30%». Обычно за таким предложением следует форма по отправке СМС, которое подтверждает предыдущие подозрения. Не стоит обращать внимания на подобные вещи, а тем более верить им – тогда не потеряете ни денег, ни нервов.
Основные ветки реестра, их значение и назначение.
HKEY_CLASSES_ROOT — это ссылка на раздел HKEY_LOCAL_MACHINE\ Software\Classes. Хранящиеся здесь сведения обеспечивают запуск необходимой программы при открытии файла с помощью проводника. Этот раздел содержит связи между приложениями и типами файлов, а также информацию об OLE.
HKEY_USERS — этот раздел содержит настройки для всех пользователей компьютера.
HKEY_CURRENT_USER – данная ветка является ссылкой на конкретный внутренний подраздел HKEY_USERS. Все настройки выставляются в соответсвии с тем, какой из пользователей находится в данный момент в системе (т.е. какая сессия активна).
HKEY_LOCAL_MACHINE – содержит практически настройки и параметры, принадлежащие данному компьютеру, в том числе аппаратные настройки, конфигурация аппаратного обеспечения и профилей пользователей.
HKEY_CURRENT_CONFIG – по сути, всего лишь ссылка на HKEY_LOCAL_MACHINE\ SYSTEM \CurrentControlSet\ Hardware Profiles\Current. Там находятся все входящие настройки аппаратной части, необходимой для запуска системы.
Написанные выше основные стандартные разделы нельзя удалить или переименовать. Некоторые разделы реестра являются энергозависимыми (volatile) и не хранятся в каком-либо файле. ОС создает и управляет этими разделами полностью в оперативной памяти, не сохраняя их на жёсткий диск, поэтому они являются временными по своей природе. Система создает энергозависимые разделы каждый раз при начальной загрузке. Например, HKEY_LOCAL_MACHINE \HARDWARE — раздел реестра, который хранит информацию по аппаратным устройствам и назначенным для них ресурсам. Назначение ресурса и аппаратное обнаружение происходят каждый раз при загрузке системы, поэтому логично и естественно, что этим данным не требуется постоянное хранение на жёстком диске.
Как сохранить «уже нажитое».
Иногда бывает полезно сделать бэкап (резервную копию) системного реестра – из-за опасений его повреждения . Это может произойти в результате неудачных экспериментов с реестром, неправильной установки драйверов и еще многих десятков причин. Да и иметь ее «на всякий случай» тоже не помешает. Для того, чтобы не делать это всякий раз вручную, можно использовать одну из многих программ-автобекаперов, например, Comodo Backup.
Для уж особой нажежности можно забекапить и джобы самого самого комодо – для этого можно написать системный скрипт (bat-файл, который поможет в этом случае). Для того чтобы он работал, достаточно, набрать нижеприведенный код в «блокноте», а после сохранить файл с расширением .bat. Если нужно сохранить настройки, хранящиеся в реестре, делаем батник, экспортирующий их в регфайл(ы), прописываем его в графе run befor start of backup и включаем его в архив. Код получится таким:
@echo off
del CmdBackUp1.reg
del CmdBackUp2.reg
regedit /e C:\BAT\CmdBackUp1.reg «HKEY_CURRENT_USER\Software\ComodoGroup\Comodo BackUp»
regedit /e C:\BAT\CmdBackUp2.reg «HKEY_LOCAL_MACHINE\SOFTWARE\ComodoGroup\Comodo Backup\Backup»
Таким образом, в данной статье мы рассмотрели основные ветки и особенности реестра Windows, а также решили проблему бекапа . Эти знания не будут лишними ни для кого, однако надеемся, чтобы всякий созданный вами бэкап был лишь страховкой, но никак не последним шансом=)
Реестр Windows (англ. Windows Registry), или системный реестр — иерархически построенная база данных параметров и настроек в большинстве операционных систем Microsoft Windows.
Реестр содержит информацию и настройки для аппаратного обеспечения, программного обеспечения, профилей пользователей, предустановки. Большинство изменений в Панели управления, ассоциации файлов, системные политики, список установленного ПО фиксируются в реестре.
Реестр Windows был введён для упорядочения информации, хранившейся до этого во множестве INI-файлов, обеспечения единого механизма (API) записи-чтения настроек и избавления от проблем коротких имён, отсутствия разграничения прав доступа и медленного доступа к ini-файлам, хранящимся на файловой системе FAT16, имевшей серьёзные проблемы быстродействия при поиске файлов в каталогах с большим их количеством. Со временем (окончательно — с появлением файловой системы NTFS) проблемы, решавшиеся реестром, исчезли, но реестр остался из-за обратной совместимости и присутствует во всех версиях Windows, включая последнюю. Поскольку сейчас не существует реальных предпосылок для использования подобного механизма, Microsoft Windows — единственная (не считая ReactOS и eComStation) операционная система из используемых сегодня, в которой используется механизм реестра операционной системы.
Реестр Windows 3.1[править | править код]
Сам реестр как древовидная иерархическая база данных (registration database — регистрационная база) впервые появился в Windows 3.1 (апрель 1992). Это был всего один двоичный файл, который назывался REG.DAT и хранился в каталоге C:\Windows\. Реестр Windows 3.1 имел только одну ветку HKEY_CLASSES_ROOT. Он служил для связи DDE, а позднее и OLE-объектов.
Одновременно c появлением реестра в Windows 3.1 появилась программа REGEDIT.EXE для просмотра и редактирования реестра.
Первый реестр уже имел возможность импорта данных из *.REG-файлов. В базовой поставке шёл файл SETUP.REG, содержащий данные по основным расширениям и типам файлов.
Реестр Windows 3.1 имел ограничение на максимальный размер файла REG.DAT — 64 Кбайт. Если реестр превышал этот размер, файл реестра (REG.DAT) приходилось удалять и собирать заново либо из *.REG-файлов либо вводить данные вручную.
Реестр Windows NT 3.1[править | править код]
Следующий шаг был сделан в Windows NT 3.1 (июль 1993). Произошёл отказ от устаревших файлов MS-DOS: AUTOEXEC.BAT и CONFIG.SYS, а также от INI-файлов как от основных файлов конфигурации. На «регистрационную базу» (реестр) была переведена вся конфигурация системы. Основой конфигурации системы стал реестр. Он имел 4 корневых раздела: HKEY_ LOCAL_MACHINE, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT и HKEY_USERS.
Реестр стал «сборным»: на диске он хранился в файлах: DEFAULT, SOFTWARE, SYSTEM, а при запуске системы из этих файлов собиралась единая БД.
В комплекте поставки оставался файл REGEDIT.EXE, который по-прежнему позволял просматривать и редактировать только ветку HKEY_CLASSES_ROOT, и появился файл REGEDT32.EXE, который редактировал все ветки реестра.
Далее технология и идеология (назначение) реестра уже не менялись. Все последующие версии Windows (NT 3.5, 95, NT 4.0, 98, 2000, XP, Vista, 7, 8, 10) использовали реестр как основную БД, содержащую все основные данные по конфигурации как самой ОС, так и прикладных программ. Далее менялись названия файлов реестра и их расположение, а также название и назначение ключей.
Реестр в том виде, как его использует Windows и как видит его пользователь в процессе использования программ работы с реестром, формируется из различных данных. Чтобы получилось то, что видит пользователь, редактируя реестр, происходит следующее.
Вначале в процессе установки настройки Windows на диске формируются файлы, в которых хранится часть данных, относящихся к конфигурации системы.
Затем в процессе каждой загрузки системы, а также в процессе каждого входа и выхода каждого из пользователей формируется некая виртуальная сущность, называемая «реестром», — объект REGISTRY\. Данные для формирования «реестра» частично берутся из тех самых файлов (Software, System …), частично из информации, собранной ntdetect при загрузке (HKLM\Hardware\Description). То есть часть данных реестра хранится в файлах, а часть данных формируется в процессе загрузки Windows.
Для редактирования, просмотра и изучения реестра стандартными средствами Windows (программы regedit.exe и regedt32.exe) доступны именно ветки реестра. После редактирования реестра и/или внесения в него изменений эти изменения сразу записываются в файлы. Однако есть программы сторонних разработчиков, которые позволяют работать непосредственно с файлами.
Программы оптимизации реестра, твикеры, а также инсталляторы и деинсталляторы программ работают через специальные функции работы с реестром.
Windows 95/98[править | править код]
- User.dat
- System.dat
Windows ME[править | править код]
- Classes.dat
- User.dat
Windows 2000[править | править код]
В Windows 2000 количество кустов реестра осталось таким же, как и в WIndows NT 5.0.
5 кустов, один из которых является ссылкой на раздел в HKEY_USERS. Сам куст называется HKEY_CURRENT_USER
Windows XP[править | править код]
в Windows XP файлы реестра хранятся в следующих местах:
- 03= Ветка реестра «HKEY_LOCAL_MACHINE\SYSTEM» формируется из файла «%SystemRoot%\System32\config\SYSTEM»
- 04= Ветка реестра «HKEY_LOCAL_MACHINE\SOFTWARE» формируется из файла «%SystemRoot%\System32\config\SOFTWARE»
- 05= Ветка реестра «HKEY_LOCAL_MACHINE\SECURITY» формируется из файла «%SystemRoot%\System32\config\SECURITY»
- 06= Ветка реестра «HKEY_LOCAL_MACHINE\SAM» формируется из файла «%SystemRoot%\System32\config\SAM»
- 07= Ветка реестра «HKEY_USERS\.DEFAULT» формируется из файла «%SystemRoot%\System32\config\DEFAULT»
- 09= Ветка реестра «HKEY_USERS\S-1-5-19» формируется из файла «%SystemDrive%\Documents and Settings\LocalService\NTUSER.DAT»
- 10= Ветка реестра «HKEY_USERS\S-1-5-20» формируется из файла «%SystemDrive%\Documents and Settings\NetworkService\NTUSER.DAT»
- 11= Ветка реестра «HKEY_USERS\<SID_пользователя>» формируется из файла «%SystemDrive%\Documents and Settings\<Папка пользователя>\NTUSER.DAT»
- 12= Ветка реестра «HKEY_USERS\<SID_пользователя>_Classes» формируется из файла «%SystemDrive%\Documents and Settings\<Папка пользователя>\Local Settings\Application Data\Microsoft\Windows\UsrClass.dat»
Windows Vista[править | править код]
В Windows Vista файлы реестра хранятся там же, где и в Windows XP.
Windows 7[править | править код]
В Windows 7, согласно сведениям из HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist файлы реестра хранятся в следующих местах:
- 01= Ветка реестра «HKEY_LOCAL_MACHINE\HARDWARE» формируется в зависимости от оборудования (динамически);
- 02= Ветка реестра «HKEY_LOCAL_MACHINE\BCD00000000» формируется из файла «%SystemRoot%\Boot\BCD»
- 03= Ветка реестра «HKEY_LOCAL_MACHINE\SYSTEM» формируется из файла «%SystemRoot%\System32\config\SYSTEM»
- 04= Ветка реестра «HKEY_LOCAL_MACHINE\SOFTWARE» формируется из файла «%SystemRoot%\System32\config\SOFTWARE»
- 05= Ветка реестра «HKEY_LOCAL_MACHINE\SECURITY» формируется из файла «%SystemRoot%\System32\config\SECURITY»
- 06= Ветка реестра «HKEY_LOCAL_MACHINE\SAM» формируется из файла «%SystemRoot%\System32\config\SAM»
- 07= Ветка реестра «HKEY_USERS\.DEFAULT» формируется из файла «%SystemRoot%\System32\config\DEFAULT»
- 08= Ветка реестра «HKEY_USERS\S-1-5-18» формируется из файла «%SystemRoot%\System32\config\systemprofile\NTUSER.DAT» (относится к учётной записи system)[1]
- 09= Ветка реестра «HKEY_USERS\S-1-5-19» формируется из файла «%SystemRoot%\ServiceProfiles\LocalService\NTUSER.DAT» (относится к учётной записи LocalService)
- 10= Ветка реестра «HKEY_USERS\S-1-5-20» формируется из файла «%SystemRoot%\ServiceProfiles\NetworkService\NTUSER.DAT» (относится к учётной записи NetworkService)
- 11= Ветка реестра «HKEY_USERS\<SID_пользователя>» формируется из файла «%USERPROFILE%\NTUSER.DAT», где под %USERPROFILE% подразумевается путь к папке соответствующего пользователя.
- 12= Ветка реестра «HKEY_USERS\<SID_пользователя>_Classes» формируется из файла «%USERPROFILE%\AppData\Local\Microsoft\Windows\UsrClass.dat»
Резервные копии файлов реестра DEFAULT, SAM, SECURITY, SOFTWARE и SYSTEM находятся в папке «%SystemRoot%\System32\config\RegBack». Само резервное копирование производится силами Планировщика задач в 0 ч. 00 мин. каждые 10 дней по заданию «RegIdleBackup», расположенному в иерархии задач по пути «\Microsoft\Windows\Registry».
Ветка реестра «HKEY_CURRENT_USER» формируется из файла «%USERPROFILE%\NTUSER.DAT», где под %USERPROFILE% подразумевается путь к папке текущего пользователя.
Реестр 64-разрядных версий Windows XP и Windows Server 2003 и Windows Vista подразделяется на 32- и 64-разрядные разделы. Большинство 32-разрядных разделов имеют те же имена, что и их аналоги в 64-разрядном разделе, и наоборот. По умолчанию редактор реестра 64-разрядных версий Windows XP, Windows Server 2003 и Windows Vista отображает 32-разрядные разделы в узле HKEY_LOCAL_MACHINE\Software\WOW6432Node.
HKEY_CURRENT_USER[править | править код]
Данный раздел содержит настройки текущего активного пользователя, вошедшего в систему. Здесь хранятся папки пользователя, цвета экрана и параметры панели управления. Эти сведения сопоставлены с профилем пользователя. Вместо полного имени раздела иногда используется аббревиатура HKCU.[2] Хотя этот раздел выглядит как один из основных в редакторе реестра, он является всего лишь ссылкой на один из профилей HKEY_USERS\.
HKEY_USERS[править | править код]
Раздел HKEY_USERS (псевдоним HKU) содержит информацию о профилях всех пользователей данного компьютера.
Данный раздел практически никогда не используется пользователями. Следует отметить связь данного корневого раздела с разделом HKEY_CURRENT_USER, который фактически является ссылкой подраздела корневого раздела HKEY_USERS, хранящего сведения о текущем пользователе.
HKEY_LOCAL_MACHINE[править | править код]
Раздел содержит параметры конфигурации, относящиеся к данному компьютеру (для всех пользователей). Вместо полного имени раздела иногда используется аббревиатура HKLM.[2]
HKEY_CLASSES_ROOT[править | править код]
Является подразделом HKEY_LOCAL_MACHINE\Software\Classes. В основном, содержит информацию о зарегистрированных типах файлов и объектах COM и ActiveX. Вместо полного имени раздела иногда используется аббревиатура HKCR. Начиная с Windows 2000 эти сведения хранятся как в LOCAL_MACHINE, так и в CURRENT_USER. Раздел HKLM\Software\Classes содержит параметры по умолчанию, которые относятся ко всем пользователям локального компьютера. Параметры, содержащиеся в разделе HKCU\Software\Classes, относятся только к текущему пользователю, имея приоритет над стандартными. Раздел CLASSES_ROOT включает в себя данные из обоих источников. Кроме того, раздел CLASSES_ROOT предоставляет объединённые данные программам, написанным под ранние версии Windows. Изменения настроек текущего пользователя выполняются в разделе HKCU\Software\Classes. Модификация параметров по умолчанию должна производиться в разделе HKLM\Software\Classes. Данные из разделов, добавленных в CLASSES_ROOT, будут сохранены системой в разделе HKLM\Software\Classes. Если изменяется параметр в одном из подразделов раздела CLASSES_ROOT и такой подраздел уже существует в HKCU\Software\Classes, то для хранения информации будет использован раздел HKCU\Software\Classes, а не аналогичный раздел в LOCAL_MACHINE.[2]
HKEY_CURRENT_CONFIG[править | править код]
Данный раздел содержит сведения о профиле оборудования, используемом локальным компьютером при запуске системы.[2] Является ссылкой на HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current
HKEY_DYN_DATA[править | править код]
Данный раздел имеется только в реестре ОС семейства Windows 9x/ME. Содержит динамически изменяемые данные о компьютере (загрузка процессора, размер файла подкачки и т. п.).[2]
Способ хранения параметров и настроек операционной системы при помощи реестра Windows часто подвергается критике по следующим причинам:
- Реестр хранится в небольшом количестве объёмных (по нескольку сотен мегабайт) файлов, вследствие чего высока вероятность повреждения данных. Также большие файлы подвержены фрагментации, что замедляет доступ к реестру на обычных жёстких дисках (твердотельные накопители решают эту проблему).
- В связи с тем, что, помимо настроек, в реестре хранится различная информация системы и приложений (например, многие приложения хранят в реестре список недавно открытых файлов), размер реестра значительно увеличивается по мере использования операционной системы. Эта проблема частично решается при помощи специальных утилит.
- Не все настройки системы хранятся в реестре, соответственно, перенос настроек системы путём копирования реестра невозможен.
- Некоторые программы не могут работать без параметров, занесённых в реестр, что создаёт трудности при переносе их с компьютера на компьютер, или теряют данные после переустановки операционной системы.
- Реестр очень похож на виртуальную файловую систему, работающую поверх реальной файловой системы. При этом, как для файловой системы, реестр очень неустойчив к сбоям. Фактически один неверный байт в файле куста (ветки реестра, подобие корневому каталогу в файловых системах) приводит к сбою при попытке загрузки куста, и (для системных кустов) отказу операционной системы. Надёжность такого реестра никогда не будет выше надёжности файловой системы, на которой расположены его файлы. Однако версии Windows начиная с NT используют логи транзакций в качестве средства защиты от повреждений при обновлении реестра. Текущие версии Windows используют логи двух уровней для того, чтобы обеспечить целостность реестра в случае отказа питания или других подобных событий во время обновления реестра.[3] Даже в случае ошибки, из-за которой невозможно восстановить реестр, Windows может починить и инициализировать повреждённые записи реестра во время загрузки системы.[3]
Критики приводят в пример UNIX-подобные операционные системы, где нет реестра и выполняемые им задачи решаются другими средствами.
- WinTools.net
- glary utilites
- regedit.exe
- regedt32.exe
- Reg Organizer
- Test-Run by BB
- CCleaner
- Ashampoo WinOptimizer
- Wise Reg Cleaner
- AuslogicsBoostSpeed
- TuneUp Utilities
- Jv16 PowerTools
- chntpw
Существуют недобросовестные рекламируемые программы, обещающие в числе прочего оптимизацию работы реестра. Они могут использоваться как для получения прибыли от продажи по необоснованно высокой цене, так и для распространения вирусов. Такие программы даже в теории не работают, поскольку дефрагментировать большие файлы реестра, которые к тому же являются системными — бесполезно. Очень спорный и бездоказательный тезис, отсутствуют списки ПО и конкретные претензии к нему по конкретным якобы невыполняемым пунктам среди зявленных.
В описании реестра в английской литературе, среди прочих, используется термин Hive. В некоторых работах его переводят на русский как «дерево». Microsoft в своих документах переводит это как куст. Например:
Registry hive HKEY_LOCAL_MACHINE\SAM == Куст реестра HKEY_LOCAL_MACHINE\SAM[2][4]
Древо (куст) реестра — это подмножество разделов, подразделов и параметров реестра, которому сопоставлен набор вспомогательных файлов, содержащих резервные копии этих данных.[2]
0 — функция включена
1 — функция включена только для загрузки системы
2 — функция включена во время работы, но отключена при загрузки системы
3 — функция включена во всех режимах
- ↑ Хорошо известные идентификаторы безопасности в операционных системах Windows. Дата обращения: 14 мая 2011. Архивировано 4 марта 2015 года.
- ↑ 1 2 3 4 5 6 7 Сведения о реестре Windows для опытных пользователей. Дата обращения: 27 октября 2007. Архивировано 13 октября 2007 года.
- ↑ 1 2 Ionescu, Mark Russinovich, David A. Solomon, Alex. Registry Internals // Windows internals (неопр.). — 6th ed.. — Redmond, Wash.: Microsoft Press. — ISBN 978-0-7356-4873-9.
- ↑ Windows registry information for advanced users. Дата обращения: 27 октября 2007. Архивировано 16 мая 2008 года.
- Описание реестра Microsoft Windows (рус.)
- Интересное о реестре Windows, 15 июня 2009 (статья из ComputerBild)
- Как создавать, изменять или удалять подразделы и значения системного реестра с помощью файла записей регистрации (.reg) (англ.)
- MSDN — структура реестра, программирование реестра (англ.)
- Описание ключей реестра на официальном сайте TechNet (англ.)
- Описание известных идентификаторов безопасности в операционных системах Windows (рус.)