Debian KVM и расположение образов VM, отличных от /var/lib/libvirt/images
Я определил пул хранения для виртуальных машин на ZFS:
virsh # pool-dumpxml zfs
<pool type='dir'>
<name>zfs</name>
<uuid>b2fba550-467f-8133-dee8-44ada7d0a807</uuid>
<capacity unit='bytes'>210316853248</capacity>
<allocation unit='bytes'>32768</allocation>
<available unit='bytes'>210316820480</available>
<source>
</source>
<target>
<path>/winvm/win1</path>
<permissions>
<mode>0700</mode>
<owner>4294967295</owner>
<group>4294967295</group>
</permissions>
</target>
</pool>
Создан файл изображения RAW для vms:
host /winvm/win1 % l
total 3.5K
drwxrwxr-x. 2 root root 3 Jan 3 14:03 .
drwxr-xr-x 3 libvirt-qemu libvirt-qemu 3 Dec 30 13:45 ..
-rw-------. 1 libvirt-qemu libvirt-qemu 20G Jan 3 14:03 t1.raw
Определил t1 VM, но когда я пытаюсь запустить его:
host /winvm/win1 % virsh start t1
error: Failed to start domain t1
error: internal error process exited while connecting to monitor: char device redirected to /dev/pts/13
kvm: -drive file=/winvm/win1/t1.raw,if=none,id=drive-sata0-0-0,format=raw,cache=none: could not open disk image /winvm/win1/t1.raw: Invalid argument
Файл хранилища виртуальной машины постоянно меняет владельца на root: root:
host /winvm/win1 % ls -l
total 1
-rw-------. 1 root root 21474836480 Jan 3 14:03 t1.raw
У меня отключен SELinux на этой машине:
host /winvm/win1 % sestatus
SELinux status: disabled
Даже изменил пользователя и контекст для этого:
host /winvm/win1 % chcon -t virt_image_t -u libvirt-qemu t1.raw
И я все еще получаю ошибку выше. Зачем? И как SELinux может повлиять на доступ к файлу, когда он отключен?
1 ответ
Это не ZFS, это virt-manager
Утилита, которая вызывает неправильную настройку - виновник if=none
по какой-то причине добавил к спецификации диска (я использовал virt-manager
определить сырой диск на томе ZFS). Я получал периодически возникающие ошибки "отказано в разрешении" на образе диска, и поэтому я подумал, что это вопрос разрешений. Вот что произойдет, если вы установите все доступные параметры на образе диска в virt-manager
По-видимому, все просто оставляют значения по умолчанию включенными.