日別アーカイブ: 2022年1月30日

Windows Server 2022が起動しなくなった

ディスクのパフォーマンステストをして、いろいろとディスク交換していたら突如、Windowsが起動しなくなってしまった。

SATAコントローラのPort3,4のディスク交換だと問題なかったのに、Port1,2を変えた途端

これですよ(涙

いろいろと格闘してみるも、この時点では原因を完全につかみ切れなく、面倒になって、クリーンインストールすることに。

ところが、クリーンインストールをしようとしたところ…

Port5に挿したSSDしか認識していない。この状態で「Next」を押しても上記の通り、new partionを作成できない旨の警告が出て先に進めず。

ここからは推測だけど

  • ディスクをPoolにするとインストールドライブとして認識されず、使用できなくなる
  • Microserver Gen8でPort5を使用してWindowsをインストールした場合Port1~4のどこかにブートローダが保存される(Port1?)

以上のあたりをつけて、Windows 11でPoolとして作成したディスクをUSB接続し、いったんPoolを削除。

4本がんばって削除…

無事、インストール画面でディスクが見えた。と同時に各ディスクにMSR領域がちゃんと確保されていることを確認(なのに、なぜ起動できなかった???)

 ⇒ このMSR領域はPoolのためのものではないかと推測

すっきりさせた状態でインストール。

Windows Server 2022をインストール後にディスク管理を見てみると…

予想通り、ディスク0(Port1)の先頭にブートローダらしきものが書き込まれてる!

ということで、突然Windows 2022が起動しなくなったのは元々Port1に挿していたHDDを新しいHDDに入れ替えたことで、ブートローダが消えちゃった為ということがほぼ判明…

つまり、同時にMicroserver Gen8でPort5にSSDを挿してWindowsをインストールする場合はPort1にディスクを挿しておく必要があり(正確にはPort5だけだったらそれでもokですが、普通Port1~4を使わないという選択肢はないですよね…)、Port1のディスクを抜くとブートローダを見失うので、OSが起動しなくなるというわけか。

これって、MicoroServer Gen8の運用でよく見られるUSBメモリにブートローダを入れて、そこからシステムが入ったディスクを読みに行かせるテクニック以外にも、Port1の先頭にブートローダ領域を作ってやり、そこにブートローダを突っ込むことでLinux等も運用できるのではないかということでもあるよね…(検証はしませんが)

これで一件落着と思いきや、よく見たら

ディスク0、MBRで2TBしか認識してない(涙

MicroServer Gen8がBIOSにしか対応してないからWindows Server 2022がブートローダ領域を格納するディスク0をGPTではなくMBRで作成したのね…

ということはやはり、Windowsもディスクをフルに使うためにはUSBメモリを挿してそこにブートローダを突っ込むという選択しかなさそう…

まずは筐体内部のUSBポートにUSBメモリを挿入。

もったいないけどこちらを使用。

続いてbcdbootコマンドでブートローダをUSBメモリに書き込み。

bcdboot C:\Windows /s D: /f ALL

書き込まれたことを確認。ここから意図的にPort1のディスクを抜いてUSBメモリでWindowsが起動すれば完璧!(USB Memory KeyのBootを有効に)

無事、起動!!

長旅でした…