Lorsque j'éteins mon ordinateur, je souhaite afficher certaines tâches en attente à effectuer avant de quitter le bureau ... J'ai créé une application locale pour gérer ces tâches. Je souhaite simplement exécuter une commande et arrêter après avoir tué l'application exécutée.
Vous pouvez ajouter votre commande au fichier /etc/gdm/PostSession/Default
avant la ligne exit 0
.
Vous pouvez le faire en créant un script dans /etc/rc0.d (pour l’arrêt) et /etc/rc6.d (pour le redémarrage). Pour cela, lancez:
gksu gedit /etc/rc0.d/K01mycustomscript
Éditez votre script d'arrêt dans l'éditeur de texte puis exécutez:
Sudo chmod +x /etc/rc0.d/K01mycustomscript
Et si vous voulez qu’il s’exécute au redémarrage, lancez ceci:
Sudo cp /etc/rc0.d/K01mycustomscript /etc/rc6.d/K01mycustomscript
Source: ce sujet du forum
Cela ressemble à une question pour superuser.com pour moi. Quoi qu'il en soit, après quelques googler j'ai trouvé comment exécuter un script sur la déconnexion? qui dit d'ajouter le script à $ HOME/.bash_logout.
Si cela ne fonctionne pas, ajoutez
$HOME/.bash_logout
dans/etc/gdm/PostSession/Default pour qu’il exécute correctement le script de déconnexion.
De la même manière que si l'utilisateur est déconnecté avant l'arrêt, cela devrait couvrir les deux bases.
Si vous faites ./app-to-run && Sudo shutdown -h now
l'ordinateur devrait s'éteindre une fois l'application lancée.
Presque la même réponse que Tommy Brunn mais sans risque de bloquer le mot de passe root:
Sudo sh -c "./app-to-run; shutdown -h now"