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 crontabs des utilisateurs. La seule différence entre ces deux formats est le sixième champ. Dans le fichier crontab système, le sixième champ est le nom de l'utilisateur sous lequel doit être exécutée la commande. Cela donne la possibilité au fichier crontab système d'exécuter les commandes sous n'importe quel utilisateur. Dans le fichier crontab d'un utilisateur, le sixième champ est la commande a exécuter et toutes les commandes sont exécutées sous l'utilisateur qui a créé le fichier crontab; c'est un aspect sécurité important.
Note : 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). En raison de l'existence du fichier crontab système, 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
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 \, de continuation de lignes.
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.
Important : Vous ne devez pas utiliser la procédure décrite ci-dessous pour éditer/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.
Si vous désirez plus tard effacer votre crontab
utilisateur complètement, utilisez la commande crontab avec
l'option -r
.
Précédent | Sommaire | Suivant |
Démarrer des services | Niveau supérieur | Utilisation du système rc sous FreeBSD |
Ce document, ainsi que d'autres peut être téléchargé sur 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>.