I'm trying to use virtiofsd to mount a couple zfs drives in Windows as Local Drives (for a couple specific reasons that I won't get into). I've managed to make one of the drives show up once in Windows but never again. I've blown away the VM and rebuilt and am still having issues. I'm guessing I'm missing something. Steps I've taken are as follows,
I used this guide for the host side. I couldn't find a guide for the Windows VM config (only Linux) but I understand all I had to do for that was Step 1 below.
1. On the Windows VM I installed WinFSP and virtio-win-gt-x64.msi and ensured both services are set to run on startup with the VirtIO-FS Service being dependent on the WinFSP service. I then shut down the VM.
2. On the host, I installed virtiofsd
3. Grabbed the two hookscript files and put them where the guide says to. I modified virtiofs_hook.conf to look like this
which are the five host mounts I want to share with the VM.
4. Ran
and verified that the hookscript line is in
5. Started the VM and verified these services are running,
6. Confirmed that
now has the following argument.
As I said, there was one time when I did this and I saw 1 of the 5 mounts as a local drive in the Windows VM after completing the above steps. I have started over several times (following the "Cleanup" section of the linked guide and rebuilding the VM) and I can't get even one to show up again.
Anyone know what I'm missing?
EDIT: I also do not see any "Unknown Devices" in device manager. The only VirtIO device is see is the "VirtIO Balloon Driver" which I expect is unrelated. I understand I should see additional VirtIO devices.
I used this guide for the host side. I couldn't find a guide for the Windows VM config (only Linux) but I understand all I had to do for that was Step 1 below.
1. On the Windows VM I installed WinFSP and virtio-win-gt-x64.msi and ensured both services are set to run on startup with the VirtIO-FS Service being dependent on the WinFSP service. I then shut down the VM.
2. On the host, I installed virtiofsd
3. Grabbed the two hookscript files and put them where the guide says to. I modified virtiofs_hook.conf to look like this
Code:
109: /Media1-1, /Media1-2, /Media2-1, /Media2-2, /Temp
4. Ran
Code:
qm set 109 --hookscript local:snippets/virtiofs_hook.pl
Code:
/etc/pve/qemu-server/109.conf
Code:
virtiofsd-109-Media1-1@109.service loaded active running virtiofsd filesystem share at /Media1-1 for VM 109
virtiofsd-109-Media1-2@109.service loaded active running virtiofsd filesystem share at /Media1-2 for VM 109
virtiofsd-109-Media2-1@109.service loaded active running virtiofsd filesystem share at /Media2-1 for VM 109
virtiofsd-109-Media2-2@109.service loaded active running virtiofsd filesystem share at /Media2-2 for VM 109
virtiofsd-109-Temp@109.service loaded active running virtiofsd filesystem share at /Temp for VM 109
Code:
/etc/pve/qemu-server/109.conf
Code:
args: -object memory-backend-memfd,id=mem,size=4096M,share=on -numa node,memdev=mem -chardev socket,id=char0,path=/run/virtiofsd/109-Media1-1.sock -device vhost-user-fs-pci,chardev=char0,tag=109-Media1-1 -chardev socket,id=char1,path=/run/virtiofsd/109-Media1-2.sock -device vhost-user-fs-pci,chardev=char1,tag=109-Media1-2 -chardev socket,id=char2,path=/run/virtiofsd/109-Media2-1.sock -device vhost-user-fs-pci,chardev=char2,tag=109-Media2-1 -chardev socket,id=char3,path=/run/virtiofsd/109-Media2-2.sock -device vhost-user-fs-pci,chardev=char3,tag=109-Media2-2 -chardev socket,id=char4,path=/run/virtiofsd/109-Temp.sock -device vhost-user-fs-pci,chardev=char4,tag=109-Temp
As I said, there was one time when I did this and I saw 1 of the 5 mounts as a local drive in the Windows VM after completing the above steps. I have started over several times (following the "Cleanup" section of the linked guide and rebuilding the VM) and I can't get even one to show up again.
Anyone know what I'm missing?
EDIT: I also do not see any "Unknown Devices" in device manager. The only VirtIO device is see is the "VirtIO Balloon Driver" which I expect is unrelated. I understand I should see additional VirtIO devices.
Last edited: