#1 Le 28/07/2009, à 19:30
- alteo_gange
[résolu] crontab : rien de rien
Bonjour à tous.
Je souhaite exécuter un script périodiquement (toutes les minutes).
Pour tester crontab j'ai choisi de créer un script bash tout simple :
#!/bin/bash
xmessage -center "TESSSSSSSSSSSSSSSSSSTTTTTTTTTTTTT55"
J'ai bien les droits d'écriture et il s'exécute bien dans un terminal :
id@ubuntu:~$ ll /usr/local/bin/test55.sh
-rwxr-xr-x 1 root root 67 2009-07-28 18:55 /usr/local/bin/test55.sh
J'ai modifié le fichier de configuration de crontab:
id@ubuntu:~$ crontab -e
# m h dom mon dow command
*/1 * * * * test55.sh
Toutes les minutes (à la seconde près) mon disque dur gratte comme quand j'appelle xmessage depuis un terminal, sauf que là, rien ne s'affiche.
Je pourrais installer fcron, mais aptitude veut me supprimer le méta-paquet kubuntu-desktop.
Qu'est-ce qui cloche ?
Dernière modification par alteo_gange (Le 28/07/2009, à 21:27)
Hors ligne
#2 Le 28/07/2009, à 19:38
- Dunatotatos
Re : [résolu] crontab : rien de rien
Il me semble que lors de l'appel du script, celui-ci ne s'exécute pas dans une console ouverte, mais dans une console cachée. Le message est donc bien affiché, mais pas visible par toi
#3 Le 28/07/2009, à 19:46
- mikedafunk
Re : [résolu] crontab : rien de rien
Salut
Au lieu d'afficher un texte, lance une application pour tester ce que dit Dunatotatos (gedit par exemple)
Sinon moi je mettrais /usr/local/bin/test55.sh dans le fichier crontab...
A+
Lubuntu 22.04 sur Lenovo AX81 et pas mal d'Amiga
Mon blog : http://mikedafunk.over-blog.org
Hors ligne
#4 Le 28/07/2009, à 20:18
- Dunatotatos
Re : [résolu] crontab : rien de rien
Huhu, très bonne deuxième remarque mikedafunk
Je n'avais pas vu ça.
#5 Le 28/07/2009, à 20:43
- kyncani
Re : [résolu] crontab : rien de rien
Une tâche cron ne peut pas savoir sur quel écran afficher un message. Il faut donc le lui spécifier.
Quelque chose comme ça devrait un peu mieux fonctionner sur un poste mono-utilisateur :
* * * * * env DISPLAY=:0.0 /ton/script/de/test.sh
Hors ligne
#6 Le 28/07/2009, à 21:27
- alteo_gange
Re : [résolu] crontab : rien de rien
Une tâche cron ne peut pas savoir sur quel écran afficher un message. Il faut donc le lui spécifier.
Quelque chose comme ça devrait un peu mieux fonctionner sur un poste mono-utilisateur :* * * * * env DISPLAY=:0.0 /ton/script/de/test.sh
Merci ça marche.
Voilà ce que contient mon /var/spool/cron/crontabs/identifiant :
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow command
*/1 * * * * DISPLAY=:0 test57.sh
Comme ça, plus besoin de marquer les chemins absolus. J'avais déjà fait des tests avec les chemins absolus, mais sans succès. J'avais aussi utilisé DISPLAY=:0, sans plus de réussite. Le problème était que je n'avais pas essayé les 2 en même temps !
Hors ligne