Microsoft Windows NT/Rejestr
Rejestr systemu Windows to centralna baza konfiguracyjna systemu. Jego zadanie jest podobne do funkcji katalogu /etc/
w systemach Linux, Unix. Przechowywane tam są informacje o konfiguracji sprzętowej komputera, konfiguracji systemu, konfiguracji i ustawieniach indywidualnych użytkowników systemu oraz programów, ustawienia lokalne zainstalowanych programów. Rejestr został stworzony w celu zastąpienia używanych wcześniej plików .ini
.
Struktura rejestru
[edytuj]Rejestr systemu Windows składa się z trzech głównych gałęzi, które są przechowywane w plikach (HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CURRENT_USER) oraz kilku, które są aliasami dla poszczególnych kluczy lub są przechowywane w pamięci do czasu wyłączenia komputera, a potem usuwane. W każdej z gałęzi znajdują się klucze, które z kolei mogą zawierać inne klucze i/lub listę wartości.
Rejestr systemu przechowywany jest w systemach Windows w kilku plikach. Dla systemów Windows 95, Windows 98, Windows 98SE są to pliki USER.DAT oraz SYSTEM.DAT. W przypadku nowszych systemów zależności pokazuje poniższa tabela:
Część rejestru | Plik |
---|---|
HKEY_CURRENT_USER | Ntuser.dat, Ntuser.dat.log |
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_USERS\.DEFAULT | Default, Default.log, Default.sav |
Gdzie plik bez rozszerzenia zawiera dane zawarte w poszczególnych częściach rejestru, plik .log
zawiera informacje o historii dostępu i historii zmian w poszczególnych kluczach i wartościach, a pliki .alt
i .sav
są kopią zapasową.
Gałęzie rejestru
[edytuj]HKEY_CLASSES_ROOT (HKCR)
[edytuj]Gałąź HKEY_CLASSES_ROOT
została zachowana jedynie dla zgodności z systemem Windows 3.1. W rzeczywistości jest jedynie wskaźnikiem (aliasem) do klucza HKEY_LOCAL_MACHINE\Software\Classes
. Przechowuje informacje o skojarzeniach rozszerzeń plików z programami oraz o identyfikatorach OLE. Nie jest zalecane, aby nowe aplikacje, które działają w kontekście różnych użytkowników lub w sesji 0, używały tego klucza. W zamian należy się odwoływać za pomocą pełnej ścieżki.
HKEY_CURRENT_USER (HKCU)
[edytuj]HKEY_CURRENT_USER
to alias podklucza gałęzi HKEY_USERS
, odnoszącej się do użytkownika właśnie zalogowanego na komputerze. Informacje tu zawarte to między innymi ustawienia pulpitu czy menu Start oraz ustawienia zainstalowanych programów. W tej gałęzi znajdują się również domyślne ścieżki plików tymczasowych TEMP oraz TMP.
HKEY_LOCAL_MACHINE (HKLM)
[edytuj]Gałąź HKEY_LOCAL_MACHINE
zawiera informacje o konfiguracji komputera, niezależne od tego, który z użytkowników z niego korzysta i jakiego oprogramowania używa. Są w nim również gromadzone dane o wszystkich urządzeniach kiedykolwiek dołączonych do systemu, nawet jeżeli nie są w nim już obecne.
Na przykład:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\00xx
zawiera parametry konfiguracyjne wszystkich interfejsów sieciowych obecnych w systemie, wartośćNetworkAddress
zawiera informację odpowiadającą adresowi MAC danego interfejsu, zmieniając ją możemy ustalić dowolny adres MAC dla konkretnej karty sieciowej, przy czym nie wszystkie karty i sterowniki pozwalają na modyfikowanie adresu fizycznego MAC, zatem w takim przypadku pomimo zmienionej wartościNetworkAddress
, rzeczywisty adres karty pozostanie zgodny z fabrycznym.
HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
zawiera informacje o znanych woluminach (partycjach) i zamontowanych/odmontowanych dyskach (lub napędach CD/DVD), na przykład[1]:- Wartości opisujące zamontowane dyski (np. dysk C:):
- Wartość
\??\Volume{488d8441-e711-11dd-bb15-806d6172696f}
zawierająca ciąg bajtów:b8 05 ec 0e 00 e6 10 05 04 00 00 00
. - Wartość
\DosDevices\C:
zawierająca ciąg bajtów:b8 05 ec 0e 00 e6 10 05 04 00 00 00
. - Warto zwrócić uwagę że obie wartości zawierają zawsze taki sam ciąg bajtów.
- Wartość
- Wartości opisujące zamontowane dyski (np. dysk C:):
- Wartości opisujące odmontowane dyski (niedostępne w systemie):
- Wartość
#{124c806e-e78b-11dd-a0f0-a514a46f5c84}
zawierająca ciąg bajtów:b8 05 ec 0e 00 7e 00 00 00 00 00 00
. - Brak wtedy klucza
\DosDevices\X:
, a zamiast ciągu\??\Volume
w nazwie wartości występuje znak#
.
- Wartość
- Wartości opisujące odmontowane dyski (niedostępne w systemie):
W wypadku, gdy zmieniona zostanie litera przypisana dyskowi systemowemu (np. dysk C - systemowy - będzie zamontowany jako D), modyfikując litery dysków w nazwach kluczy zaczynających się od \DosDevices\
można naprawić system. Modyfikacje można dokonać także w wypadku nieuruchamiającego się sytemu Windows, posługując się innym systemem, np. LiveCD i aplikacją edytującą rejestr, posiadającą funkcjonalność edycji rejestru bezpośrednio jako plików, odpowiadającym konkretnym gałęziom, na dysku systemowym (niekoniecznie C:) w katalogu \Windows\System32\config
.
HKEY_USERS (HKU)
[edytuj]GałąźHKEY_USERS
zawiera indywidualne ustawienia dla każdego z zalogowanych użytkowników komputera. Tutaj umieszczone są klucze z gałęzi HKEY_CURRENT_USER
HKEY_CURRENT_CONFIG (HKCC)
[edytuj]HKEY_CURRENT_CONFIG
przechowuje informacje o różnicach między bieżącą a standardową konfiguracją sprzętową. Jest to wskaźnik do HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles\Current
.
Ustawienia Autostartu w Rejestrze systemu Windows
[edytuj]W obecnych wersjach systemu Windows istnieją cztery klucze,[2] w których mogą być zawarte informacje o automatycznym uruchamianiu programów:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
- uruchamia po zalogowaniu się do bieżącego profilu użytkownika.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
- j.w., ale wpis jest kasowany przed wywołaniem komendy, więc program jest uruchamiany tylko raz.[3]HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
- uruchamia niezależnie od tego, kto się zaloguje.HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
- j.w., ale wpis jest kasowany przed wywołaniem komendy, więc program jest uruchamiany tylko raz.[3]
Programy do edycji rejestru
[edytuj]regedit
[edytuj]Jest to podstawowe i oficjalne narzędzie do pracy z rejestrem, wydane przez firmę Microsoft, dostarczany wraz z systemem operacyjnym (Windows 95 i nowsze). Program standardowo znajduje się w katalogu z zainstalowanym systemem Windows (standardowo C:\Windows
). Jego uruchomienie następuje poprzez bezpośredni dostęp do programu w katalogu gdzie został umieszczony lub poprzez wywołanie go za pomocą okienka Uruchom:
- Nacisnąć kombinację klawiszy
Windows+R
- Wpisać w polu tekstowym słowo
regedit
- Nacisnąć przycisk OK
Program Regedit działa w dwóch trybach: w środowisku graficznym GUI oraz w trybie zwanym wierszem poleceń lub trybem konsoli.
chntpw
[edytuj]Edytor rejestru przeznaczony na wybrane dystrybucje Linuxa. Posiada on jedynie tryb tekstowy, uruchamiany z poziomu terminala. Program jest dostępny także do instalacji na płycie CD lub pendrivie, pozwalający na uruchomienie edytora bezpośrednio przez BIOS (wersja bootowalna).
Kopia zapasowa
[edytuj]Przed rozpoczęciem edycji kluczy i wartości w rejestrze zalecane jest utworzenie kopii zapasowej całości rejestru. Dokonuje się tego poprzez wybranie opcji Plik -> Eksportuj...
w Edytorze Rejestru, a następnie należy wybrać pole Wszystko w dolnej części okna i zapisać kopię zapasową w wybranej lokalizacji.
System Windows, począwszy od wersji Millennium, posiada opcję Przywracanie systemu, która w przypadku awarii systemu pozwala na przywrócenie wcześniejszego, pozbawionego błędów rejestru.
Uwagi
[edytuj]- ↑ Poniższe nazwy i wartości są przykładowe i mogą się różnić między komputerami
- ↑ Kiedyś istniały jeszcze dwa klucze: RunServices i RunServicesOnce, służące do uruchamiania usług systemu Windows. Obecnie tę funkcję pełnią odpowiednie wartości zdefiniowane w podkluczach klucza HKLM\System\CurrentControlSet\Services
- ↑ 3,0 3,1 W przypadku, kiedy na początku ścieżki do programu jest wykrzyknik, wpis jest kasowany po uruchomieniu programu