KVM(Kernel-based Virtual Machine)の概要
KVM(Kernel-based Virtual Machine)は、Linuxに標準搭載されている仮想化技術です。KVMは以下の画像のようなイメージで動作します。
言い換えると、KVMはハイパーバイザーとして動作します。

以下Red Hat社公式ドキュメントからKVMの説明を引用します。
KVM とは
カーネルベースの仮想マシン (KVM) は、Linux® オペレーティングシステム用のオープンソースの仮想化テクノロジーです。KVM により、Linux は複数の独立した仮想マシン (VM) を実行するハイパーバイザーとして機能できます。
https://www.redhat.com/ja/topics/virtualization/what-is-KVM
libvirt と virsh
libvirtはオープンソースの仮想化管理用のライブラリです。
KVM以外にもXen、KVM、QEMU、OpenVZ、LXC、Oracle VM VirtualBox、VMware ESX/GSXi/Workstation、 Microsoft Hyper-V などにも対応しています。
libvirt と virsh
libvirt プロジェクトは、仮想化プラットフォームを管理する API を提供します。libvirt の virsh は、 VM の作成、起動、一覧表示、停止のほか、仮想化シェルの入力を行うコマンドライン・ユーティリティです。
https://www.redhat.com/ja/topics/virtualization/what-is-KVM
virshコマンドは、libvirtで管理しているVM(バーチャルマシン)の管理を行うコマンドです。詳細は以下のページで確認できます。
https://www.libvirt.org/manpages/virsh.html
LinuCで問われるvirshコマンド
LinuCではvirshコマンドの詳細について問われます。
以下のサブコマンドは理解と暗記をしておきましょう。
- virsh create
- virsh console
- virsh start
- virsh shutdown
- virsh destroy
- virsh reboot
- virsh suspend
- virsh resume
- virsh list
- virsh dumpxml
詳細は以下の表にまとめました。
| サブコマンド | 説明 |
|---|---|
| create | XML形式のファイルから仮想マシンを作成し、新規の仮想マシンを起動する |
| console | 仮想マシンのコンソールに接続する |
| start | 仮想マシンを起動する |
| shutdown | 仮想マシンを正常に終了する |
| destroy | 仮想マシンを強制終了する |
| reboot | 仮想マシンを再起動する |
| suspend | 仮想マシンを一時停止する |
| resume | 仮想マシンを再開する |
| list | 仮想マシンの一覧を表示する |
list --all |
全ての仮想マシンを表示 |
| dumpxml | 仮想マシンの定義ファイルをXML形式で出力する |