Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Crontab : lancer une application graphique
Envoyé par: YuGiOhJCJ

Bonjour,
voici la ligne dans mon crontab :
# Run each minute
*/1 * * * * /home/yugiohjcj/Documents/Scripts/GeekServices/VerifTemps >> /tmp/VerifTemps.log
Chaque minute, le script BASH ci-dessous est lancé :
#!/bin/bash
echo "Début du script VerifTemps"
username=$("users")
sudo -u $username /home/yugiohjcj/Documents/Scripts/GeekServices/VerifTemps.php $username
echo "Fin du script VerifTemps"
Ce script BASH lance une application graphique développée en JAVA.
Voici le LOG :
Début du script VerifTemps
Fin du script VerifTemps
Début du script VerifTemps
Fin du script VerifTemps
Début du script VerifTemps
Fin du script VerifTemps

Le problème, c'est que mon application graphique JAVA n'apparait pas...Pourtant, le script BASH est bien lancé par crontab.

Pourquoi la fenêtre de mon application Java ne s'affiche pas?
Merci.

---

[yugiohjcj.cf]

Poste le Thursday 5 July 2007 22:03:33
Répondre     Citer    
Re: Crontab : lancer une application graphique
Envoyé par: oudoubah

Parce qu'il faut lui dire où l'afficher : --display :0.0 (premier serveur X sur localhost) et que l'utilisateur connecté fasse un xhost + (c'est un peu trop permissif, mais tu peux être plus précis par la suite).

Mais puisqu'il faut un utilisateur connecté sous X, il est beaucoup plus propre de charger le script vi xinitrc.

Mais pourquoi utiliser une application X en crontab????

Est-ce que quand personne ne sera connecté quelqu'un regardera ce qui est affiché?

Tu as lu les docs. Tu es devenu un informaticien. Que tu le veuilles
ou non. Lire la doc, c'est le Premier et Unique Commandement de
l'informaticien.
-+- TP in: Guide du Linuxien pervers - "L'évangile selon St Thomas"

Poste le Friday 6 July 2007 12:52:13
Répondre     Citer    
Re: Crontab : lancer une application graphique
Envoyé par: tuxce

bonjour,
il faudrait ajouter la variable DISPLAY à ton script:
export DISPLAY=:0.0

Poste le Friday 6 July 2007 12:54:12
Répondre     Citer    
Re: Crontab : lancer une application graphique
Envoyé par: YuGiOhJCJ

Citation
oudoubah
Parce qu'il faut lui dire où l'afficher :
--display :0.0 (premier serveur X sur localhost)
et que l'utilisateur connecté fasse un xhost +
(c'est un peu trop permissif, mais tu peux être
plus précis par la suite).
Je ne comprends pas.
L'argument "--display :0.0" est celui de quelle commande?

Citation
oudoubah
Mais puisqu'il faut un utilisateur connecté sous
X, il est beaucoup plus propre de charger le
script vi xinitrc.
Oui mais le script doit s'exectuer souvent (et pas une seule fois à l'ouverture de la session) car il vérifie le temps restant de connexion d'un utilisateur. Et celui-ci peut changer à tout moment.

Citation
oudoubah
Mais pourquoi utiliser une application X en
crontab????
Pour que l'utiliateur voit apparaitre une belle fenêtre explicative s'il est temps de la lancer.

Citation
oudoubah
Est-ce que quand personne ne sera connecté
quelqu'un regardera ce qui est affiché?
Nen et d'ailleur la fenêtre ne s'affiche que quand un utilisateur est connecté.
> A l'heure actuelle, il s'est formé une sorte
"d'aristocratie" de Linux qui essaye de maintenir
ses connaissances pour elles et d'en priver les
autres en innondant chaque débutant de
documentations
-+- EF in Guide du linuxien pervers : "Comprenne
qui pourra..." -+-


---

[yugiohjcj.cf]

Poste le Friday 6 July 2007 18:31:21
Répondre     Citer    
Re: Crontab : lancer une application graphique
Envoyé par: YuGiOhJCJ

J'ai lancé la commande xhost sur chaque utilisateurs même le root mais ça ne veut pas se lancer.
En fait je vais probablement utiliser le script de démarrage de KDE :
/opt/kde/bin/startkde
Il suffit que j'améliore mon application pour qu'elle tourne continuellement comme un deamon et qu'elle execute la tâche chaque minute mais sans passer par crontab.
Dommage de ne pas se servir de l'existant...

---

[yugiohjcj.cf]

Poste le Monday 9 July 2007 11:17:57
Répondre     Citer    
Re: Crontab : lancer une application graphique
Envoyé par: tuxce

tu as essayé le export DISPLAY=:0.0?

Poste le Monday 9 July 2007 15:02:53
Répondre     Citer    
Re: Crontab : lancer une application graphique
Envoyé par: YuGiOhJCJ

Oui je viens de l'essayer ainsi :
#!/bin/bash
echo "Début du script VerifTemps"
username=$("users")
export DISPLAY=:0.0
sudo -u $username /home/yugiohjcj/Documents/Scripts/GeekServices/VerifTemps.php $username
echo "Fin du script VerifTemps"
Le problème reste le même d'après le log:
Début du script VerifTemps
Fin du script VerifTemps
Début du script VerifTemps
Fin du script VerifTemps
Aucune fenêtre ne s'affiche... Mais aucune erreur.

---

[yugiohjcj.cf]

Poste le Tuesday 10 July 2007 22:27:49
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Crontab : lancer une application graphique
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons