Recently, my fedora-32 (still have to upgrade that one) template developed a strange issue.
The TemplateVM itself starts just fine, VMs depending on it that have been created a long time ago also run perfectly fine.
However, if I create a new VM which depends on the fedora-32 template, this one won’t start and instead show the well-known error messages:
Domain test-f32-issue has failed to start: qrexec-daemon startup failed: Connection to the VM failed
/var/log/xen/console/guest-test-f32-issue.log does not show anything obvious. The startup process runs until about 4 seconds in and the last line reads
input: PC Speaker as /devices/platform/pcspkr/input/input0
I compared this with a VM that starts up fine in which the following lines are (roughly summarized)
- Initialising Xen virtual ethernet driver - Found device /dev/hvc0 - Found device /dev/xvdc1 - Activating swap - Mounting tTemporary Directory
Since the problem happens both with and without networking, I would guess that the ethernet driver is not the issue. Could it be that something with setting up the file system is wrong? Why would that happen only in new VMs? Could it have something to do with the private disk space unique to each VM?
It would be great if anyone had some insights into how I could debug this. I would prefer not to throw away the template because I customized it over the time.
Edit: In the meantime, I upgraded the template to fedora-33 following the usual update instructions. This did not change anything (behavior as previously described).
However, I noticed the following: If I create a new AppVM, it cannot start with my custom fedora template. As soon as I switch it over to any other template, it starts up without any issues. If I then switch back to fedora, this one suddenly works as well. This works even if I use another distro for the initial startup, such as Debian 10.
It seems that there is anything that needs to be setup once in order for the VM to get into a permanently working state.