레지스트리 하이브 편집하기
게시일: 2005/06/05 | 글쓴이: doa | 19912 번 | 프린트 | 메일


레지스트리 하이브는 레지스트 정보를 모아놓은 바이너리 파일이다. 레지스트 하이브는 레지스트리를 편집할 때 사용하는 레지스트리 편집기로 쉽게 편집할 수 있지만 많은 사람들이 레지스트리 하이브를 편집하는 방법을 모르고 또 그 중요성 또한 모르는 것 같다.

필자의 팁, XP Home을 XP Pro로 설치하기를 보면 XP Home 설치 CD의 레지스트리 하이브를 편집하는 방법이 나온다. 그러나 레지스트리 하이브를 편집하는 것은 단순히 설치 CD의 정보를 바꿀 때 뿐만 아니라 레지스트리에 문제가 생겨 시스템을 복구할 때 아주 중요하다.

윈도우즈 게시판에 올라온 글, windows xp 복구처럼 레지스트리의 문제로 시스템이 부팅되지 않거나 로그온 할 수 없는 경우 레지스트리만 변경하면 시스템을 복구할 수 있다. 그러나 문제는 복구 콘솔에서는 레지스트리를 편집할 수 없고, Windows PE를 이용하면 레지스트리를 편집할 수 있지만 이때 편집되는 레지스트리는 시스템 레지스트리가 아니라 Windows PE의 레지스트리라는 점이다.

결국 시스템 레지스트리를 변경하기위해서는 Windows PE로 부팅한 후 레지스트리 하이브를 편집해야 시스템 레지스트리를 변경할 수 있다. 시스템을 복구하기위해 레지스트리 하이브를 편집하려면 Windows PE가 필요하다. 현재 인터넷에 돌고 있는 Windows PE중 한글을 지원하며 기능적으로 무난한 것지니 님의 SuperRCD v2.0a이다. eMule과 같은 P2P를 사용할 수 있다면 다음 링크를 클릭해서 다운받아 사용하기 바란다.

다운로드: SuperRCD v2.0a


  1. Windows PE로 부팅 앞서 설명한 것처럼 시스템 레지스트리를 변경하기위해서는 Windows PESuperRCD와 같은 Bart PE로 부팅해야 한다. 여기서는 설명의 편의를 위해 Bart PE의 일종인 SuperRCD로 부팅하는 것으로 하겠다.

  2. 레지스트리 하이브 결정 문제가 되는 레지스트리에따라 읽어 들일 하이브를 결정한다. 예를들어 windows xp 복구에서 처럼 userinit.exe에 문제가 있어 로그인하지 못하는 경우 userinit.exe는 다음과 같은 Winlogon 키에 존재하므로 Software를 읽어 들이면 된다.

    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
    추가정보: 레지스트리 하이브의 종류와 역할 일반적으로 시스템이 설치됐을 당시의 레지스트리 정보는 %SystemRoot%\Repair 폴더에 저장되며, 현재 레지스트리 정보는 %SystemRoot\System32\Config 폴더에 저장된다. 아울러 사용자에 관한 정보는 %UserProfile% 폴더에 저장된다.

    %SystemRoot%\Repair 폴더와 %SystemRoot\System32\Config 폴더, %UserProfile% 폴더에 존재하는 하이브와 그 역할은 다음과 같다.

    %SystemRoot%\Repair, %SystemRoot\System32\Config 폴더
    하이브레지스트리부속 파일
    defaultHKEY_USERS\.DEFAULTDefault.log, Default.sav
    SamHKEY_LOCAL_MACHINE\SAMSam.log, Sam.sav
    SecurityHKEY_LOCAL_MACHINE\SecuritySecurity.log, Security.sav
    softwareHKEY_LOCAL_MACHINE \SoftwareSoftware.log, Software.sav
    systemHKEY_LOCAL_MACHINE \SystemSystem.alt, System.log, System.sav
    userdiff없음Userdiff.log
    %UserProfile% 폴더
    하이브레지스트리부속 파일
    Ntuser.datHKEY_CURRENT_USERNtuser.dat.log


  3. 하이브 읽기 일단 읽어 들일 하이브가 결정되면 레지스트리 편집기를 이용해서 문제가 되는 하이브를 읽어 편집하면 된다. 절차는 다음과 같다.
    1. 시작/실행/regedit를 입력하고 확인을 클릭한다.
    2. 레지스트리 편집기좌측 패널에서 임의의 루트 키(예: HKEY_LOCAL_MACHINE)를 클릭한다주1.
    3. 파일/하이브 로드 메뉴를 클릭한다.
    4. 하이브 로드창의 파일 이름을 다음처럼 지정하고 열기 버튼을 클릭해서 레지스트리 하이브를 읽어 들인다. Config 폴더의 하이브의 종류와 역할은 위의 추가정보를 참조하기 바란다.
      %SystemRoot\System32\Config\Software
      예: 
      C:\Windows\System32\Config\Software
    5. 하이브 로드 창의 키 이름에 적당한 이름(예: SysSW)을 지정한다.


  4. 하이브 편집
    1. 문제가 되는 시스템 레지스트리 키로 이동해서 레지스트리를 편집하면 된다. 위의 예에서 처럼 userinit.exe에 문제가 있는 경우 다음 레지스트리로 이동하면 된다.
      <루트키>\<읽은 키 이름><문제 키>
      예:
      HKLM\SysSW\Microsoft\Windows NT\CurrentVersion\Winlogon
    2. 우측 패널에서 문제가 되는 값(예: Userinit.exe)을 변경한다.


  5. 하이브 내리기주2
    1. 다음 키를 클릭한다.
      <선택한 루트 키>\<입력한 키 이름>
      예: 루트키가 HKLM이고, 키 이름이 SysSW인 경우
      HKLM\SysSW
    2. 레지스트리 편집기파일/하이브 언로드 메뉴를 클릭한다.
    3. 언로드 하이브 확인 창에서 버튼을 클릭한다.


주1: 레지스트리 하이브를 편집하려면 일단 레지스트리 하이브를 레지스트리 편집기로 읽어와야 한다. 레지스트리 편집기에서 레지스트리 하이브를 읽어 들이기위해서는 임의의 루트 키를 클릭해야 한다. 임의의 루트 키를 클릭하지 않으면 파일/하이브 로드 메뉴가 활성화되지 않는다.

주2: 일반적으로 레지스트리 편집기에서 내리지 않는한 레지스트리 편집기를 실행할 때마다 자동으로 로드된다.

댓글: 이 팁은 romeo91님의 질문, windows xp 복구에대한 답으로 작성되었습니다.


ActiveX 설치 후 팝업 차단을 할 수 없는 경우 필자는 ActiveX를 무척 싫어한다. 얼마... (8111) 2005-06-05
XP Home을 XP Pro로 설치하기 오늘 나만의팁 게시판에 xp home 을 pro 로 바꾸고 싶을... (14597)2005-06-05

QAOS.com에 게시된지 1년 이상된 자료와 관리자가 공개한 자료는 누구나 제한없이 읽을 수 있습니다.
그러나 QAOS.com의 자료를 퍼가는 것은 금지하고 있습니다.

이 정보가 유용하다고 생각되시면 QAOS.com과 많은 다른 사람들을 위해 퍼가기 보다는 링크로 알려주시기 바랍니다.

세상사는 이야기



RSS 구독 (익명 | 회원 | 강좌 | 포럼)
(C) 1996 ~ 2017 QAOS.com All rights reserved.