08:30 Системный реестр Windows | |
Хотя реестр организован довольно понятным образом, он представляет собой сложную и обширную структуру. Реестр был создан потому, что с файлами INI, которые появились в Windows 3.x пользователям приходилось думать, какой файл INI за что отвечает и как изменить в нужном файле ту или иную настройку. Часто было трудно выяснить месторасположение таких файлов для нужной программы. Кроме того отсутсвовал способ определения того, какая програма связана с конкретным INI файлом. С другой стороны, редактировать такие файлы было намного легче чем реестр. Одним из самых важных различий между файлами INI и реестром - расположение файлов.Почему произошел переход от ini файлов к реестру? Дело в том, что на эти файлы накладывается ряд серьезных ограничений, и главное из них состоит в том, что предельный размер такого файла составляет 64Кб. Где рассположены файлы реестра? Реестр хранится в двух файлах: System.dat и User.dat. Файл Policy.pol содержит системные правила, которые имеют приоритет над любыми параметрами, указанными в реестре. Этот файл используется в сетевой или многопользовательской среде и не инсталируется по умолчанию. Эти три файла находяться в папке с Windows. Если на данном компьютере несколько пользователею, то система создет несколько файлов User.dat. ПРЕДУПРЕЖДЕНИЕ: НИКОГДА не удаляйте или не меняйте информацию в реестре, если Вы не уверены что это именно то, что нужно. В противном случае некорректное изменение данных может привести к сбоям в работе Windows и, в лучшем случае, информацию придется восстанавливать из резервной копии. Реестр можно рассматривать как записную книжку Windows - как только системе нужна какая-то информация, то она ищет ее в реестре. Реестр очень обширен и дать однозначное его определение невозможно. Реестр - компонент операционной системы компьютера, который в иерархической базе данных хранит важнейшие установки и информацию о приложениях, системных операциях и пользовательской конфигурации. Реестр выполняет следующие основные функции: Отслеживает все системные устройства и их установки, включая такие ресурсы, как запросы на прерывания (IRQ) и номера каналов прямого доступа памяти (DMA). Работает как база данных, которая унифицирует функционирование приложений. Проверяет наличие необходимых драйверов для инсталируемого оборудования. При добавлении нового переферийного устройства Диспетчер конфигурации (Configuration manager) операционной системы помещает конфигурационные данные устройства в реестр. Предоставляет системные сервисы, которые необходимы для работы многих приложений. Обеспечивает запуск необходимого приложения при щелчке мышью. Сохраняет информацию относящуюся к системным правилам, профилям пользователей и средствам администрирования. Реестр - это не статическая база данных, он постоянно работает и постоянно обновляется. При запуске любой программы происходит множество обращений к реестру, еще больше обращений происходит при запуске компютера. Информация, хранящаяся в иерархической базе данных реестра, собрана в разделы (key), которые содержат один или более подразделов (subkey). Каждый подраздел содержит параметры (value): раздел подраздел 1 | параметр подраздел 2 подраздел 3 | параметр Возможность создавать вложенные подразделы позволяет группировать параметры. В результате получается древовидная структура, которую можно просмотреть в Редакторе реестра (Registry editor). Каждый раздел (ветвь) соответствует определенному типу информации о пользователе, аппаратном обеспечении, приложении и т.д. Замечание. Проводник использует ту же самую структуру для отображения иерархии каталогов файловой системы. Реестр можно сравнить с деревом каталогов: разделы и подразделы соответствуют каталогам в файловой системе, параметры соответствуют файлам. Шесть корневых разделов Реестр Windows состоит из шести корневых разделов (root keys), каждый из которых содержит определённый тип конфигурационной информации (т.е. пользовательские данные и установки, связанные с компьютером). Название каждого корневого раздела начинается с HKEY_, и каждый корневой раздел содержит несколько подразделов. Что содержит каждый корневой раздел? Каждая ветвь реестра содержит записи схожие по смыслу. Далее приводится краткое описание каждого из шести основных ветвей реестра, возможно, что некоторых разделов у вас может не оказаться, это зависит от версии ОС. HKEY_CLASSES_ROOT Эта ветвь содержит все данные, используемые в Windows для OLE и операций drag-and-drop, включая имена всех зарегистрированных типов файлов и их свойства. Зарегистрированные типы файлов позволяют пользователю открывать файлы двойным щелчком мыши. Свойства зарегистрированных типов файлов включает в себя значки, используемые для отображения файлов данного типа на экране, и команды (Открыть (Open), Печать (Print) и т.д.), которые пользователь может применять к файлам данного типа. Эта ветвь также содержит информацию для средств быстрого просмотра (Quick Viewers), обработчик страниц свойств (property sheet handlers),обработчик копий (copy hook handlers) и других компонентов OLE(таких как серверы OLE). Многие подразделы (.bat, .bmp и т. д.) имеют отношения к расширениям имён файлов. Для большинства подобных подразделов существует второй подраздел (batfile exefile и т. д.) в разделе HKEY_CLASSES_ROOT. Второй подраздел содержит свойства данного типа файлов, такие как значок, идентификатор класса (CLSID) и команды. Большинство записей HKEY_CLASSES_ROOT может быть также найдено в HKEY_LOCAL_MACHINE\SOFTWARE\Classes. HKEY_USERS Любая информация, определяемая пользователем (например, пользовательские настройки рабочего стола), содержится в разделе HKEY_USERS. Этот раздел содержит установки по умолчанию (HKEY_USERS\.DEFAULT) для рабочего стола, меню Пуск (Start), приложений и т. д. Когда новый пользователь входит в систему, установки по умолчанию копируются в отдельный подраздел, название которого совпадает с именем пользователя. Все изменения, которые пользователь в дальнейшем произведёт с этими установками будут сохранены в этом подразделе. HKEY_CURRENT_USER Пользовательские настройки из HKEY_USERS вступают в силу в процессе входа пользователя в систему. При этом содержимое подраздела HKEY_USERS\name, где name - имя текущего пользователя, или подраздела HKEY_USERS\.DEFAULT копируется в раздел HKEY_CURRENT_USER. Раздел HKEY_CURRENT_USER содержит несколько подразделов: AppEvents - содержит пути звуковых файлов, используемых для озвучивания системных событий. Control Panel - содержит различные данные, которые могут быть изменены в панели управления. Display - содержит пользовательские установки экрана для текущего пользователя (этот подраздел доступен, только если разрешены пользовательские профили (user profiles)). InstallLocationsMRU - содержит пути, использованные в процессе последней инсталляции. Keyboard layout - содержит информацию о раскладке клавиатуры. Текущая раскладка клавиатуры устанавливается с использованием пункта Клавиатура (Keyboard) панели управления. Network - содержит подразделы, описывающие постоянные и недавно установленные сетевые соединения, а также состояние сети. RemoteAccess - необязательный подраздел, доступный только в случае, если установлен сервис удалённого доступа. SOFTWARE- содержит пользовательские настройки приложений. Этот раздел ссылается на раздел HKEY_LOCAL_MACHINE, в которой также хранятся настройки приложений. HKEY_LOCAL_MACHINE Этот раздел определяет всю информацию, относящуюся к локальному компьютеру, такую как драйверы, установленное программное обеспечение, наименование портов и конфигураций программного обеспечения. Эта информация верна для всех пользователей, подключённых к системе. Раздел HKEY_LOCAL_MACHINE состоит из нескольких подразделов: Config - хранит конфигурацию компьютера. Содержимое данного подраздела обновляется в процессе установки и запуска Windows. Подраздел содержит две записи: одну для параметров экрана, другую для доступных системных принтеров. Hardware - содержит установки для последовательных портов доступных на локальном компьютере. Подраздел Description содержит записи для устройств, в системе. Network - когда Windows работает в сети, этот подраздел содержит регистрационную информацию пользователя (т.е. имя пользователя, сетевого провайдера, подтверждения регистрации и т.д.). Security - доступен для сетевых машин и содержит информацию о провайдере безопасности. Software - вся информация о программах, установленных на компьютере, хранится здесь. Подраздел \Classes этого раздела используется для построения раздела HKEY_CLASSES_ROOT System - содержит всю необходимую информацию для запуска Windows. Здесь содержится подраздел CurreentControlSet, в котором содержатся подразделы Control и Servicer. Подраздел Control содержит такую информацию, как имя компьютера, параметры файловой системы и т.д. HKEY_CURRENT_CONFIG Этот раздел отвечает за устройство Plug&Play и содержит информацию о текущей конфигурации компьютера с переменным составом аппаратных средств. Установки этого раздела, соответствуют конфигурационным установкам, хранящимся в разделе HKEY_LOCAL_MACHINE\Config HKEY_DYN_DATA Этот раздел содержит подразделы, хранящие динамическую информацию о состоянии различных устройств. Эти данные могут быть использованы для выявления конфликтов оборудования, определения состояния устройств и изменяющихся конфигураций. Вкладка Устройства диалога Система, вызываемого из Панели Управления, использует эти данные для отображения текущей системной конфигурации. Все данные этого раздела считываются и модифицируются системой. Некоторые данные могут быть изменены пользователем, в то время как другие модифицируются только самой системой. Почему одинаковые подразделы присутствуют в разных ветвях? Некоторые имена подразделов реестра присутствуют более чем в одной ветви реестра. Это происходит потому, что определённые подразделы являются производными от подразделов других ветвей. Операционная система Windows автоматически записывает все изменения, сделанные пользователем, во все связанные подразделы. Таким образом, например, изменения в HKEY_LOCAL_MACHINE\Software\CLASSES также появится в разделе HKEY_CLASSES_ROOT, поскольку раздел HKEY_CLASSES_ROOT является производным от раздела HKEY_LOCAL_MACHINE\Software\CLASSES. Исключение составляет ветвь \SoftwareMicrosoft\Windows\CurrentVersion, которая присутствуем в разделах HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE. Несмотря на то что название ветви, идущее после названия двух корневых разделов, одно и то же, содержимое каждой полной ветви отличается. Записи ветви HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion содержат установки, определённые пользователем, а записи ветви HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion содержат установки, являющиеся глобальными для локального компьютера, программного обеспечения или всех пользователей Запомни! Подразделы \Software и \SOFTWARE идентичны. Записи реестра не различают регистра букв. При работе с реестром надо соблюдать осторожность. Удаление каких-либо важных данных случайно или по незнанию может привести к краху операционной системы. Тогда спасти положение может только восстановление последней работоспособной копии. Если Вы собрались поэкспериментировать с реестром, предварительно сохраните на диске файлы SYSTEM.DAT и USER.DAT. Они находятся в каталоге, куда была установлена операционная система и имеют атрибуты "только для чтения" и "скрытый". В случае если реестр будет серьезно испорчен, Вы сможете переписать эти файлы в каталог Windows, установить нужные атрибуты и реестр будет как новенький. Только не вздумайте восстанавливать эти файлы, когда загружен Windows, иначе система накроется окончательно и спасет ее только полная переустановка! Для восстановления этих файлов надо предварительно перезагрузиться в DOS(или загрузиться с загрузочного диска, можно зайти в другую ОС) и уже там заменять испорченные файлы хорошими. Но это не единственный вариант восстановления данных. Дело в том, что операционная система, при каждом удачном запуске сохраняет копию реестра в CAB-файле, который записывается в скрытый каталог SYSBCKUP каталога Windows. По умолчанию, хранятся последние пять копий. Это число может варьироваться от 0 до 99 и устанавливается значением ключа MaxBackupCopies в файле scanreg.ini в каталоге Windows. Правда не стоит устанавливать слишком большое значение, т.к. файлы занимают немало места (один файл имеет размер больше мегабайта). Чтобы восстановить реестр с одной из этих резервных копий надо перезагрузиться в DOS и выполнить команду SCANREG /RESTORE Появится список доступных резервных копий реестра отсортированных по времени их создания. После выбора нужной копии данные будут благополучно восстановлены, и Вы получите реестр, отвечающий состоянию дел на момент его создания. Но если Вы устанавливали какие-то программы или меняли настройки операционной системы в промежуток между последней резервной копией и сбоем в реестре, то все эти данные безвозвратно пропадут. Надо ли нам это? Однозначно нет! Чтобы в любое время создать резервную копию реестра воспользуйтесь командой SCANREG /BACKUP которая в случае нормально прошедшей проверки создаст резервную копию. Еще один вариант резервирования и восстановления реестра состоит в экспортировании раздела или целой ветви, которую Вы планируете изменять. Это можно осуществить в Regedite для Windows в меню "Реестр". Выделите нужный раздел и щелкните по пункту "Экспорт файла реестра". После задания имени файла данные этого раздела будут в него экспортированы. Файл имеет расширение REG. Для его импортирования в реестр достаточно дважды щелкнуть на нем и данные будут перенесены. Правда этот способ восстановления информации имеет один существенный недостаток: все удаленные или измененные записи будут восстановлены, но вот добавленные записи удалены не будут. Поэтому данный способ больше подходит, если Вы проводите какие-то несущественные изменения, и чтобы откатить их не вводя старые данные заново, можно воспользоваться экспортом/импортом. Вообще, работать с реестром надо крайне осторожно, но если Вы будете периодически резервировать его, то никаких проблем возникнуть не должно.
| |
|
Всего комментариев: 0 | |