はじめに
本記事は、以前投稿したProxmox VE 8.4.1でのWindows11インストール手順を、Proxmox VE 9.x 向けにアップデートしたものです。
基本的な手順はPVE 8.x時代と大きく変わっていませんが、PVE 9.xで追加された機能や注意点を反映しています。
- Proxmox Virtual Environment 9.1.5
- virtio-win-0.1.271
- Windows11 Pro 24H2
インストールについては公式サイトが公開しているガイドに従って実施します。
Windows 11 ゲストのベストプラクティス
2025年7月現在、公式Wikiの「Windows 11 guest best practices」は「Proxmox VE server 8.x」と記載されたままですが、PVE 9.xでも基本的な推奨設定はそのまま有効です。
VirtIOドライバのバージョンについて:最新の virtio-win-0.1.285 ではPVE 9環境でQEMU Guest Agentが正常に動作しないケースがフォーラムで報告されています。本記事では安定動作が確認されている virtio-win-0.1.271 を使用します。
PVE 8.x からの主な変更点
PVE 9.xへのアップデートにより、Windows 11ゲストに関連する以下の変更・改善があります。
QEMUのメジャーバージョンアップ
PVE 9.1ではQEMU 10.1.2が採用されています(PVE 8.4はQEMU 8.x系)。VM作成手順への直接的な影響はありませんが、マシンタイプのバージョンが変わっています。
TPM状態のqcow2保存(PVE 9.1~)
TPM状態をqcow2形式で保存できるようになりました。これにより、NFS/CIFS/ディレクトリストレージ上でもTPMを有効にしたVMのスナップショットが取得可能になっています。Windows 11はTPMが必須のため、これは重要な改善です。
ネステッド仮想化の新オプション(PVE 9.1~)
新しいvCPUフラグが追加され、CPUタイプを「host」に設定しなくても仮想化拡張を有効にできるようになりました。WSLやVBS(Virtualization-based Security)を利用する場合に、より柔軟な設定が可能です。
メモリ使用量の表示精度向上
PVE 9ではホスト側のメモリ使用量の計算が精緻化されました。そのため、PVE 8と比較してWindows VMのメモリ使用率が高く表示される場合があります(100%近くなることも)。これはバグではなく表示精度の向上によるものです。Ballooningドライバが正常に動作していれば問題ありません。
VM作成ウィザードのUI改善
「OS」タブでVirtIOドライバISOを直接選択できるようになっており、以前のように手動でCDROMドライブを追加する手順が簡略化されています。
事前準備
■Windows VirtIO ドライバー
ガイドに従いWindows VirtIO ドライバーをダウンロードし、Proxmox VEのストレージにISOイメージをアップロードします。
前述の通り、virtio-win-0.1.271 の使用を推奨します。ダウンロードは以下のアーカイブから取得可能です。
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/
■Windows11
公式サイトに従いWindows 11 をダウンロードし、同様の手順でISOイメージをアップロードしてください。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されていますが、操作内容は同様です。
本環境では事前にアップロード済のため、詳細な手順は割愛しますが、画像のように一覧に表示されていれば準備OKです。
仮想マシンの作成
準備が完了したら、仮想マシンの作成を始めていきます。
全般
任意でノード、VMID、名前を設定します。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されていますが、操作内容は同様です。
OS
ISOイメージでWindows 11のISOを選択し、ゲストOSの種別として「Microsoft Windows」の「11/2022/2025」を選択します。
PVE 9.xではこのタブ内でVirtIOドライバのISOも追加CDROMドライブとして設定できるようになっています。「追加のCDROMドライブ」からvirtio-winのISOを選択してください。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではVirtIOドライバISOの選択欄が追加されています。
PVE 8.xでは、VM作成後にハードウェアタブから手動でCDROMドライブを追加してVirtIO ISOをマウントする必要がありましたが、PVE 9.xではVM作成ウィザード内で完結できます。
システム
以下のように設定します。
| 設定項目 | 設定値 |
|---|---|
| グラフィックカード | 既定値(VGA) |
| マシン | q35 |
| BIOS | OVMF (UEFI) |
| EFIストレージ | 任意のストレージ |
| SCSIコントローラ | VirtIO SCSI single |
| Qemu Agent | ✅ 有効 |
| TPM | ✅ 有効(v2.0) |
TPMはWindows 11のシステム要件として必須です。PVE 9.1以降ではTPM状態がqcow2で保存できるため、NFS等のストレージでもスナップショットとの互換性が向上しています。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されていますが、設定項目は同様です。
ディスク
以下のように設定します。
| 設定項目 | 設定値 |
|---|---|
| バス/デバイス | SCSI |
| ストレージ | 任意のストレージ |
| ディスクサイズ | 64GB以上(用途に応じて調整) |
| キャッシュ | Write back |
| Discard | ✅ 有効 |
| IOスレッド | ✅ 有効 |
キャッシュの「Write back」は最もパフォーマンスが良い設定ですが、ホストが予期せず停止した場合にデータ損失のリスクがあります。安全性を重視する場合はデフォルトの「No cache」を選択してください。
参考:Performance Tweaks - Disk Cache
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されていますが、設定項目は同様です。
CPU
任意でコア数を設定します。CPUタイプはデフォルトの「x86-64-v2-AES」で問題ありません。
WSLやHyper-V等のネステッド仮想化を利用する場合は、CPUタイプを「host」に変更するか、PVE 9.1以降であればCPUフラグで仮想化拡張を個別に有効にすることもできます。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されていますが、設定項目は同様です。
メモリ
Windows 11の推奨は8GB以上です。用途に応じて調整してください。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されていますが、設定項目は同様です。
PVE 9ではメモリ使用量の計算方法が改善されたため、Proxmoxの管理画面上でメモリ使用率が高く表示される場合があります。Windows側のタスクマネージャーで実際の使用量を確認し、問題がなければ心配不要です。
ネットワーク
モデルを「VirtIO (paravirtualized)」に設定します。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されていますが、設定項目は同様です。
確認・作成
設定内容を確認し、VMを作成します。一覧に作成した仮想マシンが表示されたら完了です。
※以下のスクリーンショットはPVE 8.4.1時点のものです。PVE 9.xではUIが一部変更されています。
仮想マシンの起動・Windowsのインストール
仮想マシンの一覧から「コンソール」タブに移動し、画面中央の「Start Now」を押して仮想マシンを起動します。
※以下のスクリーンショットはPVE 8.4.1時点のものです。
WindowsのインストールについてはVirtIOドライバーの部分のみ説明します。
Windows11をインストールする場所の選択画面で、適切なドライバが無いためディスクを認識していません。
そのため、ドライバーをインストールしてディスクを認識させます。
1. Load Driverを選択する
2. VirtIO SCSIドライバのインストール
「参照」ボタンを選択して、VirtIOドライバがマウントされているドライブを選択し、vioscsi\w11\amd64を選択して「OK」をクリックします。「Red Hat VirtIO SCSI pass-through controller」が表示されたら、「インストール」をクリックします。
3. (推奨)ネットワークドライバとBalloonドライバのインストール
公式ガイドでは、この段階で以下のドライバも合わせてインストールすることを推奨しています。
-
ネットワーク:
NetKVM\w11\amd64→ 「Redhat VirtIO Ethernet Adapter」 -
メモリバルーニング:
Balloon\w11\amd64→ 「VirtIO Balloon Driver」
これらはWindows11インストール後にも導入可能ですが、ネットワークドライバはこの段階で入れておくとWindowsのセットアップ時にネットワーク接続がスムーズに行えます。
Windows 11 24H2以降では、セットアップ中のネットワーク接続必須化が強化されています。VirtIOネットワークドライバを先にインストールしておくことで、セットアップ時のトラブルを回避できます。ローカルアカウントでセットアップしたい場合は、コマンドプロンプト(Shift+F10)からstart ms-cxh:localonlyを実行する方法があります。
ドライバーインストール後にディスクを認識していたらOKです。後続の作業を実施してください。
以下の画像はWindows11インストール完了直後の様子です。

