• [^] # Re: systemd

    Posté par . En réponse au message Crontab à l'arrêt du PC. Évalué à 5.

    Si je comprends bien on dit à systemd d’exécuter le script quand le runlevel la cible 'multi-user' s’arrête.

    Pas tout à fait, les unités ont toutes par défaut (il y a une option pour désactiver ce défaut) un conflit avec le target shutdown, c'est pour ça que son ExecStop sera exécuté à l'arrêt du système, mais seulement s'il a été démarré (le RemainAfterExit est là pour qu'il ne soit pas nécessaire de mettre un ExecStart qui fait une pause indéfinie).
    Le WantedBy dans la section Install est seulement là pour qu'un "systemctl enable" ait poru effet que l'unité soit démarrée avec le target multi-user (donc dans tous démarrage normal).

    Il faut noter que ce n'est pas tout à fait équivalent à lancer un script à l'arrêt, car tu peux arrêter l' e service avec "systemctl stop" et le script sera exécuté à ce moment-là, et plus à l'arrêt (si tu ne la redémarre pas).
    Cela peut s'éviter avec l'option RefuseManualStop=true (dans la section Unit).