2022年4月16日土曜日

Dynabook(T75)のHDDを修復(その3)WindowsREの復活

  前回述べたようにBCDの回復(再構築)は、

> bootrec /rebuildbcd

で出来るが、これでは回復環境(WindowdRE)は回復出来ない。

 WindowsREを回復させるには reagentc コマンドを使う。ただ、reagentc はデフォルトでは現在立ち上がっているシステムを対象としているので reagentc をWindowsPEから使うには一工夫が必要である。

 先ず、reagentcを使うには予め回復環境のボリュームにドライブ文字を割り当てる必要がある。ディスクの管理情報を表示させ、その中で回復環境(WinRE)のVolumeは非表示となっているのでこれにドライブ文字を次の様に割り付ける。次の下線の文字が入力するコマンドである。

> diskpart
DISKPART> list volume
DISKPART> select volume N   ...NはWindowsREの含まれるVolume番号
DISKPART> assign letter R   ...仮に文字Rを割り付ける
DISKPART> list volume
DISKPART> exit

 これを実行した結果、次の様にWinREのボリューム(Volume 3)にRが割り付けられている。なおVolume5,6はWindowsPEの入ったUSBメモリーなので無視してよい。

 WindowsREの実体はWindowsRE.wimというファイルで、これはR:¥Recovery\Windowsのディレクトリ(フォルダ)に収納されているが(私のケースでは)Windows以下が隠しファイルになっていて表示されず、危うく欠落していると判断するところだった。パーティションの容量とボリュームの空き容量が余りにも違う(0.5GBほど少ない)事から何か隠れていると追及して分かった(隠しファイルを表示したい場合はdirコマンドに/a:hオプションを付ける)。

 reagentc はWindowsPEには含まれないのでC:ドライブにあるものを使う。そのため次の様に先ずカレントディレクトリを C:¥Windows¥System32 に移す

> c:
C:¥> cd ¥Windows¥system32
C:¥Windows¥System32>

 回復環境の場所をBCDに設定するには次のコマンドを使う。/target が起動したディスク以外のディスクに設定する場合の書き方である。

C:¥Windows¥system32> reagentc /setreimage /path R:¥Recovery¥WindowsRE /target C:¥windows

次に 回復環境を起動可能にするには、 

C:¥Windows¥system32> reagentc  /enable  /osguid {guid}

とする。ここで/osguid の引数の{guid}は bcdedit /enum /v で表示されるブートローダの identifier の値(GUID)である。

 これらを適用した結果、BCDのdefaultのブートローダーには次の様に recoverysequence recoveryenabled が追加されWindowsREが立ち上がるようになった。

Windows ブート マネージャー
--------------------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager
locale                  ja-JP
default                 {default}
resumeobject            {5ef36c70-b615-11ec-93cb-806e6f6e6963}
displayorder            {default}
timeout                 30

Windows ブート ローダー
--------------------------------
identifier              {default}
device                  partition=C:
path                    \Windows\system32\winload.efi
description             Windows 10 Home
locale                  ja-JP
recoverysequence        {8d7ba65d-b72b-11ec-b0fc-b5353a56518a}
recoveryenabled         Yes
osdevice                partition=C:
systemroot              \Windows
resumeobject            {5ef36c70-b615-11ec-93cb-806e6f6e6963}
bootmenupolicy          Standard

 ここまで出来て回復環境が使えるようになったので、あとはDynabookの持ち主にやってもらう事とした。

メデタシ、メデタシ。

 

 

 

 

 

 

 

 

0 件のコメント:

コメントを投稿