relecture en cours
This commit is contained in:
parent
a61b37c476
commit
2cd5a2a6f9
74
HowtoCron.md
74
HowtoCron.md
|
@ -1,9 +1,48 @@
|
|||
**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.**
|
||||
---
|
||||
categories: sysadmin web
|
||||
title: Howto Cron
|
||||
...
|
||||
|
||||
Le service **cron** (diminutif de *crontab*, pour **c**h**ron**o **tab**le) est le planificateur de tâches standard sur les systèmes UNIX/Linux. Il permet le déclenchement de commandes à des dates récurrentes (à la minute près).
|
||||
|
||||
## Installation
|
||||
|
||||
En général le paquet **cron** est installé et le service tourne déjà :
|
||||
|
||||
~~~
|
||||
# systemctl status cron
|
||||
● cron.service - Regular background program processing daemon
|
||||
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
|
||||
Active: active (running) since Thu 2017-05-18 14:37:27 CEST; 1 months 0 days ago
|
||||
Docs: man:cron(8)
|
||||
Main PID: 492 (cron)
|
||||
CGroup: /system.slice/cron.service
|
||||
└─492 /usr/sbin/cron -f
|
||||
~~~
|
||||
|
||||
## Configuration
|
||||
|
||||
La configuration se trouve dans le fichier `/etc/crontab` :
|
||||
|
||||
~~~
|
||||
SHELL=/bin/sh
|
||||
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||
|
||||
17 * * * * root cd / && run-parts --report /etc/cron.hourly
|
||||
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
|
||||
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
|
||||
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
|
||||
~~~
|
||||
|
||||
On trouve notamment des dates fixées pour les actions définies dans les répertoires `/etc/cron.{hourly,daily,weekly,monthly}`.
|
||||
|
||||
Nous conseillons de modifier ces horaires fixes, pour éviter des déclenchements simultanés à la même minute sur plusieurs serveurs.
|
||||
|
||||
On peut également modifier certaines options via le fichier `/etc/default/cron`, notamment la journalisation : par défaut `-L 5` enregistrement le démarrage de chaque cron et les éventuelles erreurs, on peut passer à `-L 15` pour avoir un maximum d'informations notamment la date de fin d'une commande.
|
||||
|
||||
|
||||
## Howto Cron
|
||||
## Utilisation
|
||||
|
||||
Le programme cron est le planificateur de tâches standards sur systèmes UNIX.
|
||||
|
||||
### Détection d'erreurs
|
||||
|
||||
|
@ -13,4 +52,31 @@ On peut ajouter la configuration suivante au logiciel log2mail pour détecter d'
|
|||
file = /var/log/cron.log
|
||||
pattern = "Error"
|
||||
mailto = root
|
||||
~~~
|
||||
~~~
|
||||
|
||||
Fichiers
|
||||
répertoire /var/spool/cron/crontabs/
|
||||
|
||||
Syntaxe : minutes heures jours mois jour/semaine commande
|
||||
"*" = toutes les occurrences, "," = liste, "-" = intervalle
|
||||
|
||||
Ex :
|
||||
|
||||
0,15,30,45 * * * * /usr/local/adm/check-nis 1>/dev/null 2>&1
|
||||
00 01 * * * nice -10 find /inf -name core -exec rm -f {} \;
|
||||
10 03 * * 1-6 nice -10 /usr/local/adm/sauvegarde-daily
|
||||
30 05 * * 0 /usr/local/adm/savelog-weekly
|
||||
30 06 1 * * /usr/local/adm/savelog-monthly
|
||||
00 00 1 1 * /usr/local/bin/happy-new-year
|
||||
|
||||
Commande :
|
||||
cron: analyse des fichiers crontabs et exécute les actions
|
||||
crontab -l, crontab -e, crontab -r
|
||||
|
||||
ps auwx | grep cron
|
||||
vim /etc/crontab
|
||||
ls /etc/cron.*
|
||||
/var/spool/cron/crontabs
|
||||
crontab -l / -e
|
||||
@hourly @daily @weekly @monthly
|
||||
man 5 crontab
|
||||
|
|
Loading…
Reference in New Issue