[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#881166: log files, postrotate example: start-stop-daemon or invoke-rc.d?



On Wed, 08 Nov 2017 at 13:50:31 +0100, Daniel Pocock wrote:
> Imagine the following scenario:
> 
> - a package distributes an init script that runs the process with a PID file
> 
> - later on, the package maintainer starts distributing a systemd unit
> file as well, running the process in foreground without a PID file, but
> the init script is still included in the package too
> 
> In this case, when the package is installed on a systemd system,
> start-stop-daemon would never find a PID file and rotation doesn't work.

If the package doesn't distribute a native systemd unit (yet), then this
isn't a bug (yet). If the package does, then I think you're right that
the logrotate snippet needs to change, at the same time the systemd
unit changes from the one generated by systemd-sysv-generator to one
that doesn't use start-stop-daemon.

Using "invoke-rc.d mydaemon force-reload" would be more future-proof.

> Some scripts also appear to make a check if invoke-rc.d really exists
> and then fall back to "service foo reload"

This should probably not be recommended or allowed, for the same reasons
that §9.3.3.2 doesn't allow it in maintainer scripts. invoke-rc.d was
non-Essential long ago, but is now Essential.

    smcv


Reply to: