Pour créer une tache panifiée sous Linux ou FreeBSD, je ne vais pas vous refaire la documentation disponible pour Linux ou FreeBSD que vous retrouverez avec la commande man 5 crontab
ou aux liens suivants :
https://man.freebsd.org/cgi/man.cgi?crontab%285%29
https://linux.die.net/man/5/crontab
Le fichier par défaut est : /etc/crontab.
Sous FreeBSD, cron va aussi chercher dans les répertoires /etc/cron.d et /usr/local/etc/cron.d des taches planifiées. Les fonctions système sont exécute par periodic
lui même lancé par cron.
Sous Linux, il y aura des sous répertoires /etc/cron.daily, /etc/cron.weelky et /etc/cron.monthly qui contiennent des scripts à exécuter de façon journalière, hebdomadaire ou mensuelle.
Dans tous les cas, les jours et heures d’exécution sont définis dans le fichier /etc/crontab.
Pour créer une tache planifiée pour un utilisateur en particulier: crontab -e
ou crontab -e -u <username>
Pour lister les tache planifiées d'un utilisateur : crontab -l
ou crontab -l -u <username>
Souvent cela est le cas pour les applications qui s’exécutent avec un utilisateur particulier ou pour les applications Web dont les taches planifiées serons dans l'utilisateur www-data ou www.
Pour tester si le script se lance bien et afin de recréer les conditions :
env -i SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin HOME=/home/dru LOGNAME=dru /usr/home/dru/bin/mycustomscript.sh