====== libvirt+qemu+KVM ====== ===== 概要 ===== * VirtualBox や VMWare のように仮想 PC を実行する環境。 * KVM は Linux のカーネルモジュールであるため、Linux 環境 (ホスト) でしか使えない。 * VirtualBox や VMWare と異なり、仮想 CPU や仮想 I/O などを ''libvirt''、''KVM''、''qemu'' がそれぞれ担当している。 * ''libvirt'': 仮想マシン管理ツール (仮想 PC のリスト表示や仮想 PC の起動・停止など) * ''KVM'': 仮想化支援モジュール。仮想ハードウェアを提供するツール。 * ''qemu'': CPU や、ネットワーク及びビデオデバイスなどのエミュレータ。 * 参考サイト: * [[https://qiita.com/saikoro-steak/items/05c88fdc385712ccce89 | KVMの仕組み - Qiita]] * [[http://zacodesign.net/blog/?p=1393 | 【仮想化】KVMとqemuとlibvirtの違い・関係 – ZacoDesign]] * [[http://archlinux-blogger.blogspot.com/2016/02/qemukvm-libvirt.html | QEMU/KVM, libvirtのインストールと設定 | 普段使いのArch Linux]] * libvirt+qemu+KVM はインストールの手順が少々多いが、一度インストールすると、VirtualBox や VMWare と遜色なく使える。 * ここでは Ubuntu 16.04 相当の環境で、libvirt+qemu+KVM を構築する手順を紹介する。 ===== インストール ===== * [[ツール/libvirt_qemu_kvm/Ubuntu_16.04|Ubuntu 16.04]] * [[ツール/libvirt_qemu_kvm/Ubuntu_18.04|Ubuntu 18.04]] * 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 * [[http://blog.kenichimaehashi.com/?article=13515946480 | VMware のディスクイメージ (VMDK) を KVM (qemu) で使えるように変換する - Kenichi Maehashi's Blog]] ===== バックアップ&リストア ===== * [[https://mseeeen.msen.jp/backup-and-restore-virtual-image-for-kvm/ | KVMの仮想イメージをバックアップ・リストアする方法]] ===== その他の設定 ===== ==== フォルダの共有 ==== * ホストマシンとゲストマシンの間でフォルダを共有する方法 - ホスト (LinuxMint) 上に Samba をインストールする。 - 共有したいフォルダを Samba で共有状態にしておく。 - ゲスト (Windows) 上で、エクスプローラから ''\\ホスト名'' で共有設定したフォルダが表示される。 - 表示されたフォルダを右クリックし、''ネットワークドライブの割当'' から、ネットワークドライブの設定をする。 * [[https://support.microsoft.com/ja-jp/help/4026635/windows-map-a-network-drive | ネットワーク ドライブの割り当て]] * ネットワークドライブ上のファイルを実行したい場合には、Samba の設定で、''acl allow execute always = Yes'' を ''global'' なり、個別のフォルダの設定なりに記述しておく必要がある。 * [[http://www.katsuster.net/index.php?arg_act=cmd_show_diary&arg_date=20150930&arg_range=1&arg_direction=0 | コグノスケ]] * [[https://www.upken.jp/kb/samba-share-execute.html | Samba4 の共有フォルダーにあるアプリケーションが起動できない事象の対処]] * [[https://unix.stackexchange.com/questions/188721/execute-a-exe-on-a-samba-share | permissions - Execute a .exe on a samba share - Unix & Linux Stack Exchange]] * Ubuntu 18.04 相当の場合は、Firewalld の設定も忘れないように (詳しくは [[ツール/libvirt_qemu_kvm/Ubuntu_18.04|Ubuntu 18.04 のインストール方法]] を参照)。 ==== ディスクの高速化 ==== * [[https://qiita.com/flny/items/2ae2053ef64a78e95856#virtio%E3%82%92%E5%88%A9%E7%94%A8%E3%81%99%E3%82%8B | KVM 上の Windows7 をチューニングする - Qiita]] ==== KVM の操作コマンド ==== * [[https://qiita.com/TsutomuNakamura/items/22d9d2629a8eb9360865 | VirshコマンドによるKVMゲストOSの管理 - Qiita]] ==== Windows ゲストで解像度や音を良くする ==== * [[http://bluearth.cocolog-nifty.com/blog/2017/12/windows10-qxl-s.html | ゲストOS - Windows10 〜 QXLドライバー や SPICE agent とか: 個人的健忘録 from 2013]] * [[https://sites.google.com/site/hymd3a/linux/kvm-spice | kvm+spiceでゲストのサウンドを聞く - ひゃまだのブログ]] ==== クリップボードを共有する ==== - [[https://www.spice-space.org/download.html | SPICE - Download]] の ''Guest'' → ''Windows binaries'' から ''Windows guest tools'' をダウンロードする。 - Guest (Windows) 側でインストールする。 ==== ゲスト側のネットワーク固定 ==== * [[https://kana-linux.info/linux/kvm%E3%81%ABdhcp%E3%81%A7%E5%9B%BA%E5%AE%9Aip%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B | KVMにDHCPで固定IPを設定する | ITのおもちゃ箱]] ===== その他の情報 ===== * XML が格納されているディレクトリ: ''/etc/libvirt/qemu/'' * キーマップファイルが格納されているディレクトリ: ''/usr/share/qemu/keymaps''