xhost dans rc.local ne semble pas fonctionner

Pierre LEJEUNE pierre.lejeune at free.fr
Ven 31 Juil 21:06:18 UTC 2009



Michel Leunen a écrit :
>
> Je dois avouer que je n'ai pas bien compris ce que tu voulais faire avec 
> ton xhost. Peux-tu expliquer même si ton problème est résolu?
>
>   
Alors voilà:
j'ai un script de sauvegarde qui est lancé par root sous forme de cron 
tous les soirs à 20h15.
Je souhaitais afficher une notification pendant l'exécution de ce script 
dans la zone de notification de Gnome pour que l'utilisateur qui a une 
session ouverte au moment du lancement de la sauvegarde soit au courant.
J'ai utilisé zenity pour faire ça mais mon problème était que le script 
n'était pas autorisé à utiliser le display de la session ouverte. Il 
fallait donc faire un "xhost +" pour root en local, soit: "xhost + 
local:root".
Je ne trouvais pas où placer cette commande pour qu'elle s'exécute dans 
n'importe quelle session.

Voila le mécanisme de sauvegarde que j'ai mis en place et qui fonctionne:

1) Le script de sauvegarde: /root/bin/sauvegarde.sh

#!/bin/bash
exec 3> >(zenity --notification 
--window-icon="/usr/share/icons/Tangerine/32x32/actions/gtk-save.png" 
--text="Sauvegarde en cours" --listen)
echo "message:Début de la sauvegarde" >&3
nice -n 19 dpkg --get-selections > /root/sauvegarde/paquets_installes.txt
nice -n 19 rdiff-backup --exclude-globbing-filelist 
/root/sauvegarde/EXCLUDE.lst / /sauvegardes/system > /dev/null 2>&1 && 
nice -n 19 rdiff-backup --remove-older-than 1M --force 
/sauvegardes/system > /dev/null 2>&1
echo "message:Fin de la sauvegarde" >&3
exec 3>&-


2) Le fichier d'exclusion (les données à ne pas sauvegarder): 
/root/sauvegarde/EXCLUDE.lst

/cdrom
/media
/mnt
/proc
/sys
/tmp
/sauvegardes
/**/.gvfs
/**/lost+found


2) La programmation du script:

$ sudo crontab -l
15 20 * * * DISPLAY=:0 /root/bin/sauvegarde.sh


3) L'autorisation d'affichage sur le display:

Dans le fichier /etc/gdm/PreSession/Default, j'ai ajouté la ligne

xhost + local:root

juste avant le "exit 0" de la fin du fichier.


Si ça peut aider quelqu'un...

@+

Pierre





Plus d'informations sur la liste de diffusion ubuntu-fr