Que dois-je mettre dans le [install]
section, de sorte que systemd exécute /home/me/so.pl
juste avant l'arrêt et aussi avant /proc/self/net/dev
est détruit ?
[Unit]
Description=Log Traffic
[Service]
ExecStart=/home/me/so.pl
[Install]
?
Réponse acceptée :
La solution suggérée est d'exécuter l'unité de service comme un service normal - jetez un œil au [Install]
section. Donc tout doit être pensé à l'envers, les dépendances aussi. Parce que l'ordre d'arrêt est l'ordre de démarrage inverse. C'est pourquoi le script doit être placé dans ExecStop=
.
La solution suivante fonctionne pour moi :
[Unit]
Description=...
[Service]
Type=oneshot
RemainAfterExit=true
ExecStop=<your script/program>
[Install]
WantedBy=multi-user.target
RemainAfterExit=true
est nécessaire lorsque vous n'avez pas de ExecStart
actions.
Après avoir créé le fichier, assurez-vous de systemctl daemon-reload
et systemctl enable yourservice --now
.
Je viens de le recevoir de systemd IRC, les crédits vont à mezcalero.