PDA

Afficher la version complète : [Réglé] Cron et kdialog: cannot connect to X server



pc54g2
27/03/2008, 20h34
Bonjour,

une tache planifiée via Cron lance divers scripts qui s'appellent les uns les autres. Leur exécution engendre au final un Fichier txt simple qui est censé être affiché dans une ultime instruction par kdialog :


kdialog --title "Titre ~ $(date +%d-%m-%Y)" --textbox /home/ego/Documents/Scripts/Fichier.txt 500 400

kdialog n'affiche rien du tout, je reçois un mail dans /var/spool/mail/ dans lequel un bref descriptif de l'exécution des scripts s'affiche, le tout est conclu par ceci :


kdialog: cannot connect to X server

J'ai vu que le pb était abordé, en consultant google, mais ce qui est bizarre, c'est que si j'isole cette ligne dans un script, hé bien ça marche, la notif apparait bien.

Que faire pour se sortir de là ?

'erci ;)

pc54g2
28/03/2008, 16h38
J'ai essayé cette astuce qui consiste à ajouter ces lignes dans le script appelé par Cron


export DISPLAY="localhost:0.0"
export XAUTHORITY="~user/.Xauthority"
kdialog blahblahblah...

et même


#!/bin/sh
user=`w |egrep ':0(.0|)\W' |awk '{print $1}'`
userhome=`grep "^$user:" /etc/passwd | cut -d':' -f 6`
export DISPLAY="localhost:0.0"
export XAUTHORITY="$userhome/.Xauthority"
kdialog blahblahblah...

toujours le même message. Pire encore, avec kwrite chemin_du_Fichier.txt tout court à la place de kdialog, voici le mail :


/home/ego/Desktop/kdialog.sh: line 8: kwrite: command not found

personne n'aurait une piste supplémentaire pour être notifié (de préférence pas dans la Konsole) après l'exécution d'un script via Cron (PS : c'est en user simple que j'ai rempli la table cron, pas en root)

pc54g2
29/03/2008, 00h18
Bon, à priori, solution simple qui semble marcher même après reboot sur un script test tjs lancé par Cron


kdialog --display :0 --title "Titre ~ $(date +%d-%m-%Y)" --textbox /home/ego/Documents/Scripts/Fichier.txt 500 400

:)

edition > qques commentaires sur le forum anglophone http://forums.opensuse.org/archives/sf-arc...t-x-server.html (http://forums.opensuse.org/archives/sf-archives/programming-scripting/345519-cron-kdialog-cannot-connect-x-server.html)
où j'avais également posté le sujet