레지스트리 구조

레지스트리는 하위 트리와 해당 키, 하위 키 및 항목의 계층 구조로 구성됩니다.

한 컴퓨터의 레지스트리 내용은 각 컴퓨터에 설치된 장치, 서비스 및 프로그램에 따라 다른 컴퓨터와 크게 다를 수 있습니다.

키는 하위 키를 가질 수 있고 하위 키도 차례로 하위 키를 가질 수 있습니다. 대부분의 레지스트리 정보는 디스크에 저장되고 영구적인 것으로 간주되는 반면 일부 정보는 휘발성 키에 저장되고 운영 체제를 시작할 때마다 덮어씁니다.

레지스트리 하위 트리

Windows Server 2003 제품군 운영 체제에는 HKEY_LOCAL_MACHINE 및 HKEY_USERS라는 두 개의 레지스트리 하위 트리가 있습니다. 그러나 레지스트리의 정보를 쉽게 찾을 수 있도록 하기 위해 레지스트리 편집기 유틸리티에는 다섯 개의 하위 트리가 표시되며 이 중 세 개는 다른 부분의 별칭입니다. 다음 표는 이 다섯 개의 하위 트리에 대한 설명입니다.

 

루트 키 이름설명

HKEY_LOCAL_MACHINE

버스 유형, 시스템 메모리, 장치 드라이버 및 시작 제어 데이터 같은 하드웨어 및 운영 체제 데이터를 포함하여 로컬 컴퓨터 시스템에 대한 정보가 들어 있습니다.

HKEY_CLASSES_ROOT

다양한 OLE 기술 및 파일 클래스 연결 데이터에서 사용하는 정보가 들어 있습니다.HKEY_LOCAL_MACHINE\SOFTWARE\Classes 또는HKEY_CURRENT_USER\SOFTWARE\Classes에 해당 키 또는 값이 있는 경우 특정 키 또는 값은HKEY_CLASSES_ROOT에 있습니다. 키나 값이 양쪽 모두에 있으면 HKEY_CURRENT_USER 버전은HKEY_CLASSES_ROOT에 나타나는 버전입니다.

HKEY_CURRENT_USER

환경 변수, 바탕 화면 설정, 네트워크 연결, 프린터 및 프로그램 기본 설정을 포함하여 현재 대화형으로 로그온한(원격 로그온과 대조) 사용자의 사용자 프로필이 들어 있습니다. 이 하위 트리는HKEY_USERS 하위 트리의 별칭이며 HKEY_USERS\security ID of current user를 가리킵니다.

HKEY_USERS

현재 로드된 사용자 프로필과 기본 프로필에 대한 정보가 들어 있습니다. 여기에는HKEY_CURRENT_USER에도 나타나는 정보가 포함됩니다. 서버에 원격으로 액세스하는 사용자는 서버 상의 이 키에 프로파일을 가지지 않습니다. 그러한 사용자들의 프로필은 자신의 컴퓨터에 있는 레지스트리로 로드됩니다.

HKEY_CURRENT_CONFIG

시스템 시작 시 로컬 컴퓨터 시스템이 사용하는 하드웨어 프로필에 대한 내용이 들어 있습니다. 이 정보는 로드할 장치 드라이버와 사용할 디스플레이 해상도 같은 설정을 구성하는 데 사용됩니다. 이 하위 트리는 HKEY_LOCAL_MACHINE 하위 트리의 일부로HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current를 가리킵니다.

각 루트 키 이름은 소프트웨어 개발자가 이것이 프로그램이 사용할 수 있는 핸들임을 알 수 있도록 HKEY_로 시작합니다. 핸들은 프로그램이 액세스할 수 있도록 리소스를 식별하는 데 사용되는 값입니다.

참고

  • Windows 2000 및 Windows Server 2003 제품군 운영 체제에서 HKEY_CLASSES_ROOT의 동작은 이전 버전의 Windows에서 해당 키의 동작과 다릅니다. Windows 2000 및 Windows Server 2003 제품군 운영 체제에서 사용자별 클래스 등록이라는 기능은 사용자별 클래스 등록과 컴퓨터별 클래스 등록이 모두 포함된 HKEY_CLASSES_ROOT 보기를 제공합니다. 이 기능으로 파일 연결, COM 구성 요소 및 MIME 형식에 대한 것을 포함하여 사용자별로 각기 다른 클래스 등록 집합을 가질 수 있습니다. 이전에는 모든 사용자가 등록을 공유하였기 때문에 한 사용자가 다른 사용자의 등록을 변경할 수 있었습니다. 사용자별 클래스 등록은 각 사용자의 등록을 분리하므로 관리자가 HKEY_LOCAL_MACHINE\Software\Classes의 보안을 강화할 수 있습니다.

레지스트리 하이브와 파일

