systemctl: reload configuration when enabling sysv units too (#3297)
authorFranck Bui <fbui@suse.com>
Thu, 19 May 2016 14:37:04 +0000 (16:37 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Thu, 19 May 2016 14:37:04 +0000 (10:37 -0400)
commit823e5fabb783d452607ff8ccaa5235af14eb44eb
tree9217c6b534468a8a08d9ccbbdf17a7b15c54af6a
parentf3f054f03e6de7865132e9602da178dfc82102ab
systemctl: reload configuration when enabling sysv units too (#3297)

After enabling/disabling a unit, the daemon configuration is expected
to be unless '--no-reload' option is passed.

However this is not done when enabling a sysv units. This can lead to
the following scenario:

   $ cp /etc/init.d/named /etc/init.d/foo
   $ systemctl enable foo
   foo.service is not a native service, redirecting to systemd-sysv-install
   Executing /usr/lib/systemd/systemd-sysv-install enable foo
   $ systemctl start foo
   Failed to start foo.service: Unit foo.service failed to load: No such file or directory.

This can also be seen after installing a package providing a sysv
service: the service can't be started unless 'daemon-reload' is called
manually. This shouldn't be needed and this patch will fix this case
too since during package installation, the service is expected to be
enabled/disabled.
src/systemctl/systemctl.c