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