libvirt+qemu+KVM
概要
- VirtualBox や VMWare のように仮想 PC を実行する環境。
- KVM は Linux のカーネルモジュールであるため、Linux 環境 (ホスト) でしか使えない。
- VirtualBox や VMWare と異なり、仮想 CPU や仮想 I/O などを
libvirt
、KVM
、qemu
がそれぞれ担当している。libvirt
: 仮想マシン管理ツール (仮想 PC のリスト表示や仮想 PC の起動・停止など)KVM
: 仮想化支援モジュール。仮想ハードウェアを提供するツール。qemu
: CPU や、ネットワーク及びビデオデバイスなどのエミュレータ。- 参考サイト:
- libvirt+qemu+KVM はインストールの手順が少々多いが、一度インストールすると、VirtualBox や VMWare と遜色なく使える。
- ここでは Ubuntu 16.04 相当の環境で、libvirt+qemu+KVM を構築する手順を紹介する。
インストール
- Ubuntu 20.04
$ sudo apt install qemu-kvm virt-manager gir1.2-spiceclientgtk-3.0 spice-vdagent libvirt0
既存イメージファイルの変換
- これまで使っていた仮想 PC イメージ (
Windows.vmdk
) の変換について。
- 必要パッケージをインストールする。
$ sudo apt install qemu-utils
- 変換する。
$ qemu-img convert -p -f vmdk -O raw Windows.vmdk Windows.img
バックアップ&リストア
その他の設定
フォルダの共有
- ホストマシンとゲストマシンの間でフォルダを共有する方法
- ホスト (LinuxMint) 上に Samba をインストールする。
- 共有したいフォルダを Samba で共有状態にしておく。
- ゲスト (Windows) 上で、エクスプローラから
\\ホスト名
で共有設定したフォルダが表示される。 - 表示されたフォルダを右クリックし、
ネットワークドライブの割当
から、ネットワークドライブの設定をする。
- ネットワークドライブ上のファイルを実行したい場合には、Samba の設定で、
acl allow execute always = Yes
をglobal
なり、個別のフォルダの設定なりに記述しておく必要がある。 - Ubuntu 18.04 相当の場合は、Firewalld の設定も忘れないように (詳しくは Ubuntu 18.04 のインストール方法 を参照)。
ディスクの高速化
KVM の操作コマンド
Windows ゲストで解像度や音を良くする
クリップボードを共有する
- Guest (Windows) 側でインストールする。
ゲスト側のネットワーク固定
その他の情報
- XML が格納されているディレクトリ:
/etc/libvirt/qemu/
- キーマップファイルが格納されているディレクトリ:
/usr/share/qemu/keymaps