Temat 17 - Rejestr w systemie Ms Windows.
Rejestr Windows, a dokładnie rejestr ustawień w systemach operacyjnych Windows to hierarchiczna baza danych konfiguracyjnych. Są w niej przechowywane informacje o konfiguracji i ustawieniach m.in. użytkowników, urządzeń podłączonych do komputera, zainstalowanych programów.
Do wpisów w rejestrze system odwołuje się każdorazowo, gdy wynik wykonania operacji zależy od wcześniej zapamiętanych ustawień systemowych.
Rejestr Windows spełnia analogiczną funkcję do katalogu /etc/ w systemach Unix/Linux.
Rejestr jest centralną bazą danych przeznaczoną do przechowywania w ujednolicony sposób wszystkich informacji konfiguracyjnych systemu operacyjnego i aplikacji. Zawiera on kompletny zestaw wpisów dotyczących ustawień takich elementów, jak programy obsługi (sterowniki) urządzeń, pamięć czy programy obsługi sieci. Narzędzia systemu operacyjnego pozwalają na dostęp do niego zarówno z komputera, którego dotyczy, jak również poprzez sieć.
Architektura Rejestru jest połączeniem idei znanych z Windows 3.x plików INI oraz występującego także w tym środowisku Rejestru (przechowującego znacznie mniej informacji). Rejestr Windows 95 ujednolica i łączy te mechanizmy. Sekcjom plików INI odpowiadają tzw. klucze Rejestru, a poszczególnym wpisom - wartości Rejestru. Podstawowe różnice to wprowadzenie struktury hierarchicznej (drzewiastej) i umożliwienie korzystania z wartości binarnych.
Źródło: https://pl.wikipedia.org/wiki/Rejestr_%28Windows%29
Opis rejestru
Słownik terminów komputerowych firmy Microsoft, wydanie piąte, definiuje rejestr następująco:
Rejestr zawiera informacje, do których system Windows stale odwołuje się podczas swojej pracy, na przykład profile poszczególnych użytkowników, aplikacje zainstalowane na komputerze oraz typy dokumentów tworzonych przez te aplikacje, ustawienia arkuszy właściwości folderów i ikon aplikacji oraz informacje, jaki sprzęt istnieje w systemie i które porty są używane.
Rejestr zastępuje większość tekstowych plików ini używanych w systemie Windows 3.x oraz pliki konfiguracyjne systemu MS-DOS, takie jak Autoexec.bat i Config.sys. Chociaż rejestr jest używany w kilku systemach operacyjnych Windows, występują pewne różnice między rejestrami w każdym systemie.
Gałąź rejestru to grupa kluczy, podkluczy i wartości w rejestrze, która ma zestaw plików pomocniczych zawierających kopie zapasowe ich danych. W systemach Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003 i Windows Vista pliki pomocnicze wszystkich gałęzi oprócz HKEY_CURRENT_USER znajdują się folderze %SystemRoot%\System32\Config. Pliki pomocnicze gałęzi HKEY_CURRENT_USER znajdują się w folderze %SystemRoot%\Profiles\Nazwa_użytkownika. Rozszerzenia nazw plików znajdujących się w tych folderach wskazują typ danych przechowywanych w tych plikach. Brak rozszerzenia może w pewnych przypadkach również wskazywać typ danych przechowywanych w plikach.
Gałąź rejestru | Pliki pomocnicze |
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 |
W systemie Windows 98 pliki rejestru noszą nazwy User.dat i System.dat. W systemie Windows Millennium Edition pliki rejestru noszą nazwy Classes.dat, User.dat i System.dat.
Uwaga: Funkcje zabezpieczeń w systemach Windows NT, Windows 2000, Windows XP, Windows Server 2003 i Windows Vista umożliwiają administratorowi kontrolowanie dostępu do kluczy rejestru.
W poniższej tabeli przedstawiono wstępnie zdefiniowane klucze używane przez system. Maksymalny rozmiar klucza to 255 znaków.
Folder/wstępnie zdefiniowany klucz | Opis |
HKEY_CURRENT_USER | Zawiera gałąź główną informacji konfiguracyjnych dla aktualnie zalogowanego użytkownika. Tutaj są przechowywane foldery użytkownika oraz określone przez niego kolory ekranu i ustawienia Panelu sterowania. Te informacje są skojarzone z profilem użytkownika. Czasami dla tego klucza używa się skrótu „HKCU” . |
HKEY_USERS | Zawiera wszystkie aktywnie ładowane profile użytkowników komputera. Klucz HKEY_CURRENT_USER jest podkluczem klucza HKEY_USERS. Dla klucza HKEY_USERS czasami używa się skrótu „HKU” . |
HKEY_LOCAL_MACHINE | Zawiera informacje dotyczące konfiguracji komputera (dla każdego użytkownika). Czasami dla tego klucza używa się skrótu „HKLM” . |
HKEY_CLASSES_ROOT | Jest podkluczem klucza HKEY_LOCAL_MACHINE\Software. Informacje przechowywane w tym kluczu gwarantują uruchomienie poprawnego programu podczas otwierania pliku przy użyciu Eksploratora Windows. Czasami dla tego klucza używa się skrótu „HKCR” . Począwszy od systemu Windows 2000, te informacje są przechowywane w obu kluczach, HKEY_LOCAL_MACHINE i HKEY_CURRENT_USER. Klucz HKEY_LOCAL_MACHINE\Software\Classes zawiera ustawienia domyślne, które mogą stosować się do wszystkich użytkowników komputera lokalnego. Klucz HKEY_CURRENT_USER\Software\Classes zawiera ustawienia, które zastępują ustawienia domyślne i stosują się tylko do użytkownika interaktywnego. Klucz HKEY_CLASSES_ROOT przedstawia widok rejestru, który scala informacje z tych dwóch źródeł. Klucz HKEY_CLASSES_ROOT dostarcza ten scalony widok również dla programów zaprojektowanych dla wcześniejszych wersji systemu Windows. Aby zmienić ustawienia dla użytkownika interaktywnego, zmian należy dokonać w kluczu HKEY_CURRENT_USER\Software\Classes, a nie HKEY_CLASSES_ROOT. Aby zmienić ustawienia domyślne, zmian należy dokonać w kluczu HKEY_LOCAL_MACHINE\Software\Classes. Jeśli użytkownik zapisze klucze w podkluczu klucza HKEY_CLASSES_ROOT, system przechowuje te informacje w kluczu HKEY_LOCAL_MACHINE\Software\Classes. Jeśli użytkownik zapisze wartości w podkluczu klucza HKEY_CLASSES_ROOT, a ten podklucz już istnieje w kluczu HKEY_CURRENT_USER\Software\Classes, system będzie przechowywał te informacje w tym kluczu, a nie w kluczu HKEY_LOCAL_MACHINE\Software\Classes. |
HKEY_CURRENT_CONFIG | Zawiera informacje o profilu sprzętu użytym przez komputer podczas uruchamiania systemu. |
Uwaga: Rejestr w 64-bitowych wersjach systemu Windows XP, Windows Server 2003 i Windows Vista jest podzielony na klucze 32-bitowe i 64-bitowe. Wiele kluczy 32-bitowych ma te same nazwy co ich 64-bitowe odpowiedniki i na odwrót. Domyślnie w 64-bitowej wersji Edytora rejestru, która wchodzi w skład 64-bitowych wersji systemów Windows XP, Windows Server 2003 i Windows Vista, klucze 32-bitowe są wyświetlane w następującym węźle:
Aby uzyskać więcej informacji dotyczących sposobu wyświetlania rejestru w 64-bitowych wersjach systemu Windows, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
W następującej tabeli przedstawiono aktualnie zdefiniowane i używane przez system Windows typy danych. Maksymalny rozmiar nazwy wartości jest następujący:
- Windows Server 2003, Windows XP i Windows Vista: 16 383 znaków
- Windows 2000: 260 znaków ANSI lub 16 383 znaki Unicode
- Windows Millennium Edition/Windows 98/Windows 95: 255 znaków
Wartości długie (o rozmiarze większym niż 2048 bajtów) muszą być przechowywane jako pliki z nazwami plików przechowywanymi w rejestrze. Rejestr działa wtedy wydajniej. Maksymalny rozmiar wartości jest następujący:
- Windows NT 4.0/Windows 2000/Windows XP/Windows Server 2003/Windows Vista: dostępna pamięć
- Windows Millennium Edition/Windows 98/Windows 95: 16 300 bajtów
Uwaga: Obowiązuje limit całkowitego rozmiaru wszystkich wartości klucza równy 64 k.
Nazwa | Typ danych | Opis |
Wartość binarna | REG_BINARY | Dane binarne. Większość informacji o składnikach sprzętowych jest przechowywana jako dane binarne i wyświetlana w Edytorze rejestru w formacie szesnastkowym. |
Wartość DWORD | REG_DWORD | Dane reprezentowane przez liczbę o długości 4 bajtów (32-bitową całkowitą). Wiele parametrów sterowników urządzeń i usług jest tego typu i jest wyświetlanych w Edytorze rejestru w formacie binarnym, szesnastkowym lub dziesiętnym. Wartości pokrewne to DWORD_LITTLE_ENDIAN (najmniej znaczący bajt znajduje się pod najniższym adresem) i REG_DWORD_BIG_ENDIAN (najmniej znaczący bajt znajduje się pod najwyższym adresem). |
Wartość ciągu rozwijalnego | REG_EXPAND_SZ | Ciąg danych o zmiennej długości. Ten typ danych obejmuje zmienne, których wartości są obliczane, jeśli program lub usługa korzysta z danych. |
Wartość wielociągu | REG_MULTI_SZ | Ciąg wielokrotny. Wartości zawierające zestawienia lub wartości wielokrotne, zapisane zwykle w formie możliwej do odczytania przez ludzi. Wpisy są oddzielane spacjami, przecinkami lub innymi znacznikami. |
Wartość ciągu | REG_SZ | Ciąg tekstowy o stałej długości. |
Wartość binarna | REG_RESOURCE_LIST | Seria zagnieżdżonych tablic służących do przechowywania listy zasobów używanych przez sterownik urządzenia sprzętowego lub jedno z urządzeń fizycznych, którymi on steruje. Te dane są wykrywane i zapisywane w drzewie \ResourceMap przez system oraz wyświetlane w Edytorze rejestru w formacie szesnastkowym jako wartość binarna. |
Wartość binarna | REG_RESOURCE_REQUIREMENTS_LIST | Seria zagnieżdżonych tablic służących do przechowywania listy zasobów sprzętowych, z których może korzystać dany sterownik urządzenia lub jedno ze sterowanych przez niego urządzeń fizycznych. Podzestaw tej listy system zapisuje w drzewie \ResourceMap. Te dane są wykrywane przez system i wyświetlane w Edytorze rejestru w formacie szesnastkowym jako wartość binarna. |
Wartość binarna | REG_FULL_RESOURCE_DESCRIPTOR | Seria zagnieżdżonych tablic służących do przechowywania listy zasobów używanych przez fizyczne urządzenie sprzętowe. Te dane są wykrywane i zapisywane w drzewie \HardwareDescription przez system i są wyświetlane w Edytorze rejestru w formacie szesnastkowym jako wartość binarna. |
Brak | REG_NONE | Dane bez określonego typu. Te dane są zapisywane w rejestrze przez system lub aplikacje i wyświetlane w Edytorze rejestru w formacie szesnastkowym jako wartość binarna. |
Łącze | REG_LINK | Ciąg Unicode określający łącze symboliczne. |
Wartość QWORD | REG_QWORD | Dane reprezentowane przez 64-bitową liczbę całkowitą. Te dane są wyświetlane w Edytorze rejestru jako wartości binarne, które wprowadzono w systemie Windows 2000. |
Wykonywanie kopii zapasowej rejestru
Przed przystąpieniem do edytowania rejestru należy wyeksportować klucze rejestru, które mają być edytowane, lub utworzyć kopię zapasową całego rejestru. W przypadku wystąpienia problemu można będzie wówczas wykonać kroki opisane w sekcji „Przywracanie rejestru” , aby przywrócić poprzedni stan rejestru. Aby wykonać kopię zapasową całego rejestru, należy przy użyciu narzędzia Kopia zapasowa wykonać kopię zapasową stanu systemu. Stan systemu obejmuje rejestr, bazę danych rejestracji klas modelu COM+ i pliki rozruchowe. Aby uzyskać więcej informacji dotyczących wykonywania kopii zapasowej stanu systemu przy użyciu narzędzia Kopia zapasowa, kliknij następujące numery artykułów w celu wyświetlenia tych artykułów z bazy wiedzy Microsoft Knowledge Base:
Edytowanie rejestru
Aby zmodyfikować dane rejestru, program musi użyć funkcji rejestru, które są zdefiniowane w następującej witrynie MSDN w sieci Web:
Administratorzy mogą modyfikować rejestr za pomocą Edytora rejestru (Regedit.exe lub Regedt32.exe), zasad grupy, zasad systemu, plików rejestru (reg) lub przez uruchamianie skryptów, takich jak pliki skryptów języka Visual Basic.
Korzystanie z interfejsu użytkownika systemu Windows
Firma Microsoft zaleca, aby w miarę możliwości unikać ręcznego edytowania rejestru i zmieniać ustawienia systemowe, korzystając z interfejsu użytkownika systemu Windows. Czasami może się jednak okazać, że najlepszą metodą rozwiązania problemu z produktem jest właśnie edytowanie rejestru. Jeśli problem jest udokumentowany w bazie wiedzy Microsoft Knowledge Base, dostępny jest w niej artykuł z instrukcjami krok po kroku objaśniającymi edytowanie rejestru. Firma Microsoft zaleca, aby postępować dokładnie według tych instrukcji.
Korzystanie z Edytora rejestru
Ostrzeżenie: Błędy popełnione podczas modyfikowania rejestru przy użyciu Edytora rejestru lub innej metody mogą być przyczyną poważnych problemów. W przypadku tych problemów może być wymagane ponowne zainstalowanie systemu operacyjnego. Firma Microsoft nie może zagwarantować, że rozwiązanie tych problemów będzie możliwe. Użytkownik modyfikuje rejestr na własną odpowiedzialność.
Za pomocą Edytora rejestru można wykonać następujące czynności:
- Lokalizowanie poddrzewa, klucza, podklucza lub wartości
- Dodawanie podklucza lub wartości
- Zmienianie wartości
- Usuwanie podklucza lub wartości
- Zmienianie nazwy podklucza lub wartości
W obszarze nawigacyjnym Edytora rejestru są wyświetlane foldery. Każdy folder reprezentuje wstępnie zdefiniowany klucz na komputerze lokalnym. W przypadku uzyskania dostępu do rejestru komputera zdalnego wyświetlane są tylko dwa wstępnie zdefiniowane klucze: HKEY_USERS i HKEY_LOCAL_MACHINE.
Korzystanie z zasad grupy
Program Microsoft Management Console (MMC) zawiera narzędzia administracyjne służące do administrowania sieciami, komputerami, usługami i innymi składnikami systemu. Przystawka programu MMC Zasady grupy umożliwia administratorom definiowanie ustawień zasad, które są stosowane do komputerów i użytkowników. Zasady grupy można implementować na komputerach lokalnych, używając lokalnej przystawki programu MMC Zasady grupy – Gpedit.msc. Zasady grupy można zaimplementować w usłudze Active Directory przy użyciu przystawki programu MMC Użytkownicy i komputery usługi Active Directory. Aby uzyskać więcej informacji dotyczących sposobu korzystania z zasad grupy, zobacz tematy Pomocy w odpowiedniej przystawce programu MMC Zasady grupy.
Korzystanie z pliku wpisów rejestru (reg)
Należy utworzyć plik wpisów rejestru (reg) zawierający zmiany w rejestrze, a następnie uruchomić go na komputerze, na którym mają zostać wprowadzone zmiany. Plik reg można uruchomić ręcznie lub przy użyciu skryptu logowania. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
Korzystanie z hosta skryptów systemu Windows
Host skryptów systemu Windows umożliwia uruchamianie skryptów VBScript i JScript bezpośrednio w systemie operacyjnym. Można utworzyć pliki skryptów VBScript i JScript, które usuwają, odczytują i zapisują klucze oraz wartości rejestru, używając metod hosta skryptów systemu Windows. Aby uzyskać więcej informacji dotyczących tych metod, odwiedź następujące witryny firmy Microsoft w sieci Web:
Metoda RegDelete
Metoda RegRead
Metoda RegWrite
Korzystanie z Instrumentacji zarządzania Windows
Instrumentacja zarządzania Windows (WMI) jest składnikiem systemu operacyjnego Microsoft Windows stanowiącym implementację standardu zarządzania WBEM (Web-Based Enterprise Management) opracowaną przez firmę Microsoft. Standard WBEM powstał w wyniku branżowej inicjatywy utworzenia standardowej technologii uzyskiwania dostępu do informacji dotyczących zarządzania w środowisku przedsiębiorstwa. Usługa WMI umożliwia automatyzację zadań administracyjnych (na przykład edytowanie rejestru) w środowisku przedsiębiorstwa. Z usługi WMI można korzystać w językach skryptów, których aparat jest zawarty w systemie Windows i które obsługują obiekty Microsoft ActiveX. Do modyfikowania rejestru systemu Windows można również używać narzędzia wiersza polecenia usługi WMI (Wmic.exe).
Aby uzyskać więcej informacji dotyczących usługi WMI, odwiedź następującą witrynę firmy Microsoft w sieci Web:
Aby uzyskać więcej informacji dotyczących narzędzia wiersza polecenia usługi WMI, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
Korzystanie z Narzędzia rejestru konsoli dla Windows
Do edytowania rejestru można użyć Narzędzia rejestru konsoli dla Windows (Reg.exe). Aby uzyskać pomoc dotyczącą narzędzia Reg.exe, wpisz polecenie reg /? w wierszu polecenia, a następnie kliknij przycisk OK.
Przywracanie rejestru
Aby przywrócić rejestr, należy użyć odpowiedniej metody.
Przywracanie kluczy rejestru
Aby przywrócić wyeksportowane podklucze rejestru, kliknij dwukrotnie plik wpisów rejestru (reg) zapisany zgodnie z opisem w sekcji „Eksportowanie podkluczy rejestru” . Można również przywrócić cały rejestr z kopii zapasowej. Aby uzyskać więcej informacji dotyczących sposobu przywracania całego rejestru, zobacz sekcję „Przywracanie całego rejestru” w dalszej części tego artykułu.
Przywracanie całego rejestru
Aby przywrócić cały rejestr, należy przywrócić stan systemu z kopii zapasowej. Aby uzyskać więcej informacji dotyczących sposobu przywracania stanu systemu z kopii zapasowej, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
Uwaga: Wykonanie kopii zapasowej stanu systemu powoduje również utworzenie zaktualizowanych kopii plików rejestru w folderze %SystemRoot%\Repair. Jeśli po edytowaniu rejestru nie można uruchomić systemu Windows XP, można ręcznie zastąpić pliki rejestru, wykonując kroki opisane w sekcji „Część 1” następującego artykułu z bazy wiedzy Microsoft Knowledge Base: