#1 Le 15/06/2014, à 17:48
- ar barzh paour
[abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
bonjour à tous
la résolution est ici mais c'est en 18.04 !!!! 4 ans après !!!! par utilisation de systemd
https://forum.ubuntu-fr.org/viewtopic.p … #p22016084
j'ai utilisé crontab pour lancer un shell au démarrage (avec @reboot) , et ça marche bien
maintenant
j'ai parcouru le forum mais je ne trouve pas ce que je veux faire :
lancer un shell à l'extinction du PC (ou à la fermeture de session )
sans doute évident pour ceux qui connaissent
(en fait le shell me servira à supprimer un fichier , d'où mon titre )
Dernière modification par ar barzh paour (Le 03/12/2018, à 16:14)
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#2 Le 15/06/2014, à 18:12
- jplemoine
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
Il faut que tu te documentes sur les 'runlevel'...
De mémoire, je crois que le 0 (extinction) et/ou le 9 (redemarrage) peuvent répondre à ta question.
Je suis désolé mais je n'en connais guère plus que ça : je ne te donne donc pas plus de détails pour ne pas t'induire en erreur.
Ce compte ne servira plus : vous pouvez le supprimer si le coeur vous en dit...
Laissé par l'auteur pour historique.
Hors ligne
#3 Le 15/06/2014, à 18:33
- Watael
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
salut,
tu peux supprimer le-dit fichier @reboot, de la même manière que le système nettoie /tmp.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#4 Le 15/06/2014, à 21:14
- tiramiseb
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
Salut,
en effet, le plus simple est peut-être "@reboot".
Mais sinon, tu peux en effet faire un script de démarrage dans /etc/init.d et le faire "démarrer" lors de l'arrêt de l'ordinateur...
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#5 Le 16/06/2014, à 04:45
- ar barzh paour
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
bonjour à tous et merci pour vos réponses
Il faut que tu te documentes sur les 'runlevel'.
je vais chercher
tu peux supprimer le-dit fichier ....... de la même manière que le système nettoie /tmp
tu peux développer ? de quelle façon le système "nettoie-t-il /tmp
en effet, le plus simple est peut-être "@reboot".
ça veut dire que je supprimerait le fichier au démarrage pour le recréer aussitôt ?
effectivement, comme ce fichier est "local" , ça devrait suffire
dans crontab , je vais essayer de cette façon :
@reboot mon-script de suppression-de fichier
@reboot sleep 40;DISPLAY=:0 mon-script-de création
EDIT : je viens d'essayer ,
j'ai mis @reboot rm mon-fichier , fonctionne au moins pour ce fichier là ,
je n'abandonne cependant pas la piste de l'effacement à la fermeture
et le faire "démarrer" lors de l'arrêt de l'ordinateur
même question qu'à Watael comment ?
Dernière modification par ar barzh paour (Le 16/06/2014, à 05:33)
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#6 Le 16/06/2014, à 08:13
- tiramiseb
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
tu peux développer ? de quelle façon le système "nettoie-t-il /tmp
Grâce au fichier de configuration /etc/init/mounted-tmp.conf (fichier de configuration de upstart, le système de gestion du démarrage d'Ubuntu), l'ordinateur supprime "proprement" le contenu de /tmp à chaque démarrage.
dans crontab , je vais essayer de cette façon :
@reboot mon-script de suppression-de fichier
@reboot sleep 40;DISPLAY=:0 mon-script-de création
Tu peux aussi faire un script qui fait suppression+création...
Sinon, le "DISPLAY=:0" est-il vraiment nécessaire ? Ton script affiche quelque chose ? Ton interface graphique est vraiment prête quand ton script se lance ?
tiramiseb a écrit :et le faire "démarrer" lors de l'arrêt de l'ordinateur
même question qu'à Watael comment ?
Soit tu crées un script dans /etc/init.d à l'ancienne, en t'inspirant de ce qui y existe déjà.
Soit tu crées un fichier de configuration dans /etc/init si tu veux être moderne.
À ta place je choisirais la seconde solution
... d'autant plus que la page suivante est plutôt bien foutue : http://upstart.ubuntu.com/cookbook/
Dernière modification par tiramiseb (Le 16/06/2014, à 08:13)
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#7 Le 16/06/2014, à 08:22
- bruno
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
Bonjour,
Pour exécuter un script à la fermeture de session d'un utilisateur il suffit de l’appeler dans $HOME/.bash_logout
Pour exécuter un script à l’extrême-onction/redémarrage de la machine il faut utiliser les runlevels.
- lire le fichier /etc/init.d/README
- créer le script dans /etc/init.d et le rendre exécutable
- faire des liens symboliques dans /etc/rc0.d (arrêt du système) et /etc/rc6.d (redémarrage) :
sudo ln -s /etc/init.d/toto.sh /etc/rc0.d/K99toto
sudo ln -s /etc/init.d/toto.sh /etc/rc6.d/K99toto
#8 Le 16/06/2014, à 08:27
- tiramiseb
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
Pour exécuter un script à la fermeture de session d'un utilisateur il suffit de l’appeler dans $HOME/.bash_logout
Euh... Non !!!!!!
.bash_logout est appelé à chaque fois qu'on arrête Bash, donc à chaque fois qu'on ferme un terminal.... Aucun rapport avec l'extinction de l'ordinateur.
- faire des liens symboliques dans /etc/rc0.d (arrêt du système) et /etc/rc6.d (redémarrage) :
Ou alors mettre les bons en-têtes au script et utiliser update-rc.d. Mais il reste préférable d'utiliser un fichier de configuration upstart dans /etc/init/.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#9 Le 16/06/2014, à 08:46
- bruno
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
Au temps pour le .bash_logout n'est pas une bonne idée puisqu'il sera effectivement exécuté à chaque fois que l'utilisateur quitte explicitement l'interpréteur de commande (shell)… (et cela ne marche très probablement pas avec une session graphique).
#10 Le 16/06/2014, à 13:50
- ar barzh paour
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
j'essaie de répondre à chaque item
Tu peux aussi faire un script qui fait suppression+création.
non le script de suppression me permet aussi de vérifier que le script de création se lance bien
de plus il ne se lancerait , enfin pour l'instant je ne sais pas faire autrement , qu'au démarrage ....
Sinon, le "DISPLAY=:0" est-il vraiment nécessaire ?
historiquement , j'avais ajouté DISPLAY parce que mon script ne fonctionnait pas ..............
je vais supprimer DISPLAY et voir l'incidence
EDIT : 19-06-2014 :j'utilisais DISPALY car je faisais un gedit du fichier en fin de scrupt
le script récupère des valeurs via des commandes système et/ou des fichiers personnels , inscrit le résultat dans un fichier et place ce fichier sur le bureau
je peux consulter ce fichier quand bon me semble , voilà
un extrait du résultat en 12.04 (32 bits)
version lancée : lsb_release
Description: Ubuntu 12.04.4 LTS
Codename: precise
3.2.0-64-generic-paehome est intégré à /
/dev/sda11 monté sur /
/dev/sdc8 monté sur /media/Data
/dev/sdc6 monté sur /media/photos
==================================================
/dev/sda: ST3500418AS_9VM14WAQ
Attribute Current|Worst|Threshold Status Value Type Updates
reallocated-sector-count 100|100| 36 good 1 sectors Pre-fail Online
==================================================
ce qui m'exténue un peu , c'est que j'ai passé du temps à faire fonctionner ce script , qu'il fonctionne très bien en 12.04 et qu'en 14.04 il me manque des infos dans le résultat de mon fichier ........ mais c'est l'objet d'un autre post
un extrait du résultat en 14.04 (32 bits)
version lancée : lsb_release
Description: Ubuntu 14.04 LTS
Codename: trusty
3.13.0-29-generichome est intégré à /
/dev/sda12 monté sur /
/dev/sdc8 monté sur /media/Data
/dev/sdc6 monté sur /media/photos
==================================================
/dev/sda: ST3500418AS_9VM14WAQ
LA IL MANQUE LES INFOS SECTEURS ( et ça pour mes trois disques)==================================================
le script est le même ( c'est /media/Data/shell/afficheconfig ) , lancer par cron @rebboot sur les deux systèmes
Dernière modification par ar barzh paour (Le 19/06/2014, à 06:17)
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#11 Le 16/06/2014, à 13:55
- tiramiseb
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
ce qui m'exténue un peu , c'est que j'ai passé du temps à faire fonctionner ce script , qu'il fonctionne très bien en 12.04 et qu'en 14.04 il me manque des infos dans le résultat de mon fichier
Pas une seule fois tu ne nous pas parlé d'un problème de script qui fonctionnait bien en 12.04 et qui ne fonctionne plus en 14.04.
Jusqu'ici tu as uniquement demandé comment exécuter un script à l'arrêt de la machine (ou à la fermeture de session).
Du coup je ne comprends plus trop : qu'est-ce qui marchait en 12.04 et qui ne marche plus en 14.04 ?
Quel est le lien avec l'exécution d'un script à l'arrêt de la machine ?
le script de suppression me permet de vérifier que le script de création se lance bien
Parce qu'il aura effacé les données avant l'exécution du script de création ? Ça t'apporte quoi ? Si tu veux savoir si un fichier a été modifié au dernier démarrage, tu peux regarder sa date de modification... C'est pour déboguer ton script de création ?
S'il s'agit de faire fonctionner un script qui fonctionnait avant, pourquoi ne pas nous parler de ce script plutôt ?
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#12 Le 16/06/2014, à 14:09
- ar barzh paour
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
je n'aurais pas du mélanger les problèmes :
j'ai un autre post en cours ici:
http://forum.ubuntu-fr.org/viewtopic.php?id=1505331
mais effectivement cette discussion visait à régler mon soucis de non fonctionnement d'un script de création et oui on peut dire pour le déboguer
Dernière modification par ar barzh paour (Le 16/06/2014, à 14:14)
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#13 Le 16/06/2014, à 14:43
- tiramiseb
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
Mouais, c'est un truc qu'on ne fait jamais... En général on supprime le fichier juste avant de le créer, picétou. Et lorsque l'on développe, pour voir si un fichier a été modifié, on regarde sa date de modification...
En bref : avec cette histoire de script à l'arrêt de la machine, tu te prends la tête pour rien.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#14 Le 16/06/2014, à 14:45
- ar barzh paour
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
@tiramiseb
j'ai remplacé
@reboot sleep 40;DISPLAY=:0 mon-script-de création
par
@reboot sleep 40 mon-script-de création
le fichier n'apparait plus sur mon bureau peut-être est-il ailleurs ....
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#15 Le 16/06/2014, à 14:56
- tiramiseb
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
Tu as oublié le point-virgule :
@reboot sleep 40; mon-script-de création
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#16 Le 16/06/2014, à 15:07
- ar barzh paour
Re : [abandon 14.04 Résolu 18.04] lancer un shell à la fermeture de session
aïe ! merci je remodifie
tiramiseb
En bref : avec cette histoire de script à l'arrêt de la machine, tu te prends la tête pour rien.
je ferme donc cette discussion
merci pour l'aide apportée
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne