URL: https://linuxfr.org/forums/programmation-shell/posts/script-shell-qui-ne-fonctionne-pas-a-partir-de-crontab Title: script shell qui ne fonctionne pas à partir de crontab Authors: mika5083 Date: 2014年10月01日T14:20:13+02:00 License: CC By-SA Tags: Score: 0 Bonjour, Voici un script qui fonctionne très bien en commande mais pas lorsqu'il est lancé du cron. Le script teste simplement le service squid et le redémarre en cas de crash en envoyant une alerte mail. Le problème est que quand il est lancé par cron il détecte tout le temps qu'il est mort, en gros il sait pas faire le "if [ $var = '']", mais en le lançant en direct avec "./check_squid.sh" ça fonctionne. ---------- Voici le code --------------------- ```sh #!/bin/sh var=`pidof squid` echo "**********************">> log_chksquid date>> log_chksquid echo PID Squid : pidof squid>> log_chksquid echo $var>> log_chksquid if [ -z $var ]; then echo "Squid est mort">> log_chksquid service squid start sleep 30 service squid status | mail -s "Attention le Squid vient d'être redémarré" monmail@domaine.com echo "Le Squid a ete relance">> log_chksquid else echo "Le squid fonctionne correctement">> log_chksquid fi ``` ---------- et le cron (toute les 5 min) ---------- ```sh */5 * * * * /root/check_squid.sh 1>/dev/null 2>/dev/null ``` ---------- et les droits du fichier ------------ ```sh -rwxr-xr-x 1 root root 1050 oct 1 13:26 check_squid.sh ``` Merci pour votre aide.

AltStyle によって変換されたページ (->オリジナル) /