Bug#571280: false positive for "init.d-script-missing-dependency-on-remote_fs /etc/init.d/rsyslog: required-stop"
Michael Biebl <biebl@debian.org> writes:
> the rsyslog init script has the following LSB header
> ### BEGIN INIT INFO
> # Provides: rsyslog
> # Required-Start: $remote_fs $time
> # Required-Stop: umountnfs $time
> # X-Stop-After: sendsigs
> # Default-Start: 2 3 4 5
> # Default-Stop: 0 1 6
> # Short-Description: enhanced syslogd
> # Description: Rsyslog is an enhanced multi-threaded syslogd.
> # It is quite compatible to stock sysklogd and can
> # be»
> # used as a drop-in replacement.
> ### END INIT INFO
> The
> # Required-Stop: umountnfs $time
> # X-Stop-After: sendsigs
> statements, ensure, that rsyslog is stopped as late as possible during
> shut down so it can collect log messages as long as possible.
> I uses the sendsigs_omit feature to ensure that it is not killed by the
> sendsigs init script in 0/6.
> Afaics the LSB header of rsyslog is correct and the following error
> message by lintian, a false positive:
> E: rsyslog: init.d-script-missing-dependency-on-remote_fs
> /etc/init.d/rsyslog: required-stop
What the script is triggering off of in this case is that you're starting
a daemon that lives in /usr/sbin but you're saying /usr can be unmounted
before the daemon is stopped. Since the running rsyslogd process has an
open file descriptor for the /usr/sbin/rsyslogd binary, I believe /usr
could not be unmounted while it was still running, although I haven't
tested. I think it has to be stopped before $remote_fs can be stopped in
the general case.
Incidentally, you're also saying that /var ($local_fs) can be unmounted
before rsyslogd is stopped, which similarly probably isn't going to work
since, at least in the default configuration, rsyslogd is holding a bunch
of open file descriptors in /var/log.
I'm not sure what you should actually do here, whether add an override
because the problems I think I see don't actually happen or change
something about the init script. But I think the Lintian analysis is
correct.
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: