ツール:libvirt_qemu_kvm:ubuntu_18.04

インストール方法

  1. 必要なパッケージをインストールする。
    $ sudo apt install qemu-kvm virt-manager gir1.2-spiceclientgtk-3.0 spice-vdagent libvirt0 libvirt-bin firewalld ebtables
    • spice-vdagent は、ホストとゲストのクリップボードを共有するために必要 ( QEMU - ArchWiki)。
    • gir1.2-spiceclientgtk-3.0 は 16.04 とパッケージ名が微妙に違うので注意。
    • 18.04 から、firewalldebtables が必要になったらしい。これらのパッケージがないと、ゲスト OS からネットワークに接続できず virbr0 ができず、virt-manager 上では、NAT (停止) 状態になる。 * Cannot start VM with error "no network with matching name 'default'" - SysTutorials
      • 余談だが、上記とは別に virbr0 が何らかの原因で生成されないときに手動で作成する方法は、下の節を参照。
  2. 自動的に仮想 PC サービスを使えるようにする。
    $ sudo systemctl enable libvirtd.service
  3. サービスを起動する。
    $ sudo systemctl start libvirtd.service
    • サービスが起動していないと仮想マシンマネージャがうまく起動できない。
  4. GUI の仮想マシンマネージャを起動する。
    $ virt-manager
  5. GUI の仮想マシンマネージャが起動する。
  6. `ファイル` → `新しい仮想マシン` をクリックして、設定ウィザードを起動する。
    1. Step 1
      • `既存のディスクイメージをインポート` を選択する。
    2. Step 2
      • 既存のストレージパス: Windows.img
      • OS の種類: Windows
      • バージョン: Microsoft Windows 10
    3. Step 3
      • メモリー: 2048
      • CPU: 2
    4. Step 4
      • 名前: Windows
      • ネットワークの選択: 仮想ネットワーク default: NAT
  7. ゲスト OS が外部に接続できるようにする。
    • /etc/sysctl.conf を編集する。
      $ sudoedit /etc/sysctl.conf
      # net.ipv4.ip_forward=1

      net.ipv4.ip_forward=1

      に変更する。

    • 再起動するか、以下のコマンドを実行する。
      $ sudo sysctl -p
  8. ファイアウォールの設定をして、インターネットへの接続と、ホストとゲストでファイルのやり取りをできるようにする。
    1. インターネットと接続できるようにする。
      $ firewall-cmd --zone=public --add-masquerade --permanent
    2. 有効なサービスを確認する。
      $ firewall-cmd --list-services
      • samba が入っていないことを確認
    3. samba を追加する。
      $ firewall-cmd --add-service=samba
      $ firewall-cmd --permanent --add-service=samba

インストール時にブリッジネットワークが生成されなかった場合の対処

  • 症状:
    • 以下のコマンドを実行した際に virbr0 などが見当たらない
      $ ip a
    • 仮想マシンマネージャ (virt-manager) の 編集接続の詳細仮想ネットワークタブ内のネットワークの状態が 停止 になっている。
  • 原因: firewalldebtable などを同時にインストールしなかった。
  • 対策: 仮想マシンマネージャ (virt-manager) を一度終了して、以下のコマンドを実行、上記パッケージをインストールした後、有効化する。
    $ sudo apt install ebtables dnsmasq firewalld
    $ sudo systemctl start firewalld
    $ sudo systemctl enable firewalld
    $ sudo systemctl restart libvirtd
  • 参考サイト:

その他

  • ツール/libvirt_qemu_kvm/ubuntu_18.04.txt
  • 最終更新: 2020/07/03 18:38
  • by mumeiyamibito