- •Структура реєстру
- •Застосування редакторів Реєстру
- •Порівняння Regedit і Regedit32
- •Пробіжимося по Regedit
- •Мал. 2. Призначений для користувача інтерфейс Regedit
- •Пошук розділів і параметрів
- •Мал. 3. Діалогове вікно Find програми Regedit
- •Редагування вмісту параметрів
- •Створення і видалення розділів і параметрів
- •Імпорт і експорт даних Реєстру
- •Створення своїх власних файлів .Reg
- •З'єднання з Реєстром іншого комп'ютера
- •Збільшуємо продуктивність ntfs.
Практична робота
«Вивчення реєстру Windows XP»
Мета роботи :
Знайомство з реєстром, оволодіння основними навичками роботи з ним. Застосування редакторів реєстру.
Теоретична частина:
Реєстр є двійковою базою даних, в якій зберігаються усі налаштування системної конфігурації в ієрархічній структурі. Застосування, компоненти операційної системи, драйвери пристроїв і ядро Microsoft Windows 2000 - усі вони користуються Реєстром, щоб зберігати в нім свої налаштування, прочитувати ці налаштування з Реєстру і отримувати з нього інформацію про конфігурацію апаратних засобів комп'ютера, про переваги поточного користувача і про стандартні налаштування, які повинні застосовуватися, коли немає заздалегідь встановлених налаштувань (наприклад, у випадках, коли новий користувач уперше входить в систему).
Хоча реєстр важкий для розшифровки і розуміння, він є однією з основних час-тей ОС Windows 2000, організацію і принципи управління якої повинні розуміти кожен досвідчений користувач і мережевий адміністратор. Вносити зміни безпосередньо в реєстр, за допомогою засобів редагування реєстру, необхідно тільки в крайньому випадку, коли інші засоби не дають бажаного результату. Некваліфіковане поводження з реєстром мастить привести до "зависання" ОС Windows 2000 і навіть ушкодження апаратних засобів ЕОМ. Потрібне отме-тить, що ОС Windows сама постійно вносить зміни в реєстр. Наприклад, при кожному завантаженні ОС, установці нового устаткування або програмного забезпечення, реєстрації користувача, налаштуванні гра-фического інтерфейсу. Тому для внесення змін до реєстру рекомендується користуватися засобами ОС, такими як Контрольна панель, Диспетчер Пристроїв, Система та ін.
Дані з Реєстру застосовуються в шести областях:
1) Дані з Реєстру застосовуються під час початкового налаштування (setup), установ-ки, конфігурації і при видаленні самої операційної системи, компонент операційної системи (наприклад, Internet Information Services (IIS) або служб Certificate) і апаратних пристроїв. Всякий раз, коли ви працюєте з майстрами «Add/Remove Що-небудь», можете бути упевнені, що тут використовуються дан-ные з Реєстру.
2) Під час завантаження Распознаватель (recognizer) Windows 2000 (Ntdetect.com) і не-который відповідний код в ядрі Windows 2000 шукають апаратні пристрої і зберігають результати цього пошуку в частині Реєстру, розміщеній в пам'яті комп'ютера.
3) Ядро Windows 2000 використовує інформацію, зібрану під час завантаження, что-бы з'ясувати, які драйвери пристроїв треба завантажити і в якому порядку. Ядро також зберігає в Реєстрі інформацію, необхідну для цих драйверів.
4) Драйвери пристроїв застосовують дані, записані Распознавателем і ядром, щоб конфігурувати себе для роботи з фізичною апаратурою цього комп'ютера.
5) Читання і запис даних конфігурації з Реєстру виконують системні сред-ства і застосування на кшталт панелей управління і деяких вставок ММС-консолі (Microsoft Management Console).
6) Застосування можуть зберігати свої власні налаштування в Реєстрі. Крім того, вони можуть читати дані, записані в Реєстр іншими програмами (і запи-сывать свої дані).
Типи даних
У Реєстрі можуть зберігатися дані семи типів. Але фактично, у більшості слу-чаев, застосовуються тільки два типи: REG_DWORD і REG_SZ. Нижче перераховано ці сім типів даних :
1) REG_BINARY зберігає довільні двійкові дані в «сирому» вигляді, без како-го б то не було переформатування або синтаксичного розбору. Двійкові дані можна переглядати в двійковому або в 16-ричном виді за допомогою якого-небудь з редакторів Реєстру Windows 2000.
2) REG_DWORD зберігає параметри, представлені 8-байтными (довгі) це-лыми числами (чи подвійними машинними словами). Цей тип даних зазвичай застосовується, коли параметр означає лічильник або інтервал, але він також година-то застосовується для прапорців (0 означає, що прапорець знятий, а 1 - що встановлений).
3) REG_SZ є звичайним рядком в кодуванні Unicode. Цей рядок може мати будь-яку довжину. У даних цього типу зазвичай зберігають шляхи доступу, повідомлення для людей або назви пристроїв, призначені для читання людьми, і тому подібне
4) REG_EXPAND_SZ - це «хитро закручений» REG_SZ. Застосування можуть встав-лять в рядок спеціальний маркер, а потім, при читанні параметра з Реєстру, «розгортати» цей маркер. Нехай, наприклад, параметр Щось має тип REG_EXPAND_SZ із звичайним значенням %SystemRoot%что. Ког-да Windows 2000 прочитує цей рядок, вона замінює %SystemRoot% на повний шлях місця, куди встановлена операційна система.
5) REG_MULTI_SZ є набором довільної кількості парамет-ров типу REG SZ. Наприклад, список серверів DNS, що задається вами в диало-говом вікні властивостей протоколу TCP/IP, зберігається в параметрі, що має тип REG_MULTI_SZ. Застосування повинні знати, як роз'єднати на складові частини целиковый REG MULTI SZ.
6) REG_FULL_RESOURCE_DESCRIPTOR - «рідкісний звір», цей тип даних при-меняется для кодування інформації про системні ресурси, необхідні для якого-небудь з пристроїв. Цей тип даних зустрічається тільки в підрозділах HKLM.
7) REG_NONE потрібний лише як «затичка» для заповнення місця, цей тип даних є позначенням того, що параметр Реєстру існує, але не містить ніяких даних. Деякі компоненти, щоб виконувати ті або інші дей-ствия, перевіряють просто наявність або відсутність деякого розділу або пари-метра. У цих випадках зазвичай перевіряється наявність параметра з типом REG.NONE, і завдяки відсутності даних в нім користувачі не зможуть їх зіпсувати.
При повсякденному адмініструванні ваші знання про типи дані, швидше за все, обмежаться розумінням відмінності між параметрами типів REG_DWORD і REG_SZ. Значення типу REG_DWORD, що містить 0 (нульове числове значення) відрізняється від значення типу REGJ5Z, що містить «0» (символ цифри «нуль»). Якщо вам треба додати новий параметр Реєстру, то треба переконатися, що ви застосували правильний тип даних, а то можуть з'явитися проблеми з компонентами, що використовують цей параметр.
Структура реєстру
У файловій системі диски (вони є в ній кореневими об'єктами) містять теки і файли. Кожна окрема тека може містити довільну кількість інших тек і файлів. Кожна тека і кожен файл мають ім'я. Сполучаючи імена тек, що містять файл, ми можемо скласти шлях доступу, єдиний файл, що однозначно іменує, на диску, так що, наприклад, C:.dll, і C:.dll є абсолютно різними файлами.
Реєстр Windows 2000 організований подібно до файлової системи, але для його опису застосовується інша термінологія. Коренями структури Реєстру є кореневі розділи(root keys), в цьому сенсі вони схожі на диски файлової системи. Реєстр містить 5 кореневих ключів - вулики! Кожен кореневий розділ містить декілька підрозділів(подключи), як би тек, у свою чергу, ці підрозділи можуть містити інші підрозділи і параметри-(values). Параметри схожі на файли у файловій системі. Як і файли, кожен з, параметрів має ім'я, яке має бути унікальним в підрозділі (теці), в якому він знаходиться. Кожному параметру також відповідає деякий тип Даних, визначальний, дані якого виду можуть в нім зберігатися.
Ключі і подключи в лівому вікні організовані за типом дерева і нагадують файлові систе-му (використовуються навіть значки у вигляді тек). Це зроблено для зручності користувача. Слід пам'ятати, що це не файли і документи, а ключі. Якщо поряд з ключем (подключом) стоїть [+], то це означає, що цей ключ (подключ) має вкладені подключи. Коли буде досягнутий самий нижній рівень вкладення, зліва від подключа з'явиться [-], що вказує, що подальше розкриття неможливе. Переме-щаться по реєстру і розгортати\u1079?гортати ключі можна за допомогою мишки, клацанням по соответст-вующему елементу.
Ключ символу шаблону * вказує розширення оболонки, застосовані до усіх застосувань. Розширення оболонки є серверами OLE, які забезпечують додаткові функ-циональные можливості призначеного для користувача інтерфейсу в Windows 2000 Це дозволяє додавати информа-цию, наприклад, до контекстного меню усіх піктограм або додати вкладки властивостей (property pages) до усіх таблиць властивостей, що відображаються в оболонці.
Кожен параметр Реєстру може бути ідентифікований своїм повним шляхом, що починається від кореня. Наприклад, шлях HKEY_LOCAL_MACHINEвизначає деякий параметр в підрозділі Security, належному Microsoft Exchange Server.
На рис.1 показа-на частина Реєстру Windows 2000 з написами, що вказують вулики, под-разделы і параметри (ім'я, тип, значення).
Рис.1. Три складові частини параметра Реєстру
Як вже було відмічено, сучасний реєстр містить 5 кореневих ключів, званих вуликами :
HKEY_LOCAL_MACHINE - складається з конфігураційних даних для локального комп'ютера. Це найбільш критична для ушкоджень секція.
HKEY_USERS - містить усі завантажені призначені для користувача профілі.
HKEY_CURRENT_USER - включає налаштування системи і застосувань, що відповідають користувачеві, локально зареєстрованому на комп'ютері;
HKEY_CURRENT_CONFIG - конфігураційні дані для апаратного профілю, використовуваного на сьогодні.
HKEY_CLASSES_ROOT - містить інформацію про зареєстровані типи файлів;
HKEY_LOCAL_MACHINE (HKLM)
Цей ключ містить інформацію про апаратні засоби конкретного ПК і встановлене на нім програмне забезпечення. Інформація, що зберігається тут, застосована до комп'ютера незалежно від того, хто на нім реєструється.
1. HKLM
У підрозділі HKLMзберігається інформація про пристрої (апарат-ре), виявлені в цьому комп'ютері. Усі параметри цього розділу зберігаються не на диску, а в оперативній пам'яті, через згадану раніше проблему з упорядочи-ванием драйверів пристроїв. Коли апаратура комп'ютера розпізнає його запуск, вона нумерує кожного зі знайдених нею пристроїв, досліджуючи шини комп'ютера і от-дельные класи пристроїв (наприклад, паралельний порт або клавіатуру). У HKLMє три основні підрозділи:
1) Підрозділ DESCRIPTIONS містить описи центральних процесорів, про-цессоров для операцій з дійсними числами («з плаваючою точкою») і багатофункціональних пристроїв комп'ютера.
2) Підрозділ DEVICEMAP зіставляє пристрої драйверам.
3) Підрозділ RESOURCEMAP був і в Windows NT 4, але в Windows 2000 повністю переробили. Тепер в нім є наступні три основні підрозділи: один - для рівня апаратних абстракцій (HAL, hardware abstraction layer); вживаний при відстежуванні знайдених пристроїв, інший - для Plug - and Play Manager, для запису пристроїв, про які відомо, як з ними працювати, і третій - для відображення об'єму «системних ресурсів», наявних у цього комп'ютера (так в термінології Microsoft називається оперативна пам'ять)
2. HKLM
Коли ви створюєте на комп'ютері під управлінням Windows 2000 локальних облікових записів або групи, то вони зберігаються в HKLM, як це було і в Windows NT. Проте при звичайній роботі ви не зможете бачити або змінювати дані в цьому підрозділі, і він потрібний в основному для сумісності із старими програмами, що припускають існування SAM. Усі програми, що здійснюють доступ до даних SAM, мають бути перероблені на роботу з даними Active Directory при їх наявності, або на роботу з даними SAM, за відсутності сервера Active Directory.
3. HKLM
У HKLMміститься всіляка ин-формация, що відноситься до захисту. Його формат не документований, і ви нічого не можете робити в цьому підрозділі. Проте він використовується комп'ютером для кэши-рования вірчих даних для входу в систему, налаштувань політики і разделяе-мых секретних даних сервера. Підрозділ SECURITYмістить копію більшості даних з HKLM.
4. HKLM
Підрозділ HKLMє коренем структури підрозділів, що зберігають глобальну (в межах комп'ютера) інформацію застосувань і системних ком-понент. Наприклад, HKLMмістить розділи, в яких зберігаються списки сертифікатів (CTLs, certificate trust lists), що довіряють, і сертифікати сертифікаційних центрів, що довіряють, для даного компью-тера. Списки сертифікатів, що довіряють, і сертифікаційних центрів, що довіряють, для окремих користувачів зберігаються де-небудь у іншому місці.
5. HKLM.
Останньою дією фази завантаження Windows 2000 є оновлень Реєстру, яке повинне зафіксувати набір служб і налаштувань, що управляють, що застосовувався при останньому успішному завантаженні. CurrentControlSet завжди вказує на набір налаштувань, що управляють, використовуваних системою у нинішній момент. Якщо ви заглянете в HKLM, то побачите там багато підрозділів ControlSetXXX. Кожен підрозділ ControlSetXXX описує набір налаштувань, що управляють, що існував в який-небудь момент часу, незалежно від того, чи було завантаження успішним або ні. CurrentControlSet є просто покажчиком на самий останній набір налаштувань, що управляють, при якому завантаження було успішним; оскільки важко визначити відразу, яке із завантажень було успішним, то операційна система і застосування користуються покажчиком CurrentControlSet.
У розділі, що описує набір налаштувань, що управляють, є чотири розділи з іменами, що були раніше у версіях Windows NT, але з іншою «начинкою»:
HKLM
Томи динамічних дисків Windows 2000 є витонченим технічним досягненням і благом для адміністраторів, але вони залежать від наявності інформації про поточну конфігурацію про логічні томи на диску. Застосування (і оснащення, ніби Disk Management) беруть цю інформацію із служби Logical Manager; у свою чергу, ця служба зберігає свій список змонтованих і доступних пристроїв в підрозділі MountedDevices.
HKEY_USERS (HKU)
Містить записи для кожного з користувачів, що коли-небудь входили в систему на вашому комп'ютері. Власником кожної з цих записів є відповідний призначений для користувача обліковий запис, там містяться налаштування профілю цього користувача.
Тут наиболь-ший інтерес представляє подключ Default, який використовується для створення призначеного для користувача профи-ля користувачам, що реєструється на комп'ютері, і що ще не має свого призначеного для користувача профи-ля. Точка (.) означає, що це значення за умовчанням. Якщо точку прибрати, то це буде звичайне ім'я користувача Default. Кожне ім'я ключа користувача вказує і по своєму складу повторює соответст-вующий ключ в HKEY_CURRENT_ USER. Причому налаштування в HKEY_CURRENT_ USER мають великий пріоритет, чим в HKEY_USERS.
HKEY_CURRENT_USER (HKCU)
Вказує на профіль поточного користувача (що увійшло в даний момент до системи) усередині HKU. Microsoft вимагає, щоб застосування Windows 2000 зберігали усі переваги користувачів в підрозділах під HKCU; наприклад, HKCUResearchмістить особисті переваги користувача для програми Ghost фірми Symantec. Інші призначені для користувача налаштування для цього продукту будуть доступні в тому ж самому розділі при вході в систему цього ж користувача.
HKEY_CVRRENT_CONFIG (HKCC)
Зберігає інформацію про поточну завантажувальну конфігурацію комп'ютера. Зокрема, тут зберігається інформація про поточний набір системних служб і про пристрої, що були під час завантаження. Насправді цей кореневий розділ є покажчиком на розділ усередині HKLM.
HKEY_CLASSES_ROOT (HKCR)
Зіставляє розширення файлів і ідентифікатори класів OLE; фактично він вказує на HKLM. Системні компоненти, такі як Провідник Windows (ну і Microsoft Internet Explorer теж), використовують ці відповідності, щоб визначити, які застосування або компоненти треба використовувати при от-крытии або створенні тих або інших типів файлів або об'єктів даних. Оскільки Windows 2000 в основному вважається в цьому питанні на модель СОМ (Component Object Model, модель компонентних об'єктів Microsoft), що спирається, у свою чергу, на ідентифікатори об'єктів, що зберігаються в HKCR, то цей розділ і його підрозділи мають велику важливість, чим може здатися на перший погляд.
У Windows 2000 фірма Microsoft зробила так, що HKCR фактичес-ки став містити дані з двох джерел: профілю користувача (там зберігаються індивідуальні налаштування користувачів) і розділу HKLM, де зберігаються налаштування, загальні для усієї системи. Користувачі можуть реєструвати компоненти СОМ або відміняти їх реєстрацію, змінювати зіставлення файлів і так далі, не впливаючи на роботу інших користувачів. Адміністратори можуть настраи-вать повноваження доступу до HKLM, завдяки чому користувачі не зможуть підміняти налаштування, загальні для усієї системи, які ви хочете для них встановити. Унікальні налаштування кожного з користувачів зберігаються у файлі Usrclass.dat, файлом-«ульем», що являється, для його індивідуальних налаштувань Реєстру.