I went to start my Debian12 VM in virt-manager.
I get the following in a popup
Error starting domain: operation failed: Unable to find a satisfying virtiofsd
So I searched in my Void host for virtiofsd
# xbps-query -Rs virtiofsd
[*] virtiofsd-1.8.0_1 Virtio-fs vhost-user device daemon
and installed it
xbps-install virtiofsd
Then I expected to see an entry in /etc/sv
because it is a daemon… not there?
Nothing in which virtiofsd
Nothing in man virtiofsd
So I retry starting the Debian12 VM… and it works.
SUCCESS, but
Why do I need virtiofsd right now… I have had that Debian VM for months.
Why do all my other VM’s start without virtiofsd? Why only Debian affected ?
and
where is the installed virtiofsd in my system? It is neither a daemon, nor a command so what is it?
I tried this
$ ps ax | grep virtiofsd
9580 ? S 0:00 /usr/libexec/virtiofsd --fd=28 -o source=/common
9590 ? Sl 0:00 /usr/libexec/virtiofsd --fd=28 -o source=/common
21234 pts/15 S+ 0:00 grep virtiofsd
so it is one of those weird things in /usr/libexec
Does anyone know how they are used?
If I shutdown Debian it disappears from the ps
# ps ax | grep virtiofsd
3935 pts/16 S+ 0:00 grep virtiofsd
#
and I actually have an hyperbola VM running , so Hyperbolavm does not need virtiofsd, only Debianvm???
I start FreeBSDVM… and now virtiofsd appears in a ps
just like with Debian… but FreeBSDvm did not need it… it started without it.
It has something to do with my filesystem called /common
which I export with nfs
from the Void host to the guests.
I export it to FreeBSD and Hyperbola. I use it (ie mount it) in Hyperbola… so why does hyperbola not need virtiofsd ?.
It would seem that the OS that does do a virtiofs mount ( ie Debian) needs the virtiofs daemon, while the OS that does an nfs mount ( ie Hyperbola) does not need virtiofsd.
Sudden changes like this are a mystery.
I think I have it
In /etc/exports in the host I have
# cat /etc/exports
# /etc/exports
#
# See exports(5) for more information.
#
# Use exportfs -r to reread
# /export 192.168.1.10(rw,no_root_squash)
/common 192.168.122.45(rw,no_subtree_check,no_root_squash)
/common 192.168.122.57(rw,no_subtree_check,no_root_squash)
/common 192.168.122.41(rw,no_subtree_check,no_root_squash)
Those 3 IP numbers are MX ( which no longer exists as a VM) , hyperbola, and FreeBSD.
It is out of date… no Debian entry at all
So the new ‘fixed’ /etc/exports has
# hyperbola
/common 192.168.122.57(rw,no_subtree_check,no_root_squash)
# FreeBSD-2
/common 192.168.122.41(rw,no_subtree_check,no_root_squash)
# Debian12
/common 192.168.122.145(rw,no_subtree_check,no_root_squash)
# Antix
/common 192.168.122.59(rw,no_subtree_check,no_root_squash)
That should be right, but the question now is… do I need it.
Does virtiofsd
take its place? I doubt it.
My Debian12 VM does not try to do a virtiofs mount in its /etc/fstab/… I have it commented out. So Debian was not trying to mount a non-exported filesystem. So what was it trying to do that required
virtiofsd? I dont know.
The only thing I know that changed recently was deleting the MX VM and forgetting to take its line out of /etc/exports.
Why would that affect Debian?