8

次のコマンドを使用して、libvirt を使用して仮想マシンを作成しようとしています。

virsh create file

の内容"file":

<domain type='qemu' id='3'>
        <name>testvm</name>
        <memory>100</memory>
        <vcpu>1</vcpu>
        <os>
                <type arch='i686'>hvm</type>
        </os>
        <devices>
                <disk type='file' device='disk'>
                        <source file='/libtmp/VM-linux.0.2.img'/>
                        <target dev='hdc'/>
                </disk>
        </devices>
        <on_reboot>restart</on_reboot>
        <on_poweroff>preserve</on_poweroff>
        <on_crash>restart</on_crash>
</domain>

これが発生するエラーです。

error: Failed to create domain from file
error: internal error cannot load AppArmor profile 'libvirt-9cb01efc-ed3b-ff8e-4de5-7227d311dd15'

イメージ ファイルをロードせずに vm を作成できます。

プロファイル名が変わり続けるたびに。停止してvmを作成しようとしましたが、同じエラーが発生しました。

どんな指針も非常に役に立ちます。

4

3 に答える 3

6

私は同じ問題を抱えていましたが、その理由は、次のように読み取り専用の cdrom イメージを /etc に配置するという悪い考えを持っていたためです。

<disk type="file" device="cdrom">
  <driver name='qemu' type="raw" />
  <source file="/etc/libvirt/qemu/cdrom.iso" />
  <target dev='hdb' bus='virtio'/>
  <readonly/>
</disk>

/var に移動すると、エラー メッセージが削除され、仮想マシンを起動できるようになりました。この行:

<source file="/var/lib/libvirt/images/cdrom.iso" />
于 2016-04-19T11:54:24.070 に答える
4

これは libvirt のバグです。https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/665531を参照してください

「virsh edit domainname」コマンドで仮想ドメインの xml 定義を編集します。xml 定義で type='host_device' を type='raw' に置き換えます。

于 2012-08-28T05:00:09.917 に答える
2

これは回避策ですが、正しい方法ではありません。次のコマンドを使用して、AppArmor を苦情モードに設定します。

sudo aa-complain /usr/sbin/libvirtd
于 2012-08-25T11:58:20.397 に答える