Commande ntpdate non trouvée [uniquement lors de l'utilisation avec cron]

2

J'ai une machine Linux avec ntpdate installée et cela fonctionne quand je l'exécute à partir de mon terminal ssh ou d'un script shell manuellement.

Cependant, quand j'ajoute le script shell à crontab, j'obtiens l'erreur

ntpdate: commande introuvable

! / bin / bash

NTPSERVER = 192.168.1.192
LOGPATH = "/ home / test /" ntpdate -q $ NTPSERVER & gt; $ LOGPATH / tmp.txt
RETVAL = $?

si [$ RETVAL -ne 0]; puis
echo "Echec impossible d'interroger le serveur NTP:" & gt; & gt; $ LOGPATH / ntpdebug.txt
date & gt; & gt; $ LOGPATH / ntpdebug.txt
exit $ RETVAL
Fi

echo "Heure locale:" & gt; & gt; $ LOGPATH / ntpdebug.txt date & gt; & gt; $ LOGPATH / ntpdebug.txt cat $ LOGPATH / tmp.txt & gt; & gt; $ LOGPATH / ntpdebug.txt

ntpdate $ NTPSERVER
RETVAL1 = $?

if [$ RETVAL1 -ne 0]; puis
echo "Echec de la connexion au serveur NTP impossible:" & gt; & gt; $ LOGPATH / ntpdebug.txt
date & gt; & gt; $ LOGPATH / ntpdebug.txt
exit $ RETVAL1
Fi

echo "Synchronisé" & gt; & gt; $ LOGPATH / ntpdebug.txt

Arun
la source

Réponses:

3

Utilisez le chemin complet!

/usr/sbin/ntpdate $NTPSERVER

cron n'inclut aucun ~/.bashrc, ~/.zshrc, etc., donc le $PATH peut-être non réglé.

uzsolt
la source