Quoting Klaus Reimer <email@example.com>:
> > : No, I think this isn't working, too. If I upgrade proftpd, the init
> > : script will be re-created and the next reboot causes TWO proftpd
> > : instances to run.
> > man dpkg-divert
> Sounds interesting. Just to be sure, I understand that thing: Do you mean I
> should "divert" /etc/init.d/proftpd and replace this file with an empty file
> (If I remove it, upgrades to proftpd failes, because the file is executed
> (start/stop)). And if I remove my package I shall simply remove the diversion
> and everything is fine? If this is working and everybody is happy with it, I
> will do it in that way.
Since your package provides a wrapper around proftpd, shouldn't it
divert /usr/sbin/proftpd and call the diverted file once the
wrapper has done what wrappers do?
A simple example: I want to log every time proftpd starts, so I do:
dpkg-divert --package <your-pkgname> --rename --divert \
cat > /usr/sbin/proftpd <<eof
mailx root -s 'ProFTPD just started'
exec -a proftpd /usr/sbin/proftpd.real "$@"
chmod a+x /usr/sbin/proftpd
Once you've finished with the wrapping, do the reverse.
Systems programmer, IT Service, University of Durham, England