概要
VirtualBox の仮想マシンでWin Server 2012 R2 を走らせている。
この仮想マシンのHDDの容量を増やそうと思い、VirtualBox のコマンドで容量を拡張した。
そうしたら、仮想マシン内のWin Server 2012 R2 が正常に起動しなくなった。
Win RE の状態で、仮想OS(Win Server)のシステムストレージの容量を割り当てた分めいっぱいに拡張したら、次回からは正常に起動するようになった。コマンドは、diskpart のextend を実行。
詳細
環境
- OS:Linux Mint 17.3 Rosa
- 仮想ホスト:VirtualBox 5.0.20 r106931
- 仮想マシン内のOS:Windows Server 2012 R2 評価版
経緯
VirtualBox のコマンドで、上記の仮想マシンのストレージ(HDD)の容量をアップしてみた。
この仮想マシンはスナップショットがとってあるので、イメージは本体と差分の2つあった。
よく分からんので、2つとも容量をアップしてみた。 ← てきとーすぎた。これが原因か?
容量拡張の遷移
- 「可変サイズのストレージ」: 25GB —> 500GB ← 50GBにするつもりが間違えて500GBにしてしまった。
- 「可変サイズの差分ストレージ」: 25BG —> 50GB
症状の詳細
仮想マシンを起動すると、正常な起動に失敗する。
そして、Windows 回復環境 (Windows RE) らしき画面が出てくる。
ここで[続行] しても、繰り返し起動に失敗してしまう。
対応
仕方ないので、Windows 回復環境 (Windows RE) らしき画面にて、[トラブルシューティング] を選択した。
ここでは[コマンド プロンプト] を選択してみた。
※イメージを取っていないので、[イメージでシステムを回復] オプションは選ばなかった。
画面の案内に沿って続行
ディスクの問題だろうと思い、ひとまずdiskpart を起動。(コマンドは以下)
diskpart
仮想マシン内から見えるディスクの状態を確認。
DISKPART> list disk
DISKPART> list volume
⇒ 仮想マシンから見ると、HDD容量はまだ25GBのままのようだ。
拡張したいボリュームを選択。今回はVolume 2。
DISKPART> select volume 2
割り当てた50GB分を全て使わせるために、extend を実行。
DISKPART> extend
⇒ 成功。
仮想マシン内から見えるディスクの状態を確認。
DISKPART> list volume
⇒ 約50GBまで広がってることを確認。
OSを再起動したところ、正常に起動するようになった。
原因
はっきりとした原因は不明。でももしかしたら、以下がいずれかが原因かも・・・。
- スナップショットをとってある状態で、該当仮想マシンの「可変サイズのストレージ」と「可変サイズの差分ストレージ」のどちらも容量を拡張した。
- 仮想マシンの中のOSがWin Server 2012 R2 のときにこのように容量を拡張するのがそもそもよくない?
- 仮想マシンから見えるディスク領域めいっぱいに拡張すると直る理由もよく分からん。
所感
ディスク拡張する前に、ストレージファイルをバックアップしておけばよかった・・・。特にディスク全体に影響する作業のときは、バックアップは超大事だな。当たり前のことだが。しかしめんどくさいのもまた事実。しかし大事は大事。