diff options
Diffstat (limited to 'debian/rsyslog.preinst')
-rw-r--r-- | debian/rsyslog.preinst | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/debian/rsyslog.preinst b/debian/rsyslog.preinst index ae2c5f0..c15556c 100644 --- a/debian/rsyslog.preinst +++ b/debian/rsyslog.preinst @@ -10,4 +10,17 @@ if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt "5.7.8-1" ; then rm -f /etc/systemd/system/sockets.target.wants/rsyslog.socket fi +# In wheezy we ship the syslog.service symlink directly in the package, in +# jessie we use init-system-helpers to create it dynamically in postinst. +# During the upgrade there is a time frame when the symlink does not exist. +# If systemd is reloaded at this point, it loses track of the rsyslogd process. +# To work around this problem, create a (runtime) copy of the syslog.service +# symlink before the upgrade and remove it again afterwards. See #724796 +if [ -d /run/systemd/system ] && dpkg --compare-versions "$2" lt "7.4.1-2" ; then + target=$(readlink /etc/systemd/system/syslog.service) + if [ "$target" = /lib/systemd/system/rsyslog.service ] ; then + ln -sf "$target" /run/systemd/system/syslog.service + fi +fi + #DEBHELPER# |