====== Crontab ======
C'est un outil puissant et standard sous linux, qui permet de planifier des opération récurrente (backup, mises à jours, notifications, script en tout genre...)
En fonction des droits que vous nécessite votre script vous pourrez utiliser la crontab de votre utilisateur, du root, ou d'un autre utilisateur ex ''www-data''
Pour éditer la crontab de l'utilisateur courant ''-e'' pour edit
crontab -e
Pour éditer la crontab root
sudo crontab -e
Pour éditer la crontab www-data
sudo crontab -e -u www-data
----
===== Syntax Cron =====
Une instruction crontab se construit comme suis
* * * * * command
La commande peut être ce que vous voulez, tant que c'est appelé en bash.
Les 5 petites étoiles représente la périodicité.
^ 1er * ^ 2eme * ^ 3eme * ^ 4eme * ^ 5eme * ^
| Minutes (0-59) | Heures (0-23) | Jours (1-31) | Mois (1-12)| Jours de la semaine (0-6) |
On peut ainsi précisé quels jours, à quels heure etc...
Exemple :
0 20 * * 1 /backup/backup.sh
Ici on peut lire que crontab vas lancer la commande :
À 20h et 0 minutes, "tout les jours", "tout les mois", si c'est un Lundi.
----
===== Help =====
Pour vous aider a construire vous pouvez utiliser des générateur de crontab :
* http://www.crontabgenerator.com/
* https://crontab.guru/
* https://blog.shevarezo.fr/post/2018/08/28/gerer-taches-cron-interface-graphique-crontab-ui