● レジストリの実体
次に、WinXP のレジストリ構成と実体との関係を調べていく。
まず、Regist"o"ry Rev.2 まではレジストリ実体のファイルのことを「レジストリデータベース」と呼ぶことにしていたが、Rev.3 以降は Microsoft に倣って「レジストリハイブ」または単に「ハイブ(Hive)」と呼ぶことにする。
レジストリエディタで構成を一覧できることは前節で述べたが、その構成の元になっているレジストリハイブの一覧が次のレジストリパスにあるレジストリキーに記されている。
HKEY_LOCAL_MACHINE\System\CurrentCotnrolSet\Control\HiveList
上図の右ペインは見慣れない書き方で記してあるが、ここに挙がっているファイルがあなたが現在ログオンしている WinXP の環境で使用中のレジストリハイブなのである。
ハイブの所在は大きく分けて2カ所だ。%SystemRoot%\system32\config(通常は C:\Windows\system32\config)にシステム関連もしくは共通情報のハイブ、 %UserProfile%(通常は C:\Documents and Settings\ログオンアカウント名)にユーザ毎の設定情報のハイブが置かれる。その他に特殊なシステムアカウント用のレジストリハイブは、%UserProfile%\..\LocalService、%UserProfile%\..\NetworkService に在る。レジストリデータには、"完全なパス"とでも呼ぶのだろうか、ドライブレベルでなくデバイスレベルからファイル位置が記されている。
%SystemRoot%\system32\config
C:\Documents and Settings\ユーザ名
ここに挙げられた全てのハイブは、全て OS から排他制御(ロック)がかかっており、ファイルのプロパティこそ見ることはできるが、ハイブファイルのコピーも変名もまかり成らない。
システム関連のレジストリハイブは起動時メニューで起動する WinXP を選択した直後からシャットダウン(或いは再起動)寸前まで使用状態となり、ユーザ毎のハイブはログオンからログオフまでロックされ続ける。
さて、疑問が生じる。ロックされ OS 外部からのアクセスを全く許されないレジストリ。WinXP に限らず、過去の NT でも同様だ。にもかかわらず、修復ディスク作成等でレジストリを退避できるではないか。レジストリのアクセスロックを解除する方法があるのだろうか。