[XFCE] temporiser shutdown (Contourné)
[XFCE] temporiser shutdown (Contourné)
Bonjour,
Dans l'autostart de xfce, en trigger shutdown j'ai placé un petit script qui :
- Fait une annonce audio (1s)
- Envoi un mail en Perl (Sur Win7 ça prend 3 à 4s)
Lorsque je clique sur le bouton Shut down du Menu => Déconnexion, je n'entends que le tout début du message audio alors que j'ai mis un sleep de 2s, et bien sur le mail n'est pas envoyé.
Y a-t-il une possibilité de poser une tempo au shutdown
Il me semble que si l'on avait accès à la commande lancée par le bouton du panneau <Log Out | Restart | Shut Down> ça serait un jeu d'enfant...
J'ai un peu gratté dans xfce, mais n'ai rien trouvé
Merci
Dans l'autostart de xfce, en trigger shutdown j'ai placé un petit script qui :
- Fait une annonce audio (1s)
- Envoi un mail en Perl (Sur Win7 ça prend 3 à 4s)
Lorsque je clique sur le bouton Shut down du Menu => Déconnexion, je n'entends que le tout début du message audio alors que j'ai mis un sleep de 2s, et bien sur le mail n'est pas envoyé.
Y a-t-il une possibilité de poser une tempo au shutdown
Il me semble que si l'on avait accès à la commande lancée par le bouton du panneau <Log Out | Restart | Shut Down> ça serait un jeu d'enfant...
J'ai un peu gratté dans xfce, mais n'ai rien trouvé
Merci
Dernière modification par dmganges le jeu. 08 déc. 2022, 09:19, modifié 1 fois.
Re: [XFCE] temporiser shutdown
bonjour
pour le déconnexion et/ou l'arrêt du pc il faudrait plutôt utiliser systemd
pour le déconnexion et/ou l'arrêt du pc il faudrait plutôt utiliser systemd
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Re: [XFCE] temporiser shutdown
Bonsoir et merci papajoke pour ta réponse !
Je pense que lorsqu'on utilise les boutons <Log Out | Restart | Shut Down> de l'environnement XFCE on passe par systemd
Il doit y avoir quelque chose que je ne pige pas dans les autostarts à partir de XFCE.
J'en ai un, perso, parmi les autres, sur trigger Login, qui fonctionne très bien.
Celui que je pose sur les triggers Shutdown | Restart, démarre, mais est interrompu par le shutdown immédiat.
En toute rigueur lorsqu'on met un autostart en Shutdown, le shutdown du PC ne devrait être effectif que lorsque la commande est terminée
Je pense que lorsqu'on utilise les boutons <Log Out | Restart | Shut Down> de l'environnement XFCE on passe par systemd
Il doit y avoir quelque chose que je ne pige pas dans les autostarts à partir de XFCE.
J'en ai un, perso, parmi les autres, sur trigger Login, qui fonctionne très bien.
Celui que je pose sur les triggers Shutdown | Restart, démarre, mais est interrompu par le shutdown immédiat.
En toute rigueur lorsqu'on met un autostart en Shutdown, le shutdown du PC ne devrait être effectif que lorsque la commande est terminée
Re: [XFCE] temporiser shutdown
Il me semble que tu n'as pas compris ce que je t'indiquais ?
Il te sufit de créer ta propre unit systemd qui appelle ton script avec un "déclencheur" comme
Il te sufit de créer ta propre unit systemd qui appelle ton script avec un "déclencheur" comme
Before=shutdown.target
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Re: [XFCE] temporiser shutdown
Bonsoir,
Effectivement j'étais parti bille en tête... avec mon vieux Unix... je découvre à peine arch...
Je dois m'y prendre comme un manche, ce que je fais est rudimentaire, mais ne fonctionne pas :
Mon /etc/systemd/system/sysrescue-shutdown.service :
Je n'ai pas inventé grand chose, je suis parti de https://www.golinuxcloud.com/run-script ... only-rhel/ et plein d'autres...
J'ai essayé de lancer seulement la commande aplay... pareil...
Le .wav dure 2s, une synthèse vocale qui demande d’éteindre la souris.
Le lancement :
Les logs :
Je suis sur une version épurée de arch : https://www.system-rescue.org/ que je personnalise... c'est pour ça que mon script est directement sous /root... plus facile pour moi d'avoir les scripts de base sous la main de SystemRescue...
Effectivement j'étais parti bille en tête... avec mon vieux Unix... je découvre à peine arch...
Je dois m'y prendre comme un manche, ce que je fais est rudimentaire, mais ne fonctionne pas :
Mon /etc/systemd/system/sysrescue-shutdown.service :
Code : Tout sélectionner
[Unit]
Description=run at shutdown
Before=shutdown.target
[Service]
Type=oneshot
ExecStart=/root/ZZ_Sound
[Install]
WantedBy=shutdown.target
J'ai essayé de lancer seulement la commande aplay... pareil...
Le .wav dure 2s, une synthèse vocale qui demande d’éteindre la souris.
Code : Tout sélectionner
[Unit]
Description=run at shutdown
Before=shutdown.target
[Service]
Type=oneshot
ExecStart=/usr/bin/aplay /root/MK_Rescue/sysresccd/UTILE/LaSouris_V.wav
[Install]
WantedBy=shutdown.target
Code : Tout sélectionner
#> systemctl start sysrescue-shutdown.service
Job for sysrescue-shutdown.service failed because the control process exited with error code.
See "systemctl status sysrescue-shutdown.service" and "journalctl -xeu sysrescue-shutdown.service" for details.
Code : Tout sélectionner
Le processus /root/ZZ_Sound n'a pas pu être exécuté, et a donc échoué.
░░
░░ Le code d'erreur renvoyé est ERRNO.
déc. 06 18:10:54 sysrescue systemd[1]: sysrescue-shutdown.service: Main process exited, code=exited, status=203/EXEC
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ An ExecStart= process belonging to unit sysrescue-shutdown.service has exited.
░░
░░ The process' exit code is 'exited' and its exit status is 203.
déc. 06 18:10:54 sysrescue systemd[1]: sysrescue-shutdown.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ The unit sysrescue-shutdown.service has entered the 'failed' state with result 'exit-code'.
déc. 06 18:10:54 sysrescue systemd[1]: Failed to start run at shutdown.
░░ Subject: L'unité (unit) sysrescue-shutdown.service a échoué
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░
░░ L'unité (unit) sysrescue-shutdown.service a échoué, avec le résultat failed.
Re: [XFCE] temporiser shutdown
Bonjour,
Y a du mieux
J'avais oublié le pragma
ça ne me dit pas pourquoi
Mais ça ne fonctionne toujours pas
J'ai encore à apprendre...
Comment faire que le daemon Pulse ne soit pas arrêté, car il tourne dans la sesson XFCE
[Edit 01:20]
Pour avoir le son en direct il me faut relancer pulseaudio :
Là, toujours en direct, si je lance le service :
J'ai bien le son, mais pas au shutdown
Y a du mieux
Code : Tout sélectionner
root @ sysrescue
/etc/systemd/system
#> systemctl start sysrescue-shutdown.service
root @ sysrescue
/etc/systemd/system
#> systemctl status sysrescue-shutdown.service
○ sysrescue-shutdown.service - run at shutdown
Loaded: loaded (/etc/systemd/system/sysrescue-shutdown.service; disabled; preset: disabled)
Active: inactive (dead)
déc. 07 00:43:12 sysrescue systemd[1]: Starting run at shutdown...
déc. 07 00:43:12 sysrescue ZZ_Sound[1277]: Simple mixer control 'Master',0
déc. 07 00:43:12 sysrescue ZZ_Sound[1277]: Capabilities: pvolume pvolume-joined pswitch pswitch-joined
déc. 07 00:43:12 sysrescue ZZ_Sound[1277]: Playback channels: Mono
déc. 07 00:43:12 sysrescue ZZ_Sound[1277]: Limits: Playback 0 - 64
déc. 07 00:43:12 sysrescue ZZ_Sound[1277]: Mono: Playback 0 [0%] [-64.00dB] [on]
déc. 07 00:43:12 sysrescue ZZ_Sound[1279]: No PulseAudio daemon running, or not running as session daemon.
déc. 07 00:43:12 sysrescue ZZ_Sound[1280]: Playing WAVE '/root/MK_Rescue/sysresccd/UTILE/LaSouris_V.wav' : Signed 1>
déc. 07 00:43:14 sysrescue systemd[1]: sysrescue-shutdown.service: Deactivated successfully.
déc. 07 00:43:14 sysrescue systemd[1]: Finished run at shutdown.
root @ sysrescue
/etc/systemd/system
#>
#!/bin/bash
Code : Tout sélectionner
#!/bin/bash
# Réactiver le son avec amixer
# A REVOIR pour volume et carte par defaut
/usr/bin/amixer sset Master unmute
# /usr/bin/amixer sset Speaker unmute (haut-parleur désactivé)
# /usr/bin/amixer sset Headphone unmute (désactivation du casque)
/usr/bin/pacmd set-default-sink 0
/usr/bin/aplay /root/MK_Rescue/sysresccd/UTILE/LaSouris_V.wav
ExecStart=/usr/bin/aplay /root/MK_Rescue/sysresccd/UTILE/LaSouris_V.wav
ne fonctionnait pas non plus Mais ça ne fonctionne toujours pas
J'ai encore à apprendre...
déc. 07 00:43:12 sysrescue ZZ_Sound[1279]: No PulseAudio daemon running, or not running as session daemon.
Comment faire que le daemon Pulse ne soit pas arrêté, car il tourne dans la sesson XFCE
[Edit 01:20]
Pour avoir le son en direct il me faut relancer pulseaudio :
systemctl --user restart pulseaudio.service
Là, toujours en direct, si je lance le service :
systemctl start sysrescue-shutdown.service
J'ai bien le son, mais pas au shutdown
Re: [XFCE] temporiser shutdown
Bonjour,
D'après une recherche rapide sur internet il faut utiliser une de ces méthodes :
https://unix.stackexchange.com/question ... e-shutdown
https://unix.stackexchange.com/question ... oesnt-fini
D'après une recherche rapide sur internet il faut utiliser une de ces méthodes :
https://unix.stackexchange.com/question ... e-shutdown
https://unix.stackexchange.com/question ... oesnt-fini
Re: [XFCE] temporiser shutdown
Bonjour et merci pour ta réponse laurent85
J'ai également fait beaucoup de recherches sur Internet...
Et je suis tombé sur les mêmes exemples que tu proposes...
J'ai fait pas mal d'essais au pif, car là les bonnes infos sont rares et même inexistantes...
Le problème, enfin MON problème, mais apparement je ne suis pas le seul... C'est que je veux lancer un script au
Quand un shutdown est lancé la première chose qu'il fait c'est de tuer tous les processus, dont XFCE, pulseaudio... et bien d'autres choses.
Là, rien que pour lancer un son à la fermeture du système, ça devient une usine à gaz...
Il faut connaître les dépendances d'au moins
J'ai cherché, pas d'info, que des gens qui galèrent comme moi :
https://debian-facile.org/viewtopic.php?id=30120
Je pense que je vais faire comme eux mais en un peu mieux
Comme je joue avec l'archive
https://stackoverflow.com/questions/757 ... s/55942096
Je sortirai de la norme... mais quand la norme est imbitable...
J'ai également fait beaucoup de recherches sur Internet...
Et je suis tombé sur les mêmes exemples que tu proposes...
J'ai fait pas mal d'essais au pif, car là les bonnes infos sont rares et même inexistantes...
Le problème, enfin MON problème, mais apparement je ne suis pas le seul... C'est que je veux lancer un script au
Shutdown
.Quand un shutdown est lancé la première chose qu'il fait c'est de tuer tous les processus, dont XFCE, pulseaudio... et bien d'autres choses.
Là, rien que pour lancer un son à la fermeture du système, ça devient une usine à gaz...
Il faut connaître les dépendances d'au moins
pulseaudio
pour pouvoir lancer le script systemd
avant qu'elles ne soient tuées...J'ai cherché, pas d'info, que des gens qui galèrent comme moi :
https://debian-facile.org/viewtopic.php?id=30120
Je pense que je vais faire comme eux mais en un peu mieux
Comme je joue avec l'archive
SystemRescue
, je vais y introduire Perl-tk pour faire une petite interface graphique avec les commandes qui vont bien :https://stackoverflow.com/questions/757 ... s/55942096
Je sortirai de la norme... mais quand la norme est imbitable...
Re: [XFCE] temporiser shutdown
Donc à partir de :
https://debian-facile.org/viewtopic.php?id=30120
https://stackoverflow.com/questions/757 ... s/55942096
[EDIT]
1- J'ai tenté d'installer perl-tk à partir du
2- J'ai tenté avec
3- Bizarrement je me retrouve avec perl-tk (Pas le temps de chercher pour l'instant).
4- Installez perl-tk comme vous pouvez pour faire une petite interface graphique...
[/EDIT]
2- le script perl de l'interface graphique
3- Dans
4- Le script qui rassemble tout ce qui est à lancer à la déconnexion
5- Le script qui joue le son
Voila ce que ça donne :
Cliquer sur l'image pour agrandir.
Ce n'est plus dans la norme mais ça fonctionne
https://debian-facile.org/viewtopic.php?id=30120
https://stackoverflow.com/questions/757 ... s/55942096
[EDIT]
1- J'ai tenté d'installer perl-tk à partir du
cpan
, bien sûr. Je me suis fait jeter.2- J'ai tenté avec
pacman
, j'ai eu un tas d'insanités.3- Bizarrement je me retrouve avec perl-tk (Pas le temps de chercher pour l'instant).
4- Installez perl-tk comme vous pouvez pour faire une petite interface graphique...
[/EDIT]
2- le script perl de l'interface graphique
Logout.pl
:
Code : Tout sélectionner
#!/usr/local/bin/perl
use strict;
use warnings;
use utf8;
use Tk;
# Creation du widget principal
my $Wm = new MainWindow(
-title => "Déconnexion",
);
$Wm->minsize( 300, 100 );
# Frame pour les 3 boutons [Log Out|Restart|Shut Down]
my $Frame3Boutons = $Wm->Frame(
-background => "#F0FFFF",
)->pack(qw / -side top -fill both -expand 0 /);
# Frame pour le bouton [Suspend]
my $Frame1Bouton = $Wm->Frame(
-background => "#F0FFFF",
)->pack(qw / -side bottom -fill both -expand 1 /);
# Log Out
$Frame3Boutons->Button(
-text => "Log Out",
-width => 10,
-height => 2,
-command => sub {
system "/root/ZZ_Fin";
system "/usr/bin/xfce4-session-logout --fast --logout";
},
)->grid( -row => 0, -column => 1, -padx => 5, -pady => 10, -sticky => "nsew" );
# Restart
$Frame3Boutons->Button(
-text => "Restart",
-width => 10,
-height => 2,
-command => sub {
system "/root/ZZ_Fin";
system "/usr/bin/xfce4-session-logout --fast --reboot";
},
)->grid( -row => 0, -column => 2, -padx => 5, -pady => 10, -sticky => "nsew" );
# Shut Down
$Frame3Boutons->Button(
-text => "Shut Down",
-width => 10,
-height => 2,
-command => sub {
system "/root/ZZ_Fin";
system "/usr/bin/xfce4-session-logout --fast --halt";
},
)->grid( -row => 0, -column => 3, -padx => 5, -pady => 10, -sticky => "nsew" );
# Suspend
$Frame1Bouton->Button(
-text => "Suspend",
-width => 36,
-height => 2,
-command => sub {
system "/root/ZZ_Fin";
system "/usr/bin/xfce4-session-logout --fast --suspend";
},
)->grid( -row => 0, -column => 0, -padx => 5, -pady => 10, -sticky => "nsew" );
$Frame1Bouton->pack(qw / -side top -fill both -expand 1 /);
MainLoop();
#---------------------------------------------------------------
# Il n'y a pas de code spécifique...
3- Dans
/usr/local/bin
un script du même nom que celui qui est lancé lorsqu’on clique sur Déconnexion xfce4-session-logout
:
Code : Tout sélectionner
#!/bin/bash
/usr/bin/perl /root/ZZ_Perl/Logout.pl
/root/ZZ_Fin
:
Code : Tout sélectionner
#!/bin/bash
/root/ZZ_Sound
/usr/bin/perl /root/ZZ_Perl/mail.pl
#... ...
/root/ZZ_Sound
:Code : Tout sélectionner
#!/bin/bash
/usr/bin/pacmd set-default-sink 0
/usr/bin/aplay /root/MK_Rescue/sysresccd/UTILE/LaSouris_V.wav
Cliquer sur l'image pour agrandir.
Ce n'est plus dans la norme mais ça fonctionne