Un des utilitaires les plus importants de FreeBSD est
cron(8). L'utilitaire cron
tourne en
arrière plan et contrôle constamment le fichier
/etc/crontab
. L'utilitaire
cron
consulte également le
répertoire /var/cron/tabs
, à la
recherche de nouveaux fichiers crontab
.
Ces fichiers crontab
conservent les
informations sur les tâches que cron
est censé exécuter à des moments
donnés.
L'utilitaire cron
utilise deux types
différents de fichiers de configuration, le fichier
crontab
système et les
crontab
s des utilisateurs. Ces deux
formats diffèrent à partir du sixième champ. Dans le fichier
crontab
système, cron
exécutera la commande en tant que l'utilisateur indiqué dans le
sixième champ. Dans le fichier crontab
d'un utilisateur, toutes les commandes sont exécutées sous
l'utilisateur qui a créé ce fichier
crontab
, aussi le sixième champ est le
dernier champ; c'est un aspect sécurité important. Le dernier
champ est toujours la commande à exécuter.
Les fichiers crontab
utilisateur
permettent aux utilisateurs de planifier l'exécution de tâches
sans avoir besoin des privilèges du super-utilisateur
root
. Les commandes
contenues dans le fichier crontab
d'un
utilisateur s'exécutent avec les privilèges de l'utilisateur
auquel appartient ce fichier.
Le super-utilisateur root
peut posséder un fichier
crontab
utilisateur comme tout autre
utilisateur. Ce fichier est différent de
/etc/crontab
(le
crontab
système). Etant donné que le
fichier crontab
système invoque les
commandes spécifiées en tant que root
, il n'y a généralement pas
besoin d'un fichier crontab
utilisateur
pour root
.
Examinons le fichier
/etc/crontab
(fichier
crontab
système):
# /etc/crontab - root's crontab for FreeBSD # # $FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $ ## SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log # # #minute heure date mois jour utilisateur commande
# # */5 * * * * root /usr/libexec/atrun
Comme pour la plupart des fichiers de configuration de
FreeBSD, le caractère | |
Tout d'abord, les variables d'environnement doivent
être définies. Le caractère égal
( | |
Cette ligne définie un total de sept champs.
Sont listés ici les valeurs | |
Cette dernière ligne définie les valeurs
discutées ci-dessus. Nous avons ici
N'importe quel nombre d'indicateur peut être
passé à ces commandes; cependant, les
commandes qui s'étendent sur de multiples lignes
doivent être “cassées” avec le
caractère, contre-oblique |
Ceci est la configuration de base pour chaque fichier
crontab
, bien qu'il y ait une
différence dans celui présenté ici. Le
sixième champ, où est précisé le nom
d'utilisateur, n'existe que dans le fichier système
/etc/crontab
. Ce champ devrait être
omis pour les fichiers crontab
d'utilisateur.
Ne pas utiliser la procédure
décrite ci-dessous pour éditer et installer le
fichier crontab
système. Utilisez
directement votre éditeur: l'utilitaire
cron
remarquera le changement au niveau de ce
fichier et utilisera immédiatement la nouvelle version.
Consultez cette
entrée de la FAQ pour plus d'information.
Pour installer un fichier crontab
utilisateur fraîchement rédigé, tout d'abord
utilisez votre éditeur favori pour créer un
fichier dans le bon format, ensuite utilisez
l'utilitaire crontab
. L'usage le plus
typique est:
#
crontab fichier-crontab
Dans cet exemple, fichier-crontab
est
le nom d'un fichier crontab
qui a
été précédemment
créé.
Il existe également une option pour afficher les
fichiers crontab
installés, passez
simplement le paramètre -l
à
crontab
et lisez ce qui est
affiché.
Pour les utilisateurs désirant créer leur
fichier crontab à partir de zéro, sans utiliser
de modèle, l'option crontab -e
est
disponible. Cela invoquera l'éditeur par défaut
avec un fichier vide. Quand le fichier est sauvegardé,
il sera automatiquement installé par la commande
crontab
.
Afin d'effacer le fichier
crontab
utilisateur complètement,
utiliser la commande crontab
avec l'option
-r
.
Ce document, ainsi que d'autres peut être téléchargé sur ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Pour toutes questions à propos de FreeBSD, lisez la
documentation avant de contacter
<questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez
<doc@FreeBSD.org>.