Windows回復環境とは?
Windows回復環境(WindowsRE)とはWindows Server 2008オペレーティングシステムに組み込まれているツールであり、Windows Server 2008を正常に起動できない時にエラーを診断し、エラーから回復できるようにするテクノロジーになります。
しかし通常インストールを行ってもWindows回復環境はインストールされません。
ではこのWindows回復環境を使用するにはどうすればいいのか?2つのパターンが想定されます。
- インストールメディアから起動してWindows回復環境を起動する
- ハードディスクへのWindows回復環境のインストール
になります。(Windows回復環境=WinREと表記します)
Windows Server 2008のWinREはWindows Vistaと同じバイナリを使用します。ただし、クライアントモードとサーバーモードがあり、Windows Vistaではクライアントモード、Windows Server 2008ではサーバーモードで動作します。よって、Windows VistaのWinREではOSに問題がある場合、自動的に修復を行いますが、Windows Server 2008のWinREのサーバーモードでは問題を自動的に検出および修正は行いません。ただし、Windows Server 2008のWinREをクライアントモードで動作させることもできます。この場合、WinREがサーバーをさらに破損させることはないと予想されますが、問題を修正できない可能性があります。
Windows Vista(クライアントモード)のWinRE
Windows Server 2008(サーバーモード)のWinRE
ハードディスクへのWinREインストール方法
要件(最低限の要件になります。場合によっては他の用件も出る可能性あり)
- WinREはOSとは別のパーティションにインストールする必要があります
- パーティションのサイズは1.5GB以上必要です
- パーティションはNTFSフォーマットにする必要があります
フェーズ1:WindowsREイメージの作成
Windows 自動インストール キット (Windows AIK)をマイクロソフトのHPより入手する
*現在はWindows Vista SP1 および Windows Server 2008 用の自動インストール キットが最新となっています。
Windows 自動インストール キット (Windows AIK)のインストールを行う
1.スタートメニュー>すべてのプログラム>Microsoft Windows AIK>Windows PE Tools コマンドプロンプトで、下記を行う。
- copype x86 c:winre_x86
- imagex /export /boot d:sourcesboot.wim 2 c:winre_x86winre.wim “Windows Recovery Environment”
- imagex.exe /mountrw c:winre_x86winre.wim 1 c:winre_x86mount
解説
- c:winre_x86 にWindows PE ビルド環境をセットアップしています。
- Windows Server 2008インストールメディアに入っているboot.wimよりWinREを取り出しています。
- これからカスタマイズするために2で作成したwinre.wimを展開しています。
*メディアによってはboot.wimの内容が異なっていることがあり、3でwinre.wimを展開してもsourcesなどの他フォルダができないものがあります。筆者はこれではまりました(マイクロソフトのHPで提供されているisoファイルなど)ボリュームライセンスで提供されているメディアでは想定のフォルダができました。
2.下記の内容のテキストファイルを作り、c:winre_x86mountwindowssystem32フォルダに、winpeshl.iniの名前で保存。
[LaunchApp]
AppPath=x:sourcesrecoveryrecenv.exe
解説
WinRE起動時にシステム回復オプション画面が上がる設定を行っている
3.c:winre_x86mountsourcesrecoveryフォルダにToolsサブフォルダを作る。
下記の内容のテキストファイルを作り、このToolsフォルダに、WinREConfig.xmlの名前で保存。
<Recovery>
<Server/>
</Recovery>
解説
WinREをサーバーモードに設定している
参考
4.Windows PE Tools コマンドプロンプトで、下記を行う。
imagex /unmount /commit c:winre_x86mount
解説
カスタマイズが完了したのでwinre.wimを固めている
5.WinREインストール用のモジュールをWinREフォルダを作りコピーしておく
- c:winre_x86winre.wim
- c:program fileswindows aiktoolspetoolsx86bootboot.sdi
- c:program fileswindows aikrecoverysetautofailover.cmd
6.WinREのブータブルCD作成(※オプション)
- copy c:winre_x86winre.wim c:winre_x86isosourcesboot.wim
- oscdimg -n -bc:win_x86etfsboot.com c:winre_x86ISO c:winre_x86winre.iso
解説
- boot.wimをwinre.wimで上書き
- winreのISOイメージを作成
フェーズ2:WindowsREイメージのインストール
DiskPartツールを使用してWindowsREパーティションを作成してからWindows Server 2008をインストールします。Windows Server 2008インストール後にWindowsREのインストールを行います。
Windows Server 2008のインストールメディアより起動し、「コンピュータの修復」から「コマンドプロンプト」をクリックしてコマンドプロンプトウインドウを開きます。
- Diskpart
- sel disk 0
- clean
- Create Partition Primary Size=1500
- Create Partition Primary
- sel part 1
- Format FS=NTFS Label=”Recovery” Quick
- sel part 2
- Format FS=NTFS Label=”Windows” Quick
- Active
- Exit
パーティションの設定ができたら先ほど作成したWindowsボリュームにWindows Server 2008をインストールします。
7.c:winreフォルダを作り、5で作成した下記の3つのファイルをc:winreフォルダへコピーする。
winre.wim
boot.sdi
setautofailover.cmd
8.D:ドライブにWinREのインストールを行う。
- copy c:winrewinre.wim d:
- copy c:winreboot.sdi d:
- copy c:winresetautofailover.cmd d:
- d:setautofailover.cmd /target d: /disk 0 /partition 1 /wim
これでドライブ文字は外されインストール終了
*マニュアルにはドライブの先頭にWindowsREを入れないといけないと書いてあります。実際にWindowsAIKの初期バージョンでは先頭パーティションにインストールしないと起動しませんでした。そこで試しに最新バージョンのWindowsAIKを使用して後ろのパーティションにWindowsREをインストールしてみました。
d:setautofailover.cmd /target d: /disk 0 /partition 2 /wim
結果から申しますとうまくいきました~
ということは、運用後にWindows回復環境(WindowsRE)を導入することができるということですね。
フェーズ3:エラーから回復できるようにするには
System File Checkerを使用することによりエラーから回復処理を行います。
sfc /scannow
全ての保護されたシステムファイルの整合性をスキャン + 可能な場合には問題のあるファイルを修復
sfc /scanfile
完全パスを指定されたファイルの整合性をスキャン + 問題が識別された場合は修復
sfc /verifyonly
全ての保護されたシステムファイルの整合性をスキャン(修復なし)
sfc /verifyfile
完全パスを指定されたファイルの整合性をスキャン(修復なし)
sfc /offbootdir
オフライン修復の場合は、オフライン起動ディレクトリの場所を指定
sfc /offwindir
オフライン修復の場合は、オフラインWindows ディレクトリの場所を指定
例
- sfc /verifyonly
- sfc /verifyonly /offbootdir=c: /offwindir=c:windows
- sfc /scannow /offbootdir=c: /offwindir=c:windows
このようにWinRE環境上でコマンドを実行することによりエラーからの回復を行います。
余談ですが、この設定ではエラーが出ると自動的にWinREが起動してしまいます。ということは、エラーのダンプなどが取れないということになります。サーバーなどではなぜエラーになったのか?などを追求しなくてはいけない場合がありますが、それができないということになります。はたしてサーバー環境でこのWinREを使うことがいいのか悩むところですね
コメント
[…] 回復イメージ (Windows RE) については以下の情報が参考になります。 システム回復イメージを展開する Windows 回復環境 (Windows RE) の概要 Windows回復環境(WindowsRE)に関して […]