libvirt/tools
Gerd v. Egidy 56f97e14ab libvirt-guests: systemd host shutdown does not work
I originally postet this into the Fedora bugzilla
https://bugzilla.redhat.com/show_bug.cgi?id=843836

Currently gracefully shutting down guest vms on host shutdown does not work on
Fedora 17, the guests are killed hard on system shutdown.

The reason is systemd considers libvirt-guests.service to be stopped when the
system is running:

$ systemctl status libvirt-guests.service
libvirt-guests.service - Suspend Active Libvirt Guests
          Loaded: loaded (/usr/lib/systemd/system/libvirt-guests.service;
enabled)
          Active: deactivating (stop) since Fri, 27 Jul 2012 15:47:31 +0200;
2min 48s ago
         Process: 1085 ExecStart=/etc/init.d/libvirt-guests start
(code=exited, status=0/SUCCESS)
         Control: 1150 (libvirt-guests)
          CGroup: name=systemd:/system/libvirt-guests.service
                  └ control
                    ├ 1150 /bin/sh /etc/init.d/libvirt-guests stop
                    └ 2257 sleep 1

libvirt-guests.service is defined as type "simple" in systemd (the default).
That means systemd will shut down the service when the start executable is
terminated after starting is done. Systemd will not call stop again on system
shutdown because it thinks it is already stopped.

The solution is to define it as type "oneshot" and set the flag
"RemainAfterExit". Then systemd will consider the service as active after
startup and will call the stop function on host shutdown.
(cherry picked from commit 79ca7e4e57)
2012-07-27 12:43:32 -06:00
..
console.c virsh: Clarify escape sequence 2012-04-16 12:37:26 +01:00
console.h virsh: add support for VIR_DOMAIN_CONSOLE_* flags 2012-02-27 15:05:17 +01:00
libvirt_win_icon_16x16.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_32x32.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_48x48.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_64x64.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt-guests.init.sh libvirt-guests: Remove LISTFILE if it's empty when stopping service 2012-06-14 18:16:49 -04:00
libvirt-guests.service.in libvirt-guests: systemd host shutdown does not work 2012-07-27 12:43:32 -06:00
libvirt-guests.sysconf libvirt-guests: Add parallel startup and shutdown of guests 2012-03-05 13:18:24 +01:00
Makefile.am build: clean up CPPFLAGS/INCLUDES usage 2012-02-03 10:36:02 -07:00
virsh_win_icon.rc Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
virsh.c virsh: Don't generate invalid XML in attach-disk command 2012-06-14 18:38:27 -04:00
virsh.pod virsh: Clarify use of the --managed-save flag for the list command 2012-04-16 12:40:57 +01:00
virt-host-validate-common.c build: avoid 'devname' for BSD 2012-03-29 17:08:27 -06:00
virt-host-validate-common.h Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-lxc.c Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-lxc.h Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-qemu.c Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-qemu.h Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate.c build: fix missing include 2012-01-27 11:18:35 -07:00
virt-pki-validate.in tools: make virt-pki-validate work with acls and xattrs 2012-06-14 18:23:21 -04:00
virt-sanlock-cleanup.in Fix virt-sanlock-cleanup documentation 2011-10-17 10:57:36 -06:00
virt-xml-validate.in virt-*-validate.in: quote all variable references 2011-02-21 10:32:34 -07:00