QEMU Guest Agent等のインストール
Windows11のインストールが完了したら、以下を導入します。
- 不足しているドライバーとサービス
- QEMU Guest Agent
- VirtIO-win guest tools
不足しているドライバーとサービス
VirtIOドライバのISOがマウントされているドライブを開き、virtio-win-gt-x64.msiを実行します。
SPICEを使用しない場合は、インストール時に「Qxl」と「Spice」の機能を除外しても構いません。
デバイスマネージャーに表示されていたエラーが解消されます。
QEMU Guest Agent / VirtIO-win guest tools
QEMU Guest Agentは以下の目的で使用されます。
- ACPIコマンドやWindowsのポリシーに依存せず、ゲストOSを適切にシャットダウン
- Proxmoxでバックアップやスナップショットを作成する際に、ゲストOSのファイルシステムを一時停止(freeze)し、データの一貫性を向上
- スナップショット後など、ゲストOSが一時停止から再開する際にハイパーバイザと即座に時刻同期
VirtIOドライバのISOがマウントされているドライブを開き、virtio-win-guest-tools.exeを実行し、OSを再起動すれば完了です。
再起動後、ProxmoxのVM概要画面でIPアドレスやRAM使用量が正しく表示されていればQEMU Guest Agentが正常に動作しています。
QEMU Guest Agentが自動起動しない場合は、Windows側の「サービス」で「QEMU Guest Agent」のスタートアップの種類が「自動」になっているか確認してください。PVE 9環境でvirtio-win-0.1.285を使用した際にこの問題が報告されていますが、0.1.271では安定動作しています。
さいごに
PVE 8.xからPVE 9.xへのアップデートにおいて、Windows 11ゲストの構築手順自体に大きな変更はありません。ただし、以下の点を押さえておくとスムーズに運用できます。
- VirtIOドライバのバージョン:最新版(0.1.285)では不安定な報告があるため、0.1.271の使用を推奨
- メモリ表示:PVE 9で使用率が高く見えるのは表示精度向上による正常な動作
- TPMスナップショット:PVE 9.1以降ではqcow2保存に対応し、利便性が向上
- ネステッド仮想化:新しいvCPUフラグにより、CPUタイプ「host」以外でも設定可能に
本環境は、Proxmox VEの管理コンソールへの接続にcloudflare tunnelを経由している関係で管理コンソールからの操作はカクカクするため、RDPで作業端末から操作することを推奨します。
仮想マシンの設定はあくまで参考程度にしてください。
PVE 8.4.1での手順は前回の記事を参照してください。
参考
Proxmox Virtual Environment
Windows 11 guest best practices
Windows VirtIO ドライバー
Windows 11 をダウンロード
Performance Tweaks - Disk Cache
Qemu-guest-agent
Proxmox VE 9.0 リリースノート
Proxmox Forum: Guest agent not running on Windows 11
Proxmox Forum: Windows Guest memory utilization problem on PVE 9.0.x