하이브는 레지스트리 계층 구조의 맨 위에 위치하는 키, 하위 키 및 값의 집합을 설명하는 용어입니다. 하이브는systemroot\System32\Config 폴더와 systemdrive\Documents and Settings\username 폴더에 있는 단일 파일과 .log 파일의 지원을 받습니다. systemroot 문자열은 Windows Server 2003 제품군 시스템 파일이 포함되어 있는 디렉터리 이름의 자리 표시자입니다.systemdrive 문자열은 Windows Server 2003 제품군 시스템 파일이 포함되어 있는 파티션의 자리 표시자입니다. 예를 들어 Annie라는 사용자의 Windows Server 2003 제품군 시스템 파일은 C: 파티션의 Windows 디렉터리에 있으며 하이브 파일은 C:\Windows\System32\Config와 C:\Documents and Settings\Annie 폴더에 저장됩니다. 하이브는 레지스트리 파일 또는 레지스트리 로그 파일이라고도 합니다.

기본적으로 대부분의 하이브 파일(DEFAULTSAMSECURITYSOFTWARE 및 SYSTEM)은 systemroot\System32\Config 폴더에 저장됩니다. Windows Server 2003 제품군 운영 체제에서 Ntuser.dat 및 Ntuser.dat.log를 포함하여 컴퓨터의 각 사용자에 대한 사용자 프로필 정보의 위치는 운영 체제를 새로 설치한 것인지 Windows NT 또는 Windows 2000에서 업그레이드한 것인지에 따라 달라질 수 있습니다. 새로 설치한 경우 Ntuser.dat 및 Ntuser.dat.log 파일이 systemdrive\Documents and Settings\username 폴더에 저장됩니다. Windows NT 또는 Windows 2000에서 업그레이드한 경우 Ntuser.dat 및 Ntuser.dat.log 파일은systemroot\Profiles\username 폴더에 저장됩니다.

Windows Server 2003 제품군 레지스트리에서 각 하이브는 표준 파일 집합과 연결됩니다. 다음 표에서는 Windows Server 2003 제품군 운영 체제를 실행하는 컴퓨터의 표준 하이브와 파일을 나타냅니다.

 

레지스트리 하이브파일 이름

HKEY_LOCAL_MACHINE\SAM

Sam 및 Sam.log

HKEY_LOCAL_MACHINE\SECURITY

Security 및 Security.log

HKEY_LOCAL_MACHINE\SOFTWARE

Software 및 Software.log

HKEY_LOCAL_MACHINE\SYSTEM

System 및 System.log

HKEY_CURRENT_CONFIG

System 및 System.log

HKEY_CURRENT_USER

Ntuser.dat 및 Ntuser.dat.log

HKEY_USERS\.DEFAULT

Default 및 Default.log

레지스트리 키의 항목

각 레지스트리 키나 하위 키는 항목이라는 데이터를 포함할 수 있습니다. 일부 항목에는 각 사용자별 정보가 저장되지만 나머지 값 항목에는 컴퓨터의 모든 사용자에게 적용되는 정보가 저장됩니다. 항목에는 값의 이름, 데이터 형식 및 값이라는 세 부분이 있습니다. 항목의 세 부분은 항상 다음 순서로 나타납니다.

항목의 구조

데이터 유형은 데이터의 형식을 나타냅니다. 0에서 0x7FFFFFFF까지의 데이터 형식은 시스템에서 정의할 목적으로 예약되어 있습니다. 프로그램에서 이러한 데이터 형식을 사용할 수 있지만 0x80000000에서 0xFFFFFFFF까지의 데이터 형식이 프로그램에서 사용할 목적으로 예약되어 있습니다.

다음 표는 현재 시스템에서 정의하여 사용 중인 데이터 형식입니다.

 

데이터 형식설명

REG_BINARY

원시 이진 데이터입니다. 대부분의 하드웨어 구성 요소 정보는 이진 데이터로 저장되고 레지스트리 편집기에는 16진 형식으로 표시됩니다.

REG_DWORD

4바이트 길이의 숫자로 표현되는 데이터입니다. 장치 드라이버와 서비스에 대한 많은 매개 변수들이 이 종류이며 레지스트리 편집기에는 이진, 16진 또는 10진 형식으로 표시될 수 있습니다.

REG_EXPAND_SZ

가변 길이의 데이터 문자열입니다. 이런 데이터 종류에는 프로그램이나 서비스가 데이터를 사용할 때 비로소 확인되는 변수가 포함됩니다.

REG_MULTI_SZ

다중 문자열입니다. 사용자가 읽을 수 있는 형식으로 된 목록이나 여러 값을 포함하는 값은 일반적으로 이 종류입니다. 항목은 공백, 쉼표 또는 다른 표시에 의해 구분됩니다.

REG_SZ

고정 길이의 텍스트 문자열입니다.

REG_FULL_RESOURCE_DESCRIPTOR

하드웨어 구성 요소나 드라이버의 리소스 목록을 저장하기 위해 설계된 일련의 배열 속의 배열입니다.

 

레지스트리 관리에 대한 자세한 내용은 Microsoft Windows Resource Kits 웹 사이트의 "Windows Server 2003 Family Registry Reference"를 참조하십시오.


Posted by rubymix
,