Optane Memoryを使う為に無理するとこうなる orz
UEFIモードじゃないっ!
昨日、運用に失敗したOptane Memoryだが、ダメだったからといって「はいそうですか」と諦められるワケもなく、何とかして導入すべくいろいろ調査を開始したわけだが、ここに来て、とんでもない事実にぶつかった。
今の今まで私は自分のPCがUEFIモードで起動していると思い込んでいたのだが、何と、BIOSモードでしかないという事実を発見してしまった。
そもそも、Optane MemoryはUEFIモードで動作するものだから、コレでは当然だがOptane Memoryが使える訳がない。
しかも、このUEFIモードは、OSをインストールする時にストレージのフォーマットをMBRではなくGPTでフォーマットしなければならないという制約がある。
…詰んだ orz
この事実にぶつかったとき、私はまさにそう思った。
何故ならOptane Memoryを使う為にはOSの再インストールから行わなければならないからだ。しかも、ストレージはまっさらな状態ではないので、フォーマットから十分に気をつけて起動ドライブを作り込んでいかないといけない。
Optane Memoryの導入は、一時停止として時期を見計らうか? と一端は諦めたのだが、ネットで調べて見ると新たな情報をキャッチ。
なんと、Windows10において、Creator’s Update以降に「mbr2gpt.exe」なるコマンドが実装され、MBRのフォーマットを後天的にGPTフォーマットにする事ができる機能が付加されたらしい。
これなら、BIOSブートからUEFIブートへと変更できる可能性がある、と早速コマンドラインから試してみたところ、今度はユーザーアカウントの権限(UAC)が邪魔して、mbr2gpt.exeの実行が完了しないという問題が発生…。
何とか、このUACを解除して「mbr2gpt.exe」を実行してみると、確かに物理的に起動ドライブはGPTフォーマットへと置き換わり、その変わりFAT32領域100MB分が別パーティションに作成された。
もともと、私が使用しているAsRockのマザーボードは、UEFI起動が可能な製品なので、これで問題なし、と意気揚々と再起動したところ、大惨事はココから始まってしまったのである。
なんぢゃこりゃ~
再起動後、出てきた画面がコレである。ちなみに画面が歪んでいるのは、私が使用しているモニタが湾曲モニターだから。
内容としてはリカバリーでリペアしろ、という意味だが、つまりはブート情報が壊れたか何かで、起動ドライブからブートできないと言っているのである。
ご丁寧に、BCDデータのフォルダ場所まで説明してくれている。が、よくよく考えて欲しいのは、Windowsが全く起動しない状況でどうしろというのか?
まぁ、極端な事を言えば、インストールメディア等で起動して、その後コマンドプロンプトで何とかしろ、と言っているのだが、正直、この時点で素人にはハードルの高い話である。
そしてこのハードルの高さこそ、大惨事を大惨事たらしめている原因であり、丸一日私が苦労する事になった始まりである。
人によって構成が違う
ネットで、このような状態になった時の対処法などを調べて見ると、それなりに情報は出てくる。だが、どれも似たような事を言いつつも、微妙に手順が違っていたり、マストと言われる絶対にやっておかねばならない約束事が違うのである。
なので、私的に決定打としてはコレ、という開設は難しいのだが、とりあえず一つ間違いなく言えているのは、現時点でWindowsというOSが入っているボリュームドライブのブートデータは壊れてしまっているか、現在の設定に合っていないという事。
なので、まずはソイツの復旧から行わなければならない。
まず、インストールメディア等、PCのいつものブートドライブ以外からWindowsを起動し、コマンドプロンプトを呼び出す。インストールメディアだと「インストールをはじめる」の選択肢の後に「トラブルシューティング」が出てくるので、そこからコマンドプロンプトを起動させる。同じ場所に「スタートアップ修復」という自動修復の項目もあるのだが、ほとんどのケースでコイツでは直らない。軽度な問題なら直るのかも知れないが、BCDというブートデータが使えないという事態は、既に重度な問題と認識した方がいい。
ココから、私がやった手順をそのまま記載しても良いのだが、結構分かりづらい話になるので、参考にしたURLを紹介する。
ぼくんちのTV別館
https://freesoft.tvbok.com/tips/efi_installation/uefi_bootrec.html
EaseUS
https://jp.easeus.com/partition-manager/fix-uefi-error-in-windows-10-8-7.html
どちらも、似たような事が書いてあるが、微妙に「こうしなければならない」という条件等が異なる。
なので、私の状況を説明すると「私は必ずしもインストールメディアからブートした状況下ではUEFIモードで起動していたわけではない」という事と「bootrec /Rebuildbcdコマンドでスキャン後に見つけたブートデータのインストールしてが、結果としては失敗した」という事。
特に後者は、失敗したという状況下であっても「bcdboot c:\Windows /l ja-JP /s b: /f ALL」(ドライブレターなどは環境によって変える必要がある)というコマンドでブートデータをコピーして復帰させたという事を付記しておく。
とにかく、UEFIモードは起動ドライブ内に別のパーティションで「EFIシステムパーティション」を作成するので、そこにあるブートデータを起動ディスクにコピーする必要がある、という事である。
…こうやって、説明を書いている今でも、詳しく説明しろ、と言われても説明できないくらい、私もよく分かっていない内容である。ただ、客観的に起動させるにはBCDデータが起動ドライブにも必要だが、それが壊れたなら正常なデータを再構築するしかない、という事。
そしてその再構築には正常なデータをシステムパーティションからコピーしてきて、そこからWindowsの自動修復をかけてやる必要がある、という事である。
ただ問題もある
この方法によって起動させる事はできた。だが、問題がないわけではない。
どうも、bootrec /Rebuildbcd」でBCDを再作成すると、Windows OSから回復パーティションが認識出来なくなくなるらしい。
実際に、管理者から起動させたコマンドプロンプトで「reagentc /info」とコマンドを打つと、Windows REの状態が「Disable」になっている。
これを「Enable」にしてやらないといけないのだが、どうも前述サイトに説明されているやり方でやってみても上手くいかない。
これは次トラブルが来ると、自ずとシステム再インストールが待ち受けている、という事が言えるかも知れない。
その前に解決策が見つかればよいが…。
とりあえず、復旧はさせる事ができたし、起動モードとしてUEFIモードにする事もできた。が、依然としてOptane Memoryの問題は解決していないし、Windows REの状態が「Enabled」にもなっていないので、トラブルが起きた時はもう致命打になる可能性が高い状態である。
次、トラブルが起きたら、もう覚悟を決めるしかないかもしれない。
それにしても…Windowsのクリーンインストール時にUEFIモードでのインストールをこんなにハードルの高い状態にしている事そのものが問題だ。
Macのように、システムが大幅に変わる際には、ユーザーに覚悟を決めさせて一気に乗り換えるとかやらないと、いつまで経ってもレガシー環境を引きずるしかなくなってしまう。
Microsoftにはそのアタリを割り切ってもらいたいものである。