linux:fundamentals:cron

Rappel sur le cron

La fonctionnalité cron a été développée afin de pouvoir automatiser certaines tâches. En 2020, il est de bon usage d'abandonner les cron afin d'utiliser les timers, cependant, beaucoup de sysadmin restent attachés au système cron.

Les tâches planifiées peuvent être lancées en tant qu'utilisateur standard. Nous gérons la plupart des tâche cron via la commande crontab. D'autres scripts peuvent être directement déployés dans certains dossiers “spéciaux”

crontab -e

Nous permet d'éditer les tâches cron pour l'user courant

crontab -l

Nous permet de lister les tâches cron pour l'utilisateur courant

crontab -l -u www-data

Nous permet de lister les tâches cron pour l'utilisateur www-data. Nous pouvons également appliquer le paramètre -u pour éditer la liste des cron.

Si vous souhaitez déployez un script une fois/jour sans importance d'heure, alors nous pouvons passer par certains dossiers dédiés.

/etc/
     |----- cron.d/
     |----- cron.hourly/
     |----- cron.daily/
     |----- cron.monthly/
     |----- cron.weekly/
     |----- crontab

Par exemple, comme vous vous en doutez, si vous souhaitez avoir un script qui est exécutée toutes les heures, alors vous pouvez le déclarer dans ce dossier.

Une fonctionnalité de cron très pratique est l'envoie de mail du résultat du cron. Si vous définissez la variable MAILTO, alors le mail sera envoyé à cet utilisateur/son alias

Le site crontab.guru nous permet de voir visuellement à quel moment une tâche va se déclencher sans avoir à réfléchir. Toutes les règles cron pour tous les utilisateurs sont accessibles dans le dossier /var/spool/cron

  • linux/fundamentals/cron.txt
  • Dernière modification: 2020/10/11 20:25
  • par root