Aujourd’hui, je vais vous expliquer comment mettre en place des tâches planifiées via l’outil crontab.
Afin d’éditez vos tâches planifiées, veuillez saisir la commande crontab -e
Ensuite vos cron seront à configurer en suivant le modèle ci-dessous :
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user command to be executed
Par exemple, si on sait la ligne 30 22 * * * /home/will/db_backup.sh, cela signifie que le script /home/will/db_backup.sh s’exécutera tous les jours à 22h30.
Mais j’aurai pu saisir 30 22 * * 6 /home/will/db_backup.sh pour une sauvegarde tous les samedis, toujours à 22h30.
Ou bien 30 22 1 * * /home/will/db_backup.sh pour une sauvegarde tous les 1er de chaque mois, toujours au même horaire…
Petite astuce troubleshooting :
Si vous voulez savoir quel utilisateur a mis en place des crons ou non, et lesquelles, je vous invite à utiliser la commande for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done. Bien sûr, il faut l’exécuter en tant que root.