Je n'ai jamais trouvé la réponse à cette question, mais j'ai créé ma propre alternative.
J'ai créé rc.local_jjp dans /etc
#!/bin/sh -e
#
# rc.local_jjp
#
# This script is executed at the start of runlevel 0 and 6
# and at the end of runlevels 1,2 and 3
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
LOG='/var/log/maint/mysyslog'
DATE="`date`"
case "$1" in
start)
start
;;
stop)
echo "System Shutdown at $DATE" >> $LOG
;;
restart)
echo "System Restart at $DATE" >> $LOG
;;
*)
echo "Usage: $0 {start|stop|restart}" >> $LOG
exit 1
esac
exit 0
Ensuite, j'ai fait des liens symboliques avec les répertoires de niveau d'exécution.
sudo ln -s /etc/rc.local_jjp /etc/rc0.d/K02rc.local_jjp
sudo ln -s /etc/rc.local_jjp /etc/rc1.d/S99rc.local_jjp
sudo ln -s /etc/rc.local_jjp /etc/rc2.d/S99rc.local_jjp
sudo ln -s /etc/rc.local_jjp /etc/rc3.d/S99rc.local_jjp
sudo ln -s /etc/rc.local_jjp /etc/rc6.d/K02rc.local_jjp
(Je n'étais pas vraiment clair sur ce que font les runlevels 4 et 5, donc je n'ai pas ajouté de liens symboliques pour eux).
Maintenant, j'ai mon propre petit syslog qui montre les démarrages et les arrêts.
Je ne dirai pas grand chose sur le comportement au démarrage et à l'arrêt de Linux (principalement parce que je ne le comprends pas très bien), mais l'idée de base est que les scripts dans des répertoires spéciaux sont exécutés lorsque le système change de niveau d'exécution, comme lorsqu'il passe du démarrage au multi-utilisateur (niveau d'exécution 3).
Puisque mon script a besoin que le système fonctionne normalement et parce que je ne veux pas risquer d'interférer avec quelque chose d'important, j'ai nommé les liens symboliques de façon à ce qu'il soit exécuté comme l'une des dernières choses au démarrage et l'une des premières choses à l'arrêt.