Nick Gilmour
2017-Oct-03 13:48 UTC
Re: [libvirt-users] error: internal error: missing backend for pool type 11 (zfs)
@Michal: Thanks for your reply! Indeed I have found a package in the AUR (libvirt-zfs) and only had to change to the current version and add zfs-utils as dependency in the PKGBUILD. Now I don't get the previous error anymore but I still cannot setup a VM because I constantly get errors due to wrong permissions. I have tried to change the permissions in: - /etc/libvirt/qemu.conf - /virt-pool/vmm - /dev/zvol/virt-pool also: # zfs allow <user> create,destroy,mount virt-pool/vmm didn't help. What are the correct permissions? Which user and group? Nick On Tue, Oct 3, 2017 at 8:44 AM, Michal Privoznik <mprivozn@redhat.com> wrote:> On 10/02/2017 11:42 PM, Nick Gilmour wrote: > > Hi all, > > > > I'm trying to setup virt-manager with ZFS als storage on my Arch box. I > > have created a pool named virt-pool and tried to use it as storage. First > > with virt-manager and then in the terminal with virsh but I'm always > > getting the following errors: > > > > > > > > *virsh # pool-define-as --name zfsvirtpool --source-name virt-pool --type > > zfserror: Failed to define pool zfsvirtpoolerror: internal error: missing > > backend for pool type 11 (zfs)* > > Your libvirt was built without support for ZFS. You need to contact your > distribution manufacturer and ask them to enable it. Or build libvirt on > your own. > > However, as I am writing these lines I realized two things: > > 1) there's no API to query loaded drivers/storage backends. > > 2) storage backends are static. While we have libvirt drivers in > separate modules (.so files) and load them at start up, it's not the > same story with storage driver backends. These are hardcoded into the > storage driver. Might be worth it to have them dynamically loadable too. > > Michal >
Michal Privoznik
2017-Oct-03 14:15 UTC
Re: [libvirt-users] error: internal error: missing backend for pool type 11 (zfs)
On 10/03/2017 03:48 PM, Nick Gilmour wrote:> @Michal: Thanks for your reply! > > Indeed I have found a package in the AUR (libvirt-zfs) and only had to > change to the current version and add zfs-utils as dependency in the > PKGBUILD. Now I don't get the previous error anymore but I still cannot > setup a VM because I constantly get errors due to wrong permissions. > > I have tried to change the permissions in: > > - /etc/libvirt/qemu.conf > - /virt-pool/vmm > - /dev/zvol/virt-pool > > > also: > > # zfs allow <user> create,destroy,mount virt-pool/vmm > > didn't help. > > What are the correct permissions? Which user and group?Interesting. Libvirtd is/should be running as root, therefore it shouldn't have to get EPERM. What's the actual error message you're seeing? Michal
Nick Gilmour
2017-Oct-03 14:40 UTC
Re: [libvirt-users] error: internal error: missing backend for pool type 11 (zfs)
I have set root in both for user and group in the qemu.conf and changed the file permissions to root like it was before. Now I'm getting this error: *# Error 1#* *Unable to complete install: 'internal error: process exited while connecting to monitor: us=pci.0,addr=0x5.0x7 -device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x5 -device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x5.0x1 -device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x5.0x2 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x6 -drive file=/dev/zvol/virt-pool/vmm/fedora,format=raw,if=none,id=drive-ide0-0-0,cache=none,aio=native -device ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=2 -drive 'file=/home/nick/Downloads/#IMAGES#/Fedora-Workstation-Live-x86_64-26-1.5.iso,format=raw,if=none,id=drive-ide0-0-1,readonly=on' -device ide-cd,bus=ide.0,unit=1,drive=drive-ide0-0-1,id=ide0-0-1,bootindex=1 -netdev user,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:ad:21:19,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -chardev spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus=virtio-se'* *Traceback (most recent call last):* * File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper* * callback(asyncjob, *args, **kwargs)* * File "/usr/share/virt-manager/virtManager/create.py", line 2545, in _do_async_install* * guest.start_install(meter=meter)* * File "/usr/share/virt-manager/virtinst/guest.py", line 498, in start_install* * doboot, transient)* * File "/usr/share/virt-manager/virtinst/guest.py", line 434, in _create_guest* * domain = self.conn.createXML(install_xml or final_xml, 0)* * File "/usr/lib/python2.7/site-packages/libvirt.py", line 3640, in createXML* * if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)* *libvirtError: internal error: process exited while connecting to monitor: us=pci.0,addr=0x5.0x7 -device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x5 -device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x5.0x1 -device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x5.0x2 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x6 -drive file=/dev/zvol/virt-pool/vmm/fedora,format=raw,if=none,id=drive-ide0-0-0,cache=none,aio=native -device ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=2 -drive 'file=/home/nick/Downloads/#IMAGES#/Fedora-Workstation-Live-x86_64-26-1.5.iso,format=raw,if=none,id=drive-ide0-0-1,readonly=on' -device ide-cd,bus=ide.0,unit=1,drive=drive-ide0-0-1,id=ide0-0-1,bootindex=1 -netdev user,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:ad:21:19,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -chardev spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus=virtio-se* Before that I was getting these errors: *# Error 2#* *Unable to complete install: 'internal error: process exited while connecting to monitor: rdev spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0 -spice port=5901,addr=127.0.0.1,disable-ticketing,image-compression=off,seamless-migration=on -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pci.0,addr=0x2 -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev spicevmc,id=charredir0,name=usbredir -device usb-redir,chardev=charredir0,id=redir0,bus=usb.0,port=1 -chardev spicevmc,id=charredir1,name=usbredir -device usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 -msg timestamp=on* *2017-10-03T13:13:12.185700Z qemu-system-x86_64: -chardev pty,id=charserial0: char device redirected to /dev/pts/11 (label charserial0)* *2017-10-03T13:13:12.187799Z qemu-system-x86_64: -drive file=/dev/zvol/virt-p'* *Traceback (most recent call last):* * File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper* * callback(asyncjob, *args, **kwargs)* * File "/usr/share/virt-manager/virtManager/create.py", line 2545, in _do_async_install* * guest.start_install(meter=meter)* * File "/usr/share/virt-manager/virtinst/guest.py", line 498, in start_install* * doboot, transient)* * File "/usr/share/virt-manager/virtinst/guest.py", line 434, in _create_guest* * domain = self.conn.createXML(install_xml or final_xml, 0)* * File "/usr/lib/python2.7/site-packages/libvirt.py", line 3640, in createXML* * if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)* *libvirtError: internal error: process exited while connecting to monitor: rdev spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0 -spice port=5901,addr=127.0.0.1,disable-ticketing,image-compression=off,seamless-migration=on -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pci.0,addr=0x2 -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev spicevmc,id=charredir0,name=usbredir -device usb-redir,chardev=charredir0,id=redir0,bus=usb.0,port=1 -chardev spicevmc,id=charredir1,name=usbredir -device usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 -msg timestamp=on* *2017-10-03T13:13:12.185700Z qemu-system-x86_64: -chardev pty,id=charserial0: char device redirected to /dev/pts/11 (label charserial0)* *2017-10-03T13:13:12.187799Z qemu-system-x86_64: -drive file=/dev/zvol/virt-p* *# Error 3#* *Unable to complete install: 'internal error: process exited while connecting to monitor: hannel0,id=channel0,name=com.redhat.spice.0 -spice port=5901,addr=127.0.0.1,disable-ticketing,image-compression=off,seamless-migration=on -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pci.0,addr=0x2 -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev spicevmc,id=charredir0,name=usbredir -device usb-redir,chardev=charredir0,id=redir0,bus=usb.0,port=1 -chardev spicevmc,id=charredir1,name=usbredir -device usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 -msg timestamp=on* *2017-10-03T13:07:06.405747Z qemu-system-x86_64: -chardev pty,id=charserial0: char device redirected to /dev/pts/11 (label charserial0)* *2017-10-03T13:07:06.407941Z qemu-system-x86_64: -drive file=/dev/zvol/virt-pool/vmm/fedora,format=raw,if=none,id=drive-ide0-0-0,cache=none,aio=native: Could not open '/dev/zvol/virt'* *Traceback (most recent call last):* * File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper* * callback(asyncjob, *args, **kwargs)* * File "/usr/share/virt-manager/virtManager/create.py", line 2545, in _do_async_install* * guest.start_install(meter=meter)* * File "/usr/share/virt-manager/virtinst/guest.py", line 498, in start_install* * doboot, transient)* * File "/usr/share/virt-manager/virtinst/guest.py", line 434, in _create_guest* * domain = self.conn.createXML(install_xml or final_xml, 0)* * File "/usr/lib/python2.7/site-packages/libvirt.py", line 3640, in createXML* * if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)* *libvirtError: internal error: process exited while connecting to monitor: hannel0,id=channel0,name=com.redhat.spice.0 -spice port=5901,addr=127.0.0.1,disable-ticketing,image-compression=off,seamless-migration=on -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pci.0,addr=0x2 -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev spicevmc,id=charredir0,name=usbredir -device usb-redir,chardev=charredir0,id=redir0,bus=usb.0,port=1 -chardev spicevmc,id=charredir1,name=usbredir -device usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 -msg timestamp=on* *2017-10-03T13:07:06.405747Z qemu-system-x86_64: -chardev pty,id=charserial0: char device redirected to /dev/pts/11 (label charserial0)* *2017-10-03T13:07:06.407941Z qemu-system-x86_64: -drive file=/dev/zvol/virt-pool/vmm/fedora,format=raw,if=none,id=drive-ide0-0-0,cache=none,aio=native: Could not open '/dev/zvol/virt* *# Error 4#* *Unable to complete install: 'internal error: process exited while connecting to monitor: 2017-10-03T13:01:11.590603Z qemu-system-x86_64: -chardev pty,id=charserial0: char device redirected to /dev/pts/11 (label charserial0)* *2017-10-03T13:01:11.592767Z qemu-system-x86_64: -drive file=/dev/zvol/virt-pool/vmm/fedora,format=raw,if=none,id=drive-ide0-0-0,cache=none,aio=native: Could not open '/dev/zvol/virt-pool/vmm/fedora': Permission denied'* *Traceback (most recent call last):* * File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper* * callback(asyncjob, *args, **kwargs)* * File "/usr/share/virt-manager/virtManager/create.py", line 2545, in _do_async_install* * guest.start_install(meter=meter)* * File "/usr/share/virt-manager/virtinst/guest.py", line 498, in start_install* * doboot, transient)* * File "/usr/share/virt-manager/virtinst/guest.py", line 434, in _create_guest* * domain = self.conn.createXML(install_xml or final_xml, 0)* * File "/usr/lib/python2.7/site-packages/libvirt.py", line 3640, in createXML* * if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)* *libvirtError: internal error: process exited while connecting to monitor: 2017-10-03T13:01:11.590603Z qemu-system-x86_64: -chardev pty,id=charserial0: char device redirected to /dev/pts/11 (label charserial0)* *2017-10-03T13:01:11.592767Z qemu-system-x86_64: -drive file=/dev/zvol/virt-pool/vmm/fedora,format=raw,if=none,id=drive-ide0-0-0,cache=none,aio=native: Could not open '/dev/zvol/virt-pool/vmm/fedora': Permission denied* *# Error 5#* *Error starting domain: internal error: process exited while connecting to monitor: LC_ALL=C PATH=/usr/sbin:/sbin:/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/android-sdk/platform-tools:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl HOME=/home/nick USER=nick LOGNAME=nick QEMU_AUDIO_DRV=spice /usr/sbin/qemu-system-x86_64 -name guest=Fedora-Test1,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/home/nick/.config/libvirt/qemu/lib/domain-1-Fedora-Test1/master-key.aes -machine pc-i440fx-2.10,accel=kvm,usb=off,vmport=off,dump-guest-core=off -cpu kvm64 -m 4096 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 352c2983-fb53-4eb2-9def-1804e0abec5b -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/home/nick/.config/libvirt/qemu/lib/domain-1-Fedora-Test1/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet -no-shutdown -global PIIX4_PM.disable_s3=1 -global PIIX4_PM.* *Traceback (most recent call last):* * File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper* * callback(asyncjob, *args, **kwargs)* * File "/usr/share/virt-manager/virtManager/asyncjob.py", line 125, in tmpcb* * callback(*args, **kwargs)* * File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 82, in newfn* * ret = fn(self, *args, **kwargs)* * File "/usr/share/virt-manager/virtManager/domain.py", line 1505, in startup* * self._backend.create()* * File "/usr/lib/python2.7/site-packages/libvirt.py", line 1062, in create* * if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)* *libvirtError: internal error: process exited while connecting to monitor: LC_ALL=C PATH=/usr/sbin:/sbin:/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/android-sdk/platform-tools:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl HOME=/home/nick USER=nick LOGNAME=nick QEMU_AUDIO_DRV=spice /usr/sbin/qemu-system-x86_64 -name guest=Fedora-Test1,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/home/nick/.config/libvirt/qemu/lib/domain-1-Fedora-Test1/master-key.aes -machine pc-i440fx-2.10,accel=kvm,usb=off,vmport=off,dump-guest-core=off -cpu kvm64 -m 4096 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 352c2983-fb53-4eb2-9def-1804e0abec5b -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/home/nick/.config/libvirt/qemu/lib/domain-1-Fedora-Test1/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet -no-shutdown -global PIIX4_PM.disable_s3=1 -global PIIX4_PM.* *Error starting domain: Cannot access storage file '/dev/zvol/virt-pool/test-vol' (as uid:4294967295, gid:4294967295): No such file or directory* On Tue, Oct 3, 2017 at 4:15 PM, Michal Privoznik <mprivozn@redhat.com> wrote:> On 10/03/2017 03:48 PM, Nick Gilmour wrote: > > @Michal: Thanks for your reply! > > > > Indeed I have found a package in the AUR (libvirt-zfs) and only had to > > change to the current version and add zfs-utils as dependency in the > > PKGBUILD. Now I don't get the previous error anymore but I still cannot > > setup a VM because I constantly get errors due to wrong permissions. > > > > I have tried to change the permissions in: > > > > - /etc/libvirt/qemu.conf > > - /virt-pool/vmm > > - /dev/zvol/virt-pool > > > > > > also: > > > > # zfs allow <user> create,destroy,mount virt-pool/vmm > > > > didn't help. > > > > What are the correct permissions? Which user and group? > > Interesting. Libvirtd is/should be running as root, therefore it > shouldn't have to get EPERM. What's the actual error message you're seeing? > > Michal >