Регистри в Windows

Тук ще се представят основните и най-важни ключове в регистъра, както и примери, с чиято помощ се показва манипулирането на процесите и техния контрол чрез Windows регистрите.
Windows регистърът съхранява всички конфигурационни настройки на операционната система. Това е основата, върху която е стъпила цялата ОС и представлява нейната най-важна част. Заедно с това е и най-голямата му слабост – ако в него се получи срив, цялата система ще откаже да се стартира.

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

Пример:

При щракване с десния бутон на мишката върху файлове с различен формат ще се показва различен тип контекстно меню. Също така настройките за различните профили в операционната система са възможни отново благодарение на регистъра. Когато се правят промени в Control Panel, асоцирането на файлови формати, записване или триене на файлове – всичко това се отразява в регистъра.

При Windows 3.x се използват текстови *.INI файлове за конфигуриране на системата (при MS-DOS – Config.sys и Autoexec.bat), а в XP и Vista – двоични регистърни файлове.
Във всички Windows системи, за да се зареди регистърът трябва да се стартира Regedit.exe (Registry Editor). Отваря се работен прозорец, разделен на две – в ляво са изобразени различните ключови секции под формата на дървовидна структура, а в дясно – конкретните данни.

Логически раздели

Сред петте логически раздела най-важните са HKEY_LOCAL_MACHINE (HKLM) и HKEY_USERS (HKU).
Останалите три се явяват нейни подмножества: HKEY_CURRENT_USER (HKCU) на HKU и HKEY_CLASSES_ROOT (HKCR) и HKEY_CURRENT_CONFIG (HKCC) на HKLM. Всички настройки, които се отнасят до конкретен потребител, се записват в HKCU, а останалите, които са валидни за цялата система – в HKLM.
Ако се стартира Windows като guest, достъпът е ограничен – активни са само две от секциите: HKU и HULM

HKEY означава Handle to Key или „манипулатор на ключова стойност”.

HKEY_USERS
В тази секция се съдържат всички потребителски профили, които са заредени и активни.

KUEY_CURRENT_USER
Това е подсекция на горната и съдържа информация за потребителя, който се е включил в момента.

HKEY_LOCAL_MACHINE
Съдържа базова информация за конкретната компютърна система и за всеки един потребител

HKEY_CLASSES_ROOT
Това е подпапка на HKLM\Software. Информацията, която се пази в нея, осигурява отварянето са файловете чрез Windows Explorer. След Windows 2000 тези данни се пазят едновременно в HKLM и HKCU, като в първата секция са валидни глобално, а във втората са с по-голям приоритет и се отнасят само до конкретния зареден профил. HKCR представлява обединение на двете локации. Също така този раздел е създаден за съвместимост с програми, разработени за по-стари версии на Windows. Ако е нужно да се внесе промяна в параметрите за конкретния потребител, това трябва да се направи в HKCU\Software\Classes, а не в HKCR. А за да се променят параметрите, които се използват по подразбиране – съответно в HKLM\Software\Classes.

HKEY_CURRENT_CONFIG
Тук е информацията за хардуерния профил, който се използва при стартирането на системата.

В подсекциите с име Software от HKLM и HKCU се съхранява информация за програмите, някога инсталирани. Там се съдържат ключовете на всички инсталирани потребителски приложения и ако възникнат проблеми с определен софтуер(например отказ да се стартира поради преместване на папки или дискови дялове), то с промяната им може да се отстранят.

Двоични стойности

Отделните ключове могат да приемат стойности от няколко типа: String, Binary, DWORD(Double Word – дума с двойна дължина: 32bits и приема стойност между 0 и 232-1), Multi-String (този тип е характерен само за NT/2000/XP системите и представлява списък от множество символни низове, означени с номерация; използва се за въвеждане на повече от една стойност) или Expandable String (съдържат променлива – например %SystemRoot%, което ОС замества с конкретната главна системна папка). Всички данни тип String завършват на SZ, а останалите – на BINARY и DWORD. При NT/2000/XP съществуват и други типове данни, които съдържат RESOURCE в името си.

Максималният размер на имената на ключовете са: 16 383 съмвола за Windows Server 2003 и XP, 260 ANSI или 16 383 Unicode символа за Windows 2000 и по 255 за Windows 95/98/ME. Размерът на самите стойности: при 95/98/ME максималното количество данни е 16 300 bytes. При NT/2000/XP няма ограничение, но Microsoft препоръчват дългите стойности (повече от 2048 байта) да се записват в отделни файлове, като имената им вече трябва да присъстват в регистъра. Това е напревено с цел той да запази своята компактност и операциите с него да се извършват по-бързо.

За всички секции, с изключение на HKCU, тези файлове се намират в папката system32\config на Windows NT 4.0, 2000, ХР и Server 2003, а за HKCU могат да се открият в папката с профила на конкретния потребител. При Windows 98 регистърните файлове са с имена User.dat и System.dat, а при Millennium изданието – Classes.dat, User.dat и System.dat.

Ключове

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Ключовете, които се съдържат тук, се отнасят за автоматично зареждащи се програми, когато потребителят се включи в системата, и са валидни за всички регистрирани потребителски профили.

KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
Тези програми ще се стартират само веднъж, когато някой от потребителите се включи, и ще бъдат премахнати при следващото рестартиране на Windows (затова след инсталиране някои програми трябва да се рестартира системата, след което продължава от мястото, докъдето са стигнали).

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
Действието на тези ключаве е идентично с това на предходната секция, но освен това те не създават отделни процеси и поддържат списък със зависимостите между DLL библиотеките, които остават заредени, докато някоя или всички секции се обработват.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServeces
Обектите, които се намират тук, се зареждат автоматично, когато системата стартира и преди същинското зареждане на потребителски профил. Използват се за обслужващи приложения, например антивирусните програми, драйверите и т.н.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce
Тук действието е аналогично като секцията RunOnce.

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Софтуерът тук се зарежда само за текущия потребител.

KEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
Отново еднократно автоматично стартиране за конкретен потребител.

HKEY_USERS\.DEFAULT\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Програмите от тази секция автоматично се копират в HKEY_CURRENT_USER\…\Run за всеки нов потребителски профил.

HKEY_USERS\.DEFAULT\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
Аналогично на предходната.

HKEY_LFCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce\Setup
Тази секция е активна при първото зареждане след Setup процеса или след използване на Add/Remove Programs

Секциите RunServices, RunServicesOnce и RunOnce\Setup не са налични в Windows NT 4.0\2000\XP.
Може и ръчно да се направят промени в някои от Run секциите например и по този начин да се изключи зареждането на нежеланата програма или осъществяване на промяна в настройките в ОС. Също така могат да се модифицират и други ключове, но за целта е добре да се направи негово резервно копие.

Registry Editor

Основните приложения, които са  налични по подразбиране в Windows, са Registry Editor(regedit) и конзолният вариант reg.exe. Съществува и 32-битова версия Regedt32.exe, която е за предпочитане да се използва в NT, 2000, XP.
Експлоатация на регистъра

С отварянето на редактора на регистъра се маркира главната папка My Computer и се избира Export от главното меню File. По подразбиране записът ще се осъществи като файл с разширение reg (обикновено тези файлове съдържат ключове, които могат директно да се импортират в регистъра чрез двукратно щракване с мишката върху тях). Може да се експортира и отделен ключ или секция.
Ако се е получил срив в операционната система и не може да се стартира, възстановяването на регистрите може да се осъществи и под DOS и да се стартира Windows Registry Checker (Scanreg.exe). Командата е “scanreg/restore”. За NT семейството, което е много по-стабилно, не е предвидена такава възможност.

Манипулацията на регистъра във Windows с помощта на RegEdit се осъществява с откриването на необходимия ключ, при което неговата стойност ще се отвори в дясното поле. При двойно щракване върху него ще се отвори прозорец, в който тази стойност да се промени. С еднократно щракване на мишката върху променливата, ще се открият повече опции: изтриване, преименуване и модифициране.
Добавяне на ключ се прави, като се използва десния бутон върху ключа (или на празно място в полето при стойностите) и се избере New, а след това Key. Задава му се име, по същия начин се добавя и променлива, като изборът е между петте възможни вида стойности. Менюто Edit ->Permission дава възможност да се зададат правила за достъп до конкретен ключ, така че не всеки да има право да го променя.

Малък пример:

Размяната на бутоните на мишката чрез Windows регистъра се осъществява като в HKEY_CURRENT_USER\Control Panel\Mouse се зареди ключа SwapMouseButtons и се промени стойността  от 0 на 1.

При 64-битовото издание на Windows XP регистърът е разделен на две секции, поотделно за 32- и 64-битовите ключове. Имената на част от 32-битовите ключове съвпадат с тези на 64-битовите и обратно, но по подразбиране се показват само 64-битовите данни.

Регистрите могат да са най-бързият начин за възстановяване на ключове и настройки в системата, но при неправилна манипулация чрез тях могат да се нанесат непоправими щети.

Сходни статии:

  1. Защита на Windows Vista. Защитани механизми на операционни системи. Базови технологии за безопасност, използвани в операционните системи Идентификация и аутефикация Достъп до обектите на операционната система Одит и откриване на опитите за проникване в системата за защита Система Kerberos...
  2. Microsoft Remote Desktop Connection Microsoft Remote Desktop Connection е проектиран софтуер за Windows XP и напълно съоръжен с инструменти за отдалечена манипулация. Неговата задача е да свързва компютъра на който се работи в момента...
  3. Действия при заразени с вируси компютри Понякога дори и напреднал потребител може да се осъзнава, че компютърът му е заразен с вирус, поради факта, че вирусите могат да се скрият зад обичайни файлове или да се...
  4. Класификация на операционните системи Операционните системи могат да бъдат класифицирани в зависимост от базовата технология (UNIX-подобни или Windows-подобни), типа на лиценза (платен или свободен), развива ли се в настоящо време (остарели – DOS или...
  5. Информационни системи за управление СИСТЕМА ЗА ОБРАБОТКА НА ТРАНЗАКЦИИ Предназначение – за обработка на първични данни на изпълнителско ниво. Използват се за решаване на добре структурирани (формализирани) задачи, за които са известни изходните данни...

Новини за технологии и джаджи – Актуална информация за най-яките лаптопи, компютри, телфони и фотоапарати
Comments are closed.