📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

133行目: 133行目:
               --enable-spice                  \  # SPICEプロトコルによるリモートデスクトップ機能を有効化
               --enable-spice                  \  # SPICEプロトコルによるリモートデスクトップ機能を有効化
               --enable-spice-protocol          \  # SPICEプロトコルのライブラリサポートを有効化
               --enable-spice-protocol          \  # SPICEプロトコルのライブラリサポートを有効化
               --enable-usb-redir              \  # ホストUSBデバイスのゲストへの転送機能を有効化
               --enable-usb-redir              \  # ホストUSBデバイスのゲストへの転送機能を有効化 (SPICE経由でリモートからもリダイレクト可能な方式)
               --enable-opengl                  \  # OpenGLによるGPUアクセラレーションを有効化
               --enable-opengl                  \  # OpenGLによるGPUアクセラレーションを有効化
               --enable-tpm                    \  # TPM (Trusted Platform Module) エミュレーションを有効化
               --enable-tpm                    \  # TPM (Trusted Platform Module) エミュレーションを有効化
145行目: 145行目:
               --enable-fdt                    \  # FDT (Flattened Device Tree) サポートを有効化
               --enable-fdt                    \  # FDT (Flattened Device Tree) サポートを有効化
               --audio-drv-list=oss,alsa,sdl,pa    # オーディオドライバとしてOSS, ALSA, SDL, PulseAudioを指定
               --audio-drv-list=oss,alsa,sdl,pa    # オーディオドライバとしてOSS, ALSA, SDL, PulseAudioを指定
              # 下記のオプションは任意 または 指定不可
               --enable-vfio-user-server          # 任意 : VFIO (Virtual Function I/O) ユーザサーバ機能を有効にする場合
               --enable-vfio-user-server          # 任意 : VFIO (Virtual Function I/O) ユーザサーバ機能を有効にする場合
               --enable-libusb                    # 不要の可能性あり
                                                  # 仮想マシンへの直接パススルーをユーザスペースで実現するプロトコル
               --enable-hax                        # QEMU 8.2以降は、このオプションは削除済み
                                                  # 主にリモートPC上のデバイスを仮想マシンにアタッチしたり、ソフトウェアでエミュレートしたデバイスをVFIOデバイスとして公開する場合に使用
               --enable-libusb                    # ローカルでUSBを直接パススルーする方式
                                                  # <code>--enable-usb-redir</code> オプションを指定している場合は不要
               --enable-hax                        # QEMU 8.2以降は、このオプションは指定不可
               --target-list=i386-softmmu,i386-linux-user,x86_64-softmmu,x86_64-linux-user  # ターゲットをx86およびx86_64に限定する場合
               --target-list=i386-softmmu,i386-linux-user,x86_64-softmmu,x86_64-linux-user  # ターゲットをx86およびx86_64に限定する場合
               # ターゲットにARM EABIHFおよびAArch64を追加する場合は、<code>arm-softmmu,arm-linux-user,aarch64-softmmu,aarch64-linux-user</code> を指定する
               # ターゲットにARM EABIHFおよびAArch64を追加する場合は、<code>arm-softmmu,arm-linux-user,aarch64-softmmu,aarch64-linux-user</code> を指定する
155行目: 160行目:
<br>
<br>
<u>※注意</u><br>
<u>※注意</u><br>
<u><code>--enable-vfio-user-server</code>オプションは、QEMUのコンフィギュレーションにおいて、VFIOをユーザ空間で使用するためのサーバ機能を有効にする。<br></u>
<u><code>--enable-vfio-user-server</code> オプションは、QEMUのコンフィギュレーションにおいて、VFIOをユーザ空間で使用するためのサーバ機能を有効にする。<br></u>
<br>
<br>
<u>VFIO-userは、QEMUの比較的新しい機能であり、以下に示すような目的がある。</u><br>
<u>VFIO-userは、QEMUの比較的新しい機能であり、以下に示すような目的がある。</u><br>
180行目: 185行目:
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
<u>もし、QEMUを/usrディレクトリ以外の場所にインストールした場合、パーミッションの問題が発生する可能性がある。</u><br>
===== セキュリティ設定 : AppArmorを使用している場合 =====
<u>この時、AppArmorの設定を、以下に示すように編集する。</u><br>
QEMUを/usrディレクトリ以外の場所にインストールする場合、パーミッションの問題が発生する可能性がある。<br>
そのため、libVirtにQEMUを実行するためのAppArmorパーミッションを追加する必要がある。<br>
<br>
<br>
AppArmorを使用している場合、libvirtにQEMUを実行するためのAppArmorパーミッションを追加する必要がある。<br>
まず、/etc/apparmor.d/usr.sbin.libvirtdファイルにある最後の <code>}</code> スコープの直前に、以下に示す設定を追記する。<br>
まず、/etc/apparmor.d/usr.sbin.libvirtdファイルにある最後<code>"}"</code>記号の直前に、以下に示す設定を追記する。<br>
以下の例では、QEMUを/home/<ユーザ名>/QEMUディレクトリにインストールしているものとする。<br>
(以下の例では、QEMUを/home/user/QEMUディレクトリにインストールしているものとする)<br>
  sudo vi /etc/apparmor.d/usr.sbin.libvirtd
  sudo vi /etc/apparmor.d/usr.sbin.libvirtd
<br>
<br>
192行目: 197行目:
  # ...略
  # ...略
   
   
  # User Add
   # 例 :
   # 例 :
   /usr/bin/kvm rmix,
   /usr/bin/kvm rmix,
   /home/<ユーザ名>/InstallSoftware/QEMU/bin/qemu-i386 rmix,
   /home/<ユーザ名>/QEMU/bin/qemu-i386 rmix,
   /home/<ユーザ名>/InstallSoftware/QEMU/bin/qemu-system-i386 rmix,
   /home/<ユーザ名>/QEMU/bin/qemu-system-i386 rmix,
   /home/<ユーザ名>/InstallSoftware/QEMU/bin/qemu-x86_64 rmix,
   /home/<ユーザ名>/QEMU/bin/qemu-x86_64 rmix,
   /home/<ユーザ名>/InstallSoftware/QEMU/bin/qemu-system-x86_64 rmix,
   /home/<ユーザ名>/QEMU/bin/qemu-system-x86_64 rmix,
  }
  }
<br>
<br>
206行目: 210行目:
  # /etc/apparmor.d/abstractions/libvirt-qemuファイル
  # /etc/apparmor.d/abstractions/libvirt-qemuファイル
   
   
# User Add
  /usr/bin/kvm rmix,
  /usr/bin/kvm rmix,
  /home<ユーザ名>/InstallSoftware/QEMU/bin/qemu-i386 rmix,
  /home/<ユーザ名>/QEMU/bin/qemu-i386 rmix,
  /home/<ユーザ名>/InstallSoftware/QEMU/bin/qemu-system-i386 rmix,
  /home/<ユーザ名>/QEMU/bin/qemu-system-i386 rmix,
  /home/<ユーザ名>/InstallSoftware/QEMU/bin/qemu-x86_64 rmix,
  /home/<ユーザ名>/QEMU/bin/qemu-x86_64 rmix,
  /home/<ユーザ名>/InstallSoftware/QEMU/bin/qemu-system-x86_64 rmix,
  /home/<ユーザ名>/QEMU/bin/qemu-system-x86_64 rmix,
<br>
<br>
最後に、AppArmorのルールセットを再読み込みする。<br>
AppArmorの設定を反映させるため、ルールセットを再読み込みする。<br>
  sudo systemctl reload apparmor
  sudo systemctl reload apparmor
<br>
<br>