Создание виртуальной машины с помощью libvirt ошибка, связанная с AppArmor



Я пытаюсь создать виртуальную машину с помощью 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'


Я могу создать виртуальную машину без загрузки файла образа.



Каждый раз, когда имя профиля продолжает меняться. Я попытался остановить его и создать виртуальную машину, но получил ту же ошибку.



Любые указатели будут очень полезны.

505   3  

3 ответов:

Это ошибка в libvirt. См. https://bugs.launchpad.net/ubuntu / + источник / libvirt / + ошибка/665531

Измените xml-определение виртуального домена с помощью команды "virsh edit domainname". Заменить host_device тип='' с Type='Raw' в XML-определения.

У меня была та же проблема, и причина заключалась в том, что у меня была плохая идея поместить изображение 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" />

Это обходной, но не правильный путь. Установите AppArmor в режим жалоб, используя следующую команду:

sudo aa-complain /usr/sbin/libvirtd

Comments

    Ничего не найдено.