今までは Windows ゲストを何も考えずに素直にインストールして、後でVirtIOドライバを入れるという方式をとりました。ただこれが予想よりは大変だったので、他に方法がないのかと探してみました。その結果、 Windows をインストールするときから VirtIO にしてしまうという方法を見つけたのでコレを紹介します。
仮想マシンの作成
今までと同様に新規の仮想マシンを作成します。ここでは2つめの仮想マシンということで、 VMID は 101 を使用しています。基本的には同じ設定ですが、ハードディスクやネットワークの設定でタイプを VIRTIO を選ぶようにします。
インストール開始
OSのディスクから起動させてセットアップの画面に進みます。しかしインストールの画面で以下のようにハードディスクが見つからない状態となっているかと思います。
このときに画面の下の方にあるボタンでドライバを追加で読み込ませることが出来るので、ここで VirtIO のドライバディスクを使うという方法を用います。
ここで Windows の Iso がセットされているのをいったん解除して、 VirtIO のドライバディスク iso を設定します。
最新版のVirtIO(0.1.102)ではインストール過程でドライバの発見がうまくいかないようなので、古いバージョンの VirtIO を使用して対処しておきます。
古いiso は以下のURLからダウンロードしてきました。
archivesの中にあった 0.1.74 あたりをこの記事においてのみ使用することにします。
https://fedorapeople.org/groups/virt/virtio-win/deprecated-isos/
これを Proxmox にアップロードして、仮想マシンにセットします。
そして Windows 側でドライバの参照をさせて、Windows7 用である WIN7/AMD64 フォルダを選択します。
そもそも新しいディスクイメージではこのフォルダ構成から違ったため、そこも何かうまくいかなかった原因かもしれません。
含まれているドライバ一覧がでたら、これらをすべて選択してインストールします。
問題なければようやくインストール先のハードディスクが画面に表示されるので、通常通りのインストールを再開するだけとなります。
上記の画面でこのディスクに Windows をインストールすることが出来ません、と表示されていますが、これはインストールディスクを入れ替えたためで、再び元のWindowsインストーラーのディスクに戻せば無事にインストールが出来ます。
まとめ
最初から VirtIO のことを考慮できていればこの最初のステップだけで導入が可能のようです。
あとで設定する方法に比べれば格段に楽になると思います(特にHDD)
おまけ
VirtIO のバージョン 0.1.100 で試してみたところこちらでもうまく認識するようでした。