Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
cron [Le 09/04/2022, 23:34] 84.98.200.57 [Comment fonctionne Cron ?] |
cron [Le 23/08/2022, 15:47] Amiralgaby correction d'orthographe/grammaire - (détecté via wiki-corrector) |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
====== Programmer des tâches avec CRON ====== | ====== Programmer des tâches avec CRON ====== | ||
- | |||
- | |||
- | |||
- | |||
===== Qu'est-ce que Cron ? ===== | ===== Qu'est-ce que Cron ? ===== | ||
Ligne 13: | Ligne 9: | ||
Chaque utilisateur a un fichier **crontab**, lui permettant d'indiquer les actions à exécuter.\\ | Chaque utilisateur a un fichier **crontab**, lui permettant d'indiquer les actions à exécuter.\\ | ||
Cron est parfois appelé « planificateur de tâches » ou « gestionnaire de tâches planifiées ». | Cron est parfois appelé « planificateur de tâches » ou « gestionnaire de tâches planifiées ». | ||
- | |||
- | |||
===== Comment fonctionne Cron ? ===== | ===== Comment fonctionne Cron ? ===== | ||
Ligne 125: | Ligne 119: | ||
===== Utilisation des répertoires /etc/cron.hourly, daily, weekly, monthly ===== | ===== Utilisation des répertoires /etc/cron.hourly, daily, weekly, monthly ===== | ||
- | Si vous avez examiné le fichier /etc/crontab de votre système, vous avez remarqué qu'il contient des tâches pour exécuter toutes les heures, jours, semaines, mois les fichiers contenu dans les dossiers /etc/cron.hourly, daily, weekly, monthly. | + | Si vous avez examiné le fichier /etc/crontab de votre système, vous avez remarqué qu'il contient des tâches pour exécuter toutes les heures, jours, semaines, mois les fichiers contenus dans les dossiers /etc/cron.hourly, daily, weekly, monthly. |
Si vous avez besoin qu'un script soit exécuté toutes les heures au niveau du système (par root), il suffit donc de le placer dans le dossier /etc/cron.hourly et de le rendre exécutable. De même s'il s'agit d'une tâche quotidienne (daily), hebdomadaire (weekly) ou mensuelle (monthly). | Si vous avez besoin qu'un script soit exécuté toutes les heures au niveau du système (par root), il suffit donc de le placer dans le dossier /etc/cron.hourly et de le rendre exécutable. De même s'il s'agit d'une tâche quotidienne (daily), hebdomadaire (weekly) ou mensuelle (monthly). | ||
Ligne 144: | Ligne 138: | ||
Remarque : cette commande édite directement le fichier // /var/spool/cron/crontabs/root// | Remarque : cette commande édite directement le fichier // /var/spool/cron/crontabs/root// | ||
- | Une autre façon de créer une tâche planifiée devant être exécutée par root et d'ajouter une entrée au fichier /etc/crontab ou de créer un nouveau fichier dans /etc/cron.d (cf. point précédent) en précisant bien root comme nom d'utilisateur. | + | Une autre façon de créer une tâche planifiée devant être exécutée par root est d'ajouter une entrée au fichier /etc/crontab ou de créer un nouveau fichier dans /etc/cron.d (cf. point précédent) en précisant bien root comme nom d'utilisateur. |
==== Répertoires ==== | ==== Répertoires ==== | ||
Ligne 153: | Ligne 147: | ||
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin | PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin | ||
</code> | </code> | ||
- | Il peut être utile d'identifié le chemin où se trouve votre exécutable, exemple avec python : | + | Il peut être utile d'identifier le chemin où se trouve votre exécutable, exemple avec python : |
<code bash> | <code bash> | ||
which python3 | which python3 | ||
Ligne 200: | Ligne 194: | ||
</code> | </code> | ||
- | et si vous voulez des tâches silencieuses ((https://unix.stackexchange.com/questions/163352/what-does-dev-null-21-mean-in-this-article-of-crontab-basics)), ajouter à la fin de vos ligne CRON <code bash> > /dev/null 2>&1</code> pour rediriger les messages ET les erreurs vers le « trou noir ». | + | et si vous voulez des tâches silencieuses ((https://unix.stackexchange.com/questions/163352/what-does-dev-null-21-mean-in-this-article-of-crontab-basics)), ajouter à la fin de vos lignes CRON <code bash> > /dev/null 2>&1</code> pour rediriger les messages ET les erreurs vers le « trou noir ». |
===== Liens ===== | ===== Liens ===== | ||
* [[https://help.ubuntu.com/community/CronHowto]] (EN) | * [[https://help.ubuntu.com/community/CronHowto]] (EN) |