【Windows】仮想ハードディスクファイル ~ VHDファイル ~

VHDファイル

 * VHDファイル = Virtual Hard Disk File
  => 仮想ハードディスクファイル

VHDファイルの作成

https://www.atmarkit.co.jp/ait/articles/1702/06/news154.html
を見ながらやればいい。

手順

[1] [コンピュータの管理]-[操作]-[VHDの作成]を選択する
[2] 以下を入力し、OKボタン押下
 2-1) 場所:任意(例「c:\demo\hello.vhd」)
 2-2) 仮想ハードディスクのサイズ:任意(例「1GB」)
 2-3) 仮想ハードディスク フォーマット:VHD
 2-4) 仮想ハードディスクの種類:容量固定
 => しばらくすると、VHDファイルが作成され、作成したVHDファイルが「ディスク1」として見えるようになる
[3] [2]の「ディスク1<改行>不明」を右クリックし、[ディスクの初期化]を選択し、「OK」ボタン押下
[4] 「未割り当て」と表示されている部分を右クリックし、[新しいシンプルボリューム]を選択する
[5] 内容を確認しながら、「次へ」ボタン押下し、最後に「完了」ボタン押下

VHDファイルを拡張する

 * コマンドプロンプトで以下の「コマンド」を実行する

コマンド

# diskpartコマンド
diskpart

# ファイルの選択
select vdisk file="c:\demo\hello.vhd"

# ファイルの詳細の調査
detail vdisk

# ★32Gbytes(1024 x 32G = 32768)へ拡張★
expand vdisk maximum=32768

# 確認
detail vdisk

Windows起動時にマウントするには...

[1] 以下「vhdmount.bat」「automount.bat」を参考にバッチファイルを作成する
[2] タスクスケジューラで、作成したバッチファイルを起動する
 2-1) [スタートを右クリック]-[検索]から「Taskschd.msc」or「タスクスケジューラ」と入力しEnterキー押下
 2-2) [タスク スケジューラ ライブラリ]-[操作]-[タスクの作成]を選択
  + 「全般タブ」
   - 「名前」に任意のタスク名を入力
   - 「セキュリティオプション」の「ユーザーがログオンしているかどうかにかかわらずに実行する」にチェック
   - 「セキュリティオプション」の「最上位の特権で実行する」にチェック
  + 「トリガー」タブ
   - 「タスクの開始」を「スタートアップ時」に変更
  + 「操作」タブ
   - 「プログラム/スクリプト」にバッチファイルのパスを入力
   - 「開始(オプション)(T)」にバッチファイルが置かれているフォルダへのパスを入力
  + 「条件」タブ
   - すべてのチェックを外す

vhdmount.bat

sel vdisk file="c:\demo\hello.vhd"
attach vdisk

automount.bat

diskpart -s c:\demo\vhdmount.bat

補足:うまく起動できなかった場合

 * タスクスケジューラの履歴を有効にし、トラブルシューティングをする