I noticed my VM were killed at reboot and I was advice to enable libvirt-guest.service to have them saved automatically. Unfortunately it seem this service is backwards or enabled from the wrong target. 'start' saved the VMs, 'stop' seem to do nothing. This means that at shutdown VMs are still mercilessly killed.
I'm running into the same problem as Simo. After poring through the systemd logs, this is what I believe happens on my systems: - libvirtd.service starts and keeps running - libvirt-guests.service starts, see there is nothing to do (by default), then exits successfully. - systemd seeing that the service has terminated successfully calls the stop target - libvirt-guests.service tries to shutdown all the VMs, but fails as they are still in the BIOS or booting. - libvirt-guests.service fails after 1 minute, but stays in the stopped,failed state. Then, at real shutdown, the libvirt-guests stop action is not ran and the VMs are killed hard. Adding: RemainAfterExit=yes to the [Service] section of /lib/systemd/system/libvirt-guests.service makes libvirt behave for me. Phil.
*** This bug has been marked as a duplicate of bug 843836 ***