[Unix Solaris 5.8] - crontab prblm PATH
david
-
Jalal -
Jalal -
Bonjour,
J'ai un sacré problème avec la crontab.
J'ai configuré l'exécution d'un script dans la crontab de l'utilisateur root et j'ai un mail qui me prévient qu'il ne retrouve pas la commande utilisée dans ce script.
Or cette commande se trouve dans le PATH du root, par contre j'ai l'impression que le PATH est différent avec crontab car j'ai placé un echo $PATH dans mon script et le PATH comprend seulement deux chemins alors que celui que j'ai configuré dans le PATH du root est beaucoup plus complet et me permet de lancer mon script à la main.
Merci d'avance pour vos réponses.
J'ai un sacré problème avec la crontab.
J'ai configuré l'exécution d'un script dans la crontab de l'utilisateur root et j'ai un mail qui me prévient qu'il ne retrouve pas la commande utilisée dans ce script.
Or cette commande se trouve dans le PATH du root, par contre j'ai l'impression que le PATH est différent avec crontab car j'ai placé un echo $PATH dans mon script et le PATH comprend seulement deux chemins alors que celui que j'ai configuré dans le PATH du root est beaucoup plus complet et me permet de lancer mon script à la main.
Merci d'avance pour vos réponses.
A voir également:
- [Unix Solaris 5.8] - crontab prblm PATH
- Path of exile 2 - Guide
- Ipconfig unix ✓ - Forum Linux / Unix
- Fichier executable unix ✓ - Forum MacOS
- Crontab toutes les minutes ✓ - Forum Shell
- Crontab toutes les 2 heures ✓ - Forum Shell
17 réponses
Salut,
Affiche-nous la ligne de ton crontab s'il te plaît, merci. ;-)
Ta ligne comprend-t-elle le chemin complet vers ton programme ?
As-tu exporté le "PATH" de root ?
Affiche-nous la ligne de ton crontab s'il te plaît, merci. ;-)
Ta ligne comprend-t-elle le chemin complet vers ton programme ?
As-tu exporté le "PATH" de root ?
Bonjour,
j'ai le meme probleme et voici mon fichier /var/spool/cron/crontabs/root.
en fait je voudrais exécuter le fichier "fektest.sh" qui se trouve dans le repertoire racine (/) de mon DD
10 3 * * * /usr/sbin/logadm
15 3 * * 0 /usr/lib/fs/nfs/nfsfind
1 2 * * * [ -x /usr/sbin/rtc ] && /usr/sbin/rtc -c > /dev/null 2>&1
30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
50 8 * * * ./fektest.sh
#10 3 * * * /usr/lib/krb5/kprop_script ___slave_kdcs___
~
Merci
Tilk
j'ai le meme probleme et voici mon fichier /var/spool/cron/crontabs/root.
en fait je voudrais exécuter le fichier "fektest.sh" qui se trouve dans le repertoire racine (/) de mon DD
10 3 * * * /usr/sbin/logadm
15 3 * * 0 /usr/lib/fs/nfs/nfsfind
1 2 * * * [ -x /usr/sbin/rtc ] && /usr/sbin/rtc -c > /dev/null 2>&1
30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
50 8 * * * ./fektest.sh
#10 3 * * * /usr/lib/krb5/kprop_script ___slave_kdcs___
~
Merci
Tilk
Salut,
en fait je voudrais exécuter le fichier "fektest.sh" qui se trouve dans le repertoire racine (/) de mon DD
50 8 * * * ./fektest.sh
ton cas ce n'est pas pareil (en fin je suppose vu que david n'a rien affiché)
dans ton crontab tu veux lancer la commande ./fektest.sh mais ./ ce n'est pas le répertoire racine mais le répertoire courant
le répertoire racine est / donc tu dois écrire plutôt
en fait je voudrais exécuter le fichier "fektest.sh" qui se trouve dans le repertoire racine (/) de mon DD
50 8 * * * ./fektest.sh
ton cas ce n'est pas pareil (en fin je suppose vu que david n'a rien affiché)
dans ton crontab tu veux lancer la commande ./fektest.sh mais ./ ce n'est pas le répertoire racine mais le répertoire courant
le répertoire racine est / donc tu dois écrire plutôt
50 8 * * * /fektest.sh
Slt Lami20j,
je viens de metre /fektest.sh com vous avez dit au lieux de ./fektest.sh
mais ca ne marche toujours pas !
ne faudrait il pas relancer le service cron ? mais je n sais pas comment le faire !
Merci Tilk
je viens de metre /fektest.sh com vous avez dit au lieux de ./fektest.sh
mais ca ne marche toujours pas !
ne faudrait il pas relancer le service cron ? mais je n sais pas comment le faire !
Merci Tilk
ne faudrait il pas relancer le service cron ? mais je n sais pas comment le faire !
Normalement il ne faut pas le relancer mais tu peux toujours essayer
affiche
Normalement il ne faut pas le relancer mais tu peux toujours essayer
affiche
find / -name fektest.sh find /etc -name '*cron*'
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Voilà le resultat des deux commandes que vous avez demandé
bash-2.05# find / -name fektest.sh
/fektest.sh
bash-2.05# find /etc -name '*cron*'
/etc/cron
/etc/cron.d
/etc/cron.d/cron.deny
/etc/default/cron
/etc/init.d/cron
/etc/rc0.d/K40cron
/etc/rc1.d/K40cron
/etc/rc2.d/S75cron
/etc/rcS.d/K40cron
/etc/webmin/cluster-cron
/etc/webmin/cron
bash-2.05#
bash-2.05# find / -name fektest.sh
/fektest.sh
bash-2.05# find /etc -name '*cron*'
/etc/cron
/etc/cron.d
/etc/cron.d/cron.deny
/etc/default/cron
/etc/init.d/cron
/etc/rc0.d/K40cron
/etc/rc1.d/K40cron
/etc/rc2.d/S75cron
/etc/rcS.d/K40cron
/etc/webmin/cluster-cron
/etc/webmin/cron
bash-2.05#
bash-2.05# ls -l fektest.sh
-rwxr-xr-x 1 root other 7 May 11 08:38 fektest.sh
bash-2.05#
par ailleurs, le service cron est bien demarré
Tilk
-rwxr-xr-x 1 root other 7 May 11 08:38 fektest.sh
bash-2.05#
par ailleurs, le service cron est bien demarré
Tilk
c'est juste une commande et ca marche tres bien manuellement quand je fais ./fektest.sh à l'invite
le fichier fektest.sh ne contien qu'une seule ligne
reboot
en fait je voudrais pouvoir redemarer mon serveur à des moment precis
le fichier fektest.sh ne contien qu'une seule ligne
reboot
en fait je voudrais pouvoir redemarer mon serveur à des moment precis
essaie avec
50 8 * * * /sbin/rebootaffiche le résultat de la commande
crontab -l -u rootchez moi par exemple j'ai
59 23 * * * /sbin/init 0et ça fonctionne sans problèmes
Désolé mais ca ne marche tjrs pas
j'ai mis directement "50 8 * * * /sbin/reboot" et modifier l'heure par rapport à l'heure systeme pour voir l'exécution mais rien
voici le resultat de la commande demandée
bash-2.05# crontab -l -u root
crontab: illegal option -- u
crontab: proper usage is:
crontab [file | -e | -l | -r ] [user]
bash-2.05#
j'ai mis directement "50 8 * * * /sbin/reboot" et modifier l'heure par rapport à l'heure systeme pour voir l'exécution mais rien
voici le resultat de la commande demandée
bash-2.05# crontab -l -u root
crontab: illegal option -- u
crontab: proper usage is:
crontab [file | -e | -l | -r ] [user]
bash-2.05#
alors affiche
ajoute une commande de genre
ensuite en root tape
si tu vois des lignes comme ça
alors ton cron fonctionne
crontab -l roottu peux tester comme ça
ajoute une commande de genre
*/1 * * * * echo salut >> /dev/pts/1
ensuite en root tape
tail -f /var/log/syslog
si tu vois des lignes comme ça
May 11 12:29:02 debian /USR/SBIN/CRON[12821]: (root) CMD (echo salut >> /dev/pts/1)
alors ton cron fonctionne
Slt,
Oui j'ai éffectivement le comporttement que vous decrivez là
donc mon cron fonctionne !
mais pourkoi ma commande ne marche pas ?
Oui j'ai éffectivement le comporttement que vous decrivez là
donc mon cron fonctionne !
mais pourkoi ma commande ne marche pas ?
Ne jamais modifier le fichier crontab utilisateur directement. En effet, il ne faut pas faire :
vi /var/spool/cron/crontabs/root
=> Cette modification n'est pas effective...
Solution: (il faut passer par crontab -e pour éditer la crontab)
export EDITOR=vi
crontab -e
Faire les modifications et enregistrer.
Voili voilou..
vi /var/spool/cron/crontabs/root
=> Cette modification n'est pas effective...
Solution: (il faut passer par crontab -e pour éditer la crontab)
export EDITOR=vi
crontab -e
Faire les modifications et enregistrer.
Voili voilou..