본문 바로가기

↘ [MS]/↘ [Registry]

레지스트리의 내 결함성

모든 하이브 파일은 같은 이름이지만 확장명이 .LOG 파일을 가지고 있다는 것에 주목하자. 이것은 Server 2003(그리고 모든 버전의 NT) 업데이트되는 동안 레지스트리를 보호하기 위해 사용하는 것이다.

 

하이브 파일이 변경될 마다 변경 사항은 먼저 LOG파일에 기록된다. LOG파일은 실제로는 백업 파일이 아니라 원본 파일에 대한 변경 사항을 기록한 파일이다. 하이브 파일에 대한 변경사항이 LOG파일에 기록 되고 나면 디스크에 저장된다. 간혹 디스크에 저장되기 전에 캐시에 잠시 저장되기도 하는데, 여기서는 완전히 물리적인 디스크에 기록된다는 것을 의미한다. 그리고 시스템에 문제가 생겨도 하이브를 원래의 상태로 롤백시킬 있는 충분한 정보가 LOG파일에 남아 있게 되는 것이다.

 

같은 작업의 예외는 SYSTEM 하이브이다. SYSTEM 하이브는 CurrentControlSet 포함하고 있기 때문에 정말 중요하다. 이런 이유 때문에 SYSTEM 대한 백업 파일인 SYSTEM.ALT 완전한 백업이다. 하나의 파일이 손상되면 시스템은 다른 파일을 사용해 시작할 있다.

 

HKEY_LOCAL_MACHINE\HARDWARE 하이브를 갖고 있지 않다는 것에 주목하자. Server 2003 변경된 컴퓨터 하드웨어를 자체적으로 적용할 있게 하기 위해 시스템이 시작될 때마다 키가 재구성되어야 하기 때문이다. 시스템이 시작할 플러그 플레이 관리자가 서버의 HKEY_LOCAL_MACHINE\HARDWARE 만들기 위해 필요한 정보를 수집한다.

 

모든 키들이 어떻게 구성되는지 혼란스럽다면 위의 표에서 약간 변경된 아래의 표를 보자. 비슷하지만 시스템이 시작될 키가 구성되는 방법을 보다 자세히 설명 하고 있다.

 

시작시 구성되는 방법

HKEY_LOCAL_MACHINE\HARDWARE

플러그 플레이 관리자

HKEY_LOCA_MACHINE\SAM

SAM 하이브 파일

HKEY_LOCAL_MACHINE\SECURITY

SECURITY 하이브 파일

HKEY_LOCAL_MACHINE\SOFTWARE

SOFTWARE 하이브 파일

HKEY_LOCAL_MACHINE\SYSTEM

SYSTEM 하이브 파일

HKEY_CLASSES_ROOT

SYSTEM 하이브 파일, Classes 하위

HKEY_USERS_DEFAULT

DEFAULT 하이브 파일

HKEY_USERS\Security ID

특정 사용자의 NTUSER.DAT 파일

HKEY_CURRENT_USER

특정 사용자의 NTUSER.DAT 파일