GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Le script shell n'est pas exécuté après l'avoir ajouté en tant que tâche Crontab ?

J'ai ajouté le travail crontab suivant :

sudo crontab -e

58 * * * * ubuntu /home/ubuntu/backup/mysqlbackup.sh >/home/ubuntu/backup/log/backup.log

J'ai essayé les utilisateurs root et Ubuntu.

Lorsque j'exécute la commande :

sudo crontab -l

Et quand je cours :

systemctl status cron

Mais mysqlbackup.sh n'est pas exécuté. Avez-vous une idée du problème ou comment puis-je diagnostiquer ce qui ne va pas ?

Notez que je n'ai ajouté que quelques minutes pour tester le script

Réponse acceptée :

58 * * * * ubuntu /home/ubuntu/backup/mysqlbackup.sh >/home/ubuntu/backup/log/backup.log

Ce format est incorrect.

Le format est décrit dans le fichier crontab :

  # m h  dom mon dow   command

ubuntu n'est pas une commande. Supprimez-le, de sorte que la ligne indique :

  58 * * * *  /home/ubuntu/backup/mysqlbackup.sh >/home/ubuntu/backup/log/backup.log

Crontab à l'échelle du système, spécifié dans /etc/crontab a le champ utilisateur :

These files also have username fields,
# that none of the other crontabs do.
[...]
# m h dom mon dow user  command

Ubuntu
  1. Expiration du délai dans un script shell ?

  2. Cron Job pour vérifier si le script Php est en cours d'exécution, sinon, exécutez-le ?

  3. Script Shell :Condition "si le fichier n'est pas utilisé" ?

  4. Comment exécuter un script shell en arrière-plan ?

  5. Ajouter des utilisateurs aux sudoers via un script shell

Comment écrire un script shell dans Ubuntu

Le script Cron ne s'exécute pas comme prévu à partir de crontab - Dépannage

Shell Script, lu sur la même ligne après avoir renvoyé un message

Commande Linux pour vérifier si un script shell est en cours d'exécution ou non

Exécuter un script shell tous les jours à une heure précise

Rechercher si le fichier existe ou non dans HDFS à l'aide d'un script shell