Planifier
De Diablotins.org.
| Planifier les tâches administratives... et les autres.
|
| ||
| Pour administrer vos machines, vous allez devoir planifier certaines tâches essentielles: mises à jours, sauvegardes, nettoyages etc. |
Sommaire |
Cron
Ce service consulte régulièrement un planning décrit sous forme de tableau, appelé crontab(5), pour déterminer qui doit exécuter quelle tâche et à quel moment.
Crontab système
Elle est placée dans /etc/crontab.
Cinq colonnes décrivent une échelle de temps:
| Minutes | Heures | Jour | Mois | Jour semaine |
|---|---|---|---|---|
| intervalle | intervalle | intervalle | intervalle | intervalle |
Sous chaque colonne, précisez une plage, par valeur unique ou une fréquence:
x valeur unique: x1 x1,x2,x3 liste, valeurs x1, x2 et x3 x1-x10 intervalle de x1 à x10 inclus /x Fréquence, tous les x. * tous
Les intervalles sont:
| Minutes | Heures | Jour | Mois | Jour semaine |
|---|---|---|---|---|
| 0-59 | 0-23 | 1-31 | 1-12 | 0-7 |
| 0-59 | 0-23 | 1-31 | 1-12 | Sun-Sat |
La fin de la ligne est exécutée tel quel par le shell.
Crontabs privées
Elles sont identiques à la précédente, hormis l'absence de la colonne utilisateur.
Pour activer des tâches pour un utilisateur en particulier, décrivez un planning, par exemple, un fichier crontab situé dans l'espace utilisateur.
Intégrez cette table à cron, à l'aide de la commande crontab(1):
crontab ~/crontab
ou
crontab -u david /usr/home/david/crontab
Vérifiez:
crontab -u david -l
Periodic
Sous FreeBSD, certaines tâches sont déjà configurées dans periodic(8) et classées par fréquence.
Activez le script periodic dans /etc/crontab:
1 19 * * * root periodic daily 15 19 * * 6 root periodic weekly 30 19 1 * * root periodic monthly
- tous les jours à 19h01, les scripts «daily» seront consultés.
- tous les samedis, à 19h15, les scripts «weekly» seront consultés.
- tous les premiers jours du mois, à 19h30, les scripts «monthly» seront consultés.
Ces scripts sont activés ou désactivés par défaut dans /etc/defaults/periodic.conf. Pour modifier cette configuration, ajoutez des entrées dans /etc/periodic.conf:
daily_clean_tmps_enable="YES" daily_clean_msgs_enable="YES" daily_clean_preserve_enable="YES"
Exemple
Devinez le fonctionnement de ce script, placé dans l'espace d'un utilisateur nommé «Charles»:
- /usr/home/Charles/crontab
5 18 18 6 * IciLondres.sh
Activez:
crontab -u Charles ~/crontab
Et ce script, 'IciLondres.sh':
#!/bin/sh cat /usr/home/Charles/ATousLesFrançais.txt

