레지스터리는 여러 디렉터리 구조로 구성되어 있다는 것을 볼 수 있으며 그 디렉터리를 모두 이해 하는 것은 결코 쉽지는 않을 것이다. 하지만 실제 적용되고 있는 응용프로그램 및 서비스 등과 관계된 부분은 그렇게 많지 않으므로, 조금씩 이해를 해 나가면 된다. 필자도 역시 책으로 도움을 얻기보다는 수많은 시스템을 망가뜨리며 지식을 획득했던 것으로 생각된다. 독자들도 최소한 한 대의 데모 시스템을 준비하는 것이 좋다.

아래 디렉터리 구조는 위 그림 6-4에서 나타낸 것과 동일한 내용을 간단하게 설명을 덧붙여 보았다.
  • HKEY_CLASSES_ROOT – 파일 연관성과 COM 개최 등록정보
  • HKEY_CURRENT_USER – 최근에 로그온한 사용자와 관련된 데이터를 저장
  • HKEY_LOCAL_MACHINE – 시스템과 관련된 정보 저장
  • HKEY_USERS -  컴퓨터에 있는 모든 계정에 관한 정보 저장
  • HKEY_CURRENT_CONFIG – 현재 하드웨어 프로파일에 관련된 일부 정보를 저장
이 키들은 하나의 파일에 모두 저장된 것이 아니라, 몇 개의 파일에 분산되어 저장되어 있고, 레지스터리가 읽히면서 하나의 데이터베이스 처럼 사용하는 것이다.
 
레지스터리가 존재하는 폴더
  • %systemroot%\system32\config – 현재 운영 중인 파일
  • %systemroot%\repair – 초기 설치 시 제공한 값
  • %systemroot%\repair\regback – 응급복구 디스크로 백업한 레지스터리 백업 본이 위치하는 곳
현재 운영되고 있는 파일은 모두 잠금 상태라 복사하거나 지울 수 없으며, 백업된 내용에만 접근할 수 있다. 만일, 현재 운영되는 파일을

이제부터는 레지스터리 디렉터리 구조 및 레지스터리와 연결된 파일(하이브 파일)에 대한 정보를 알아보도록 하겠다.

레지스터리 파일의 위치 : %systemroot%\system32\config
  • HKEY_CLASSES_ROOT
  • HKEY_CURRENT_USER – 지역적으로 로그 온한 사용자의 소프트웨어 조작과 사용자 구성과 관련된 데이터를 포함
  • HKEY_USERS\<security ID of username>
    \Documents and Settings\<username>\Ntuser.dat
  • HKEY_LOCAL_MACHINE – 특정 컴퓨터와 관련해 시스템 전체에 적용되는 설정 데이터, 부팅조차 할 수 없는 문제가 발생 했을 때 사용하는 하드웨어 구성 데이터 포함, 컴퓨터의 네트워크 연결 설정,보안 설정, 장치 드라이버 설정
  • HKEY_USERS – 로컬 컴퓨터를 이용하는 사람의 모든 프로필과 사용환경 설정 내용을 가지고 있다. 시스템 정책 편집기를 통해서 어느 정도 제어를 할 수 있다.
    ① HKEY_USERS\UserProfile Profile
    처음부터 만들어지는 administrator 계정 사용자가 로그온 할 때, 사용자 프로필과 사용자 클래스 등록 데이터 베이스의 하위 키 포함
    ② HKEY_USERS\.DEFAULT
     프로필이 들어 있지 않은 사용자가 로그온 할 때 적용
  • HKEY_CURRENT_CONFIG.- 현재 컴퓨터를 구성 하고 있는 하드웨어 관련 데이터로서 부팅 할 때 현재 하드웨어 설정을 반영하는 프로필이 어떤 것인지 선택 가능한 곳

레지스터리 디렉터리 위치

윈도우 파일 위치

HKEY_LOCAL_MACHINE\SYSTEM

\winnt\system32\config\system

HKEY_LOCAL_MACHINE\SAM

\winnt\system32\config\sam

HKEY_LOCAL_MACHINE\SECURITY

\winnt\system32\config\security

HKEY_LOCAL_MACHINE\SOFTWARE

\winnt\system32\config\software

HKEY_LOCAL_MACHINE\HARDWARE

Volatile hive

HKEY_LOCAL_MACHINE\SYSTEM\Clone

Volatile hive

HKEY_USERS\<security ID of username>

\Documents and Settings\<username>
\Ntuser.dat

HKEY_USERS
\<security ID of username>_Classes

\Documents and Settings\<username>
\Local Settings\Apllication Data
\Microsoft\Windows\Usrclass.dat

UserProfile Profile;

usually under \winnt\profiles\usere

HKEY_USERS\.DEFAULT

\winnt\system32\config\default


[표 6-1] 각 레지스터리의 세부적인 내용

그 외 다른 사용자 영역과 시스템 영역에 대해서 살펴 보자
  • 일반적으로 윈도우 95/98/NT/2000은 모두 사용자 영역과 시스템 영역으로 나누어 레지스터리를 저장한다. 사용자 영역 파일은 NTUSER.DAT 그리고, 윈도우 9x는 user.dat이며 시스템/컴퓨터 영역 파일은 SYSTEM.DAT 파일이다.
  • 사용자 영역 파일에는 해당 사용자가 어떤 화면, 색상, 배경 등을 지정했는지 또는 MY Documents 폴더는 어디에 위치되었는지 기록한다.
  • NTUSER.DAT.Log는 저장 후 로그 파일이라고 생각 하면 된다.
  • 시스템 영역은 하드웨어와 관계된 것이라고 생각하면 된다.
  • NTUSER.DAT 폴더의 위치는
    Documents and Settings\All Users\NTUSER.DAT로 지정된다.

 HKEY_CURRENT_USER 의 세부 내용을 알아보도록 하자.
"레지스터리의 HKEY_CURRENT_USER 서브트리는 현재 로그온 되어 있는 사용자에 대한 영구적인 정보를 담고 있다. 이 정보는 주로 다양한 어플리케이션에 대한 구성 설정과 약간의 시스템 설정들을 포함한다. 그러므로 여러분이 이 가상 서브트리를 보기 위해 레지스터리 에디터를 사용할 때, 설치된 응용프로그램들의 리스트 목록을 보게 될 것이다. 이러한 이유 때문에, HKEY_CURRENT_USER는 다른 레지스터리 서브트리들 만큼 흥미롭지 않게 보일지도 모른다. 그러나, 응용프로그램은 사용자 인터페이스보다 훨씬 더 많은 내용들을 레지스터리에 저장하며, 이 서브트리를 연구하면 매우 유용한 정보를 얻을 수 있다. 만약 응용프로그램의 레지스터리 세팅들에 대해 어느 정도 지식이 있다면, 응용프로그램의 사용자 인터페이스로 설정할 수 없는 기능들을 활용할 수 있다. 즉, 쉽게 말하면 HKEY_CURRENT_USER 서브트리를
필요에 따라 조작하여, 응용프로그램의 모양과 세부적인 동작을 사용자 나름대로 변형할 수 있다.


Posted by NTFAQ

트랙백 주소 :: http://ntfaq.co.kr/trackback/3610 관련글 쓰기

댓글을 달아 주세요