CRONTAB(1)

NOM
crontab - Maintenir les fichiers crontab pour les utilisateurs individuels (Vixie cron)

SYNOPSIS
crontab [ -u utilisateur ] fichier
crontab [ -u utilisateur ] [ -i ] { -e | -l | -r }

DESCRIPTION
crontab est le programme utilisé pour installer, désinstaller ou afficher le contenu des tables permettant de piloter le fonctionnement du démon cron(8) de Vixie Cron. Chaque utilisateur dispose de sa propre crontab, et bien que celles-ci se trouvent dans /var/spool/cron/crontabs, elles ne sont pas conçues pour être modifiées directement.

Si le fichier /etc/cron.allow existe, alors vous devez être mentionné (un utilisateur par ligne) dans celui-ci pour pouvoir utiliser cette commande. S'il n'existe pas, mais que le fichier /etc/cron.deny existe, alors vous ne devez pas être mentionné dans celui-ci si vous désirez utiliser cette commande.

Si aucun de ces deux fichiers n'existe, alors, selon la configuration du site, soit seul le superutilisateur a le droit d'utiliser cette commande, soit tous les utilisateurs le peuvent.

Si les deux fichiers existent, alors /etc/cron.allow sera prioritaire. Cela signifie que /etc/cron.deny n'est pas pris en compte et votre identifiant doit être dans /etc/cron.allow pour pouvoir utiliser crontab.

Indépendamment de l'existence d'un de ces fichiers, le superutilisateur est toujours autorisé à avoir une crontab. Sur les systèmes Debian standards, tous les utilisateurs peuvent l'utiliser.

Si l'option -u est indiquée, elle permet de préciser le nom de l'utilisateur dont la crontab doit être utilisée (pour l'affichage) ou modifiée (pour l'édition). Si cette option n'est pas indiquée, crontab examinera « votre » table, c'est-à-dire la table de la personne invoquant la commande. Remarquez qu'un appel à su(8) peut induire crontab en erreur. Ainsi, si vous avez effectué un su(8), vous devriez toujours utiliser l'option -u par précaution.

La première forme de cette commande sert à installer une nouvelle crontab, en utilisant le fichier indiqué, ou l'entrée standard si le nom de fichier est « - ».

L'option -l permet d'afficher la crontab en cours sur la sortie standard. Veuillez consulter la section PARTICULARITÉS DEBIAN ci-dessous.

L'option -r supprime la crontab en cours.

L'option -e permet de modifier la crontab en cours, en utilisant l'éditeur indiqué par les variables d'environnement VISUAL ou EDITOR. Après avoir quitté l'éditeur, la table modifiée sera installée automatiquement. Si aucune des variables d'environnement n'est définie, alors l'éditeur par défaut /usr/bin/editor est utilisé.

L'option -i modifie le comportement de l'option -r en demandant à l'utilisateur une confirmation « y » ou « Y » avant de supprimer réellement la table.

PARTICULARITÉS DEBIAN
Le comportement par défaut de crontab -l est d'afficher l'en-tête de trois lignes « DO NOT EDIT THIS FILE » (NE PAS MODIFIER CE FICHIER) qui est placé au début de la crontab à son installation. Le problème est que cela rend la séquence

crontab -l | crontab -

non idempotente — l'en-tête est ajouté systématiquement. Cela perturbe les scripts qui utilisent sed pour modifier une crontab. Par conséquent, le comportement par défaut de l'option -l a été modifié afin de ne pas afficher cet en-tête. Vous pouvez obtenir le comportement originel en définissant la variable d'environnement CRONTAB_NOHEADER à « N », ce qui aura pour effet que la commande crontab -l affichera l'en-tête.

VOIR AUSSI
crontab(5), cron(8)

FICHIERS
/etc/cron.allow
/etc/cron.deny
/var/spool/cron/crontabs

Un fichier pour chaque utilisateur est disponible dans le répertoire /var/spool/cron/crontabs. Les utilisateurs ne sont pas autorisés à éditer directement les fichiers dans ce répertoire pour s'assurer que seuls les utilisateurs autorisés par le système à avoir des tâches périodiques puissent en ajouter, et que seules des crontabs syntaxiquement correctes y soient écrites. Cela est assuré en ayant le répertoire accessible en écriture uniquement par le groupe crontab et en configurant la commande crontab avec le bit setgid pour ce groupe.

STANDARDS
La commande crontab est conforme à la norme IEEE Std1003.2-1992 (« POSIX »). Cette nouvelle syntaxe diffère des versions précédentes de Vixie Cron, ainsi que de la syntaxe SVR3 classique.

DIAGNOSTICS
Un message d'aide approprié est affiché si vous invoquez crontab avec des arguments erronés.

Chaque entrée d'une crontab doit être terminée par un retour à la ligne. Si la dernière entrée ne se termine pas par un retour à la ligne, cron la considérera (au moins partiellement) cassée et refusera de l'installer.

AUTEUR
Paul Vixie <paul@vix.com> est l'auteur de cron et de cette page de manuel. Cette page a ensuite été modifiée pour Debian par Steve Greenland, Javier Fernandez-Sanguino et Christian Kastner.

TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe Blaess entre 1997 et 2003. La version présente dans Debian est dorénavant maintenue par Steve Petruzzello <dlist AT bluewin DOT ch> et les membres de la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.