Man page - logrotate.conf(5)

Packages contains this manual

Available languages:

en fr es ro

Manual

LOGROTATE

NOM
SYNOPSIS
DESCRIPTION
OPTIONS
FICHIER DE CONFIGURATION
DIRECTIVES DU FICHIER DE CONFIGURATION
Rotation
Fréquence
Sélection de fichiers
Fichiers et répertoires
Compression
Noms de fichier
Messagerie
Fichiers de configuration supplémentaires
Scripts
SCRIPTS
UTILISATEUR ET GROUPE
FICHIERS
VOIR AUSSI
AUTEURS
TRADUCTION

NOM

logrotate — faire tourner, compresser et envoyer les journaux systùme

SYNOPSIS

logrotate [ --force ] [ --debug ] [ --state fichier ] [ --skip-state-lock ] [ --wait-for-state-lock ] [ --verbose ] [ --log fichier ] [ --mail commande ] fich_conf [ fich_conf2 ... ]

DESCRIPTION

logrotate est conçu pour faciliter l’administration des systĂšmes qui gĂ©nĂšrent un grand nombre de journaux. Il automatise la rotation, la compression, la suppression et l’envoi des journaux. Chaque journal peut ĂȘtre traitĂ© quotidiennement, hebdomadairement, mensuellement ou quand il devient trop volumineux.

Normalement, logrotate est lancĂ© en tant que tĂąche quotidienne de cron (8). Il ne modifie pas un journal plusieurs fois dans la mĂȘme journĂ©e Ă  moins que le critĂšre pour ce journal ne soit basĂ© sur sa taille et que logrotate ne soit lancĂ© plusieurs fois par jour, ou Ă  moins que l’option -f ou --force ne soit utilisĂ©e.

La ligne de commande peut spĂ©cifier plusieurs fichiers de configuration. Les derniers fichiers de configuration peuvent outrepasser les options donnĂ©es dans les prĂ©cĂ©dents, si bien que l’ordre dans lequel les fichiers de configuration de logrotate sont spĂ©cifiĂ©s est important. Normalement, il faudrait utiliser un unique fichier de configuration qui inclurait tous les autres fichiers de configuration nĂ©cessaires. Pour ce faire, voir ci-dessous pour plus d’informations sur la façon d’utiliser la directive include . Si la ligne de commande spĂ©cifie un rĂ©pertoire, chaque fichier que ce dernier contient sera utilisĂ© comme fichier de configuration.

Si la ligne de commande ne comporte aucun argument, logrotate affiche les informations de version et de copyright, ainsi qu’une aide succincte. Si une erreur survient pendant la rotation des journaux, logrotate quittera avec un statut diffĂ©rent de zĂ©ro, bien que le fichier d’état soit mis Ă  jour.

OPTIONS

-f , --force

Demander Ă  logrotate de forcer la rotation, mĂȘme s’il ne l’estime pas nĂ©cessaire. Cela peut parfois s’avĂ©rer utile aprĂšs l’ajout de nouvelles entrĂ©es Ă  un fichier de configuration de logrotate , ou si d’anciens journaux ont Ă©tĂ© supprimĂ©s Ă  la main, auquel cas les nouveaux fichiers seront créés, et la journalisation continuera correctement.

-d , --debug

Passer en mode dĂ©bogage, ce qui signifie que les journaux ne seront pas modifiĂ©s et que le fichier d’état de logrotate ne sera pas mis Ă  jour. Les messages de dĂ©bogage seront seulement affichĂ©s.

-s , --state fich_état

Demander Ă  logrotate d’utiliser un autre fichier d’état, ce qui peut s’avĂ©rer utile si logrotate est lancĂ© par diffĂ©rents utilisateurs pour des groupes de fichiers journaux distincts. Pour prĂ©venir une exĂ©cution parallĂšle, logrotate va tenter par dĂ©faut d’obtenir un verrouillage du fichier d’état ; s’il n’y parvient pas, logrotate quittera avec un statut de 3. Le fichier d’état par dĂ©faut est /var/lib/logrotate.status . Si /dev/null est spĂ©cifiĂ© comme fichier d’état, logrotate ne tentera ni d’écrire dans le fichier d’état, ni de le verrouiller.

--skip-state-lock

Ne pas verrouiller le fichier d’état, par exemple si le verrouillage est interdit ou non pris en charge.

--wait-for-state-lock

Attendre que le verrouillage du fichier d’état soit effectuĂ© par un autre processus logrotate . Avec cette option, logrotate peut attendre indĂ©finiment, et il faut donc l’utiliser avec prĂ©caution.

-v , --verbose

Passer en mode affichage détaillé, par exemple pour afficher des messages pendant la rotation.

-l , --log fichier

Demander Ă  logrotate d’enregistrer une sortie dĂ©taillĂ©e dans le fichier journal. Cette sortie dĂ©taillĂ©e est la mĂȘme que celle qui est affichĂ©e lorsque logrotate est lancĂ© avec l’option -v . Le fichier journal est Ă©crasĂ© Ă  chaque exĂ©cution de logrotate .

-m , --mail commande

Indiquer à logrotate quelle commande utiliser pour envoyer les journaux. Cette commande doit comporter les arguments suivants :

1) le sujet du message sous la forme « -s sujet »
2) le destinataire.

La commande doit ensuite lire un message sur l’entrĂ©e standard et l’envoyer au destinataire. La commande d’envoi par dĂ©faut est /usr/bin/mail .

--usage

Afficher des informations d’utilisation succinctes.

-? , --help

Afficher l’aide.

--version

Afficher les informations de version.

FICHIER DE CONFIGURATION

logrotate obtient toutes les informations Ă  propos des journaux qu’il est censĂ© traiter Ă  partir de la liste de fichiers de configuration spĂ©cifiĂ©e en ligne de commande. Chaque fichier de configuration peut dĂ©finir des options globales (les options locales outrepassent les globales et les derniĂšres dĂ©finitions outrepassent les prĂ©cĂ©dentes) et spĂ©cifier les journaux Ă  faire tourner. Les options globales n’affectent pas les directives d’inclusion qui les prĂ©cĂšdent. Un fichier de configuration simple ressemblera Ă  ceci :

# exemple de fichier de configuration de logrotate
compress

/var/log/messages {
rotate 5
weekly
postrotate
/usr/bin/killall -HUP syslogd
endscript
}

"/var/log/httpd/access.log" /var/log/httpd/error.log {
rotate 5
mail destinataire@example.org
size 100k
sharedscripts
postrotate
/usr/bin/killall -HUP httpd
endscript
}

/var/log/news/* {
monthly
rotate 2
olddir /var/log/news/old
missingok
sharedscripts
postrotate
kill -HUP $(cat /var/run/inn.pid)
endscript
nocompress
}

˜/log/*.log {}

Les premiĂšres lignes dĂ©finissent les options globales ; dans cet exemple, les journaux sont compressĂ©s aprĂšs leur rotation. Remarquez que les commentaires peuvent apparaĂźtre n’importe oĂč dans le fichier de configuration Ă  partir du moment oĂč le premier caractĂšre de la ligne autre qu’une espace est un croisillon # .

Les valeurs sont sĂ©parĂ©es des directives par une espace ou un = optionnel. Les nombres doivent ĂȘtre spĂ©cifiĂ©s dans un format pris en charge par strtoul (3).

La section suivante du fichier de configuration dĂ©crit comment traiter le journal /var/log/messages . Le journal passera par cinq rotations hebdomadaires avant d’ĂȘtre supprimĂ©. AprĂšs la rotation du journal (mais avant que l’ancienne version du journal ne soit compressĂ©e), la commande /usr/sbin/killall -HUP syslogd sera exĂ©cutĂ©e.

La section suivante dĂ©finit les paramĂštres pour les journaux /var/log/httpd/access.log et /var/log/httpd/error.log . Leur rotation intervient dĂšs que leur taille dĂ©passe 100 ko, et les anciens journaux sont envoyĂ©s (sans compression) Ă  destinataire@example.org aprĂšs ĂȘtre passĂ©s par 5 rotations, au lieu d’ĂȘtre supprimĂ©s. sharedscripts signifie que le script postrotate ne sera exĂ©cutĂ© qu’une seule fois et non Ă  chaque rotation d’un journal. Remarquez que les noms des fichiers journaux peuvent ĂȘtre entourĂ©s de guillemets (et qu’ils doivent l’ĂȘtre s’ils contiennent des espaces). Les rĂšgles normales de mise entre guillemets de l’interprĂ©teur de commande s’appliquent, les caractĂšres ’ , " et \ Ă©tant pris en charge.

La section suivante dĂ©finit les paramĂštres pour tous les fichiers dans /var/log/news . La rotation de chaque fichier s’effectue sur une base mensuelle

La derniĂšre section utilise l’expansion du tilde ˜ pour faire tourner les fichiers journaux situĂ©s dans le rĂ©pertoire personnel de l’utilisateur actuel. Cette configuration n’est valable que si votre bibliothĂšque glob prend en charge l’expansion du tilde, ce qui est le cas pour GNU glob.

Utilisez les caractÚres génériques avec précaution. Si vous spécifiez * , logrotate fera tourner tous les fichiers, y compris ceux qui viennent de tourner. Pour contourner ce problÚme, vous pouvez utiliser la directive olddir ou un nom générique plus restrictif (comme *.log ).

Notez que lorsqu’on utilise systemd (1), l’option ProtectSystem=full est dĂ©finie par dĂ©faut dans le fichier logrotate.service , ce qui empĂȘche logrotate de modifier les journaux situĂ©s dans /etc et /usr .

Vous trouverez ci-aprĂšs plus d’informations sur les directives qui peuvent ĂȘtre dĂ©finies dans un fichier de configuration de logrotate :

DIRECTIVES DU FICHIER DE CONFIGURATION

Un fichier de configuration de logrotate peut contenir les directives suivantes :

Rotation

rotate nombre

Les journaux sont mis en rotation nombre fois avant d’ĂȘtre supprimĂ©s ou envoyĂ©s Ă  l’adresse prĂ©cisĂ©e dans une directive mail . Si nombre est Ă©gal Ă  0 , les anciennes versions sont supprimĂ©es au lieu d’ĂȘtre mises en rotation. Si nombre est Ă©gal Ă  -1 , les anciens journaux ne sont pas supprimĂ©s, Ă  moins qu’ils ne soient affectĂ©s par maxage (utiliser avec prĂ©caution, risque de dĂ©gradation des performances et de l’espace disque). nombre a pour valeur par dĂ©faut 0 .

olddir répertoire

Les journaux sont dĂ©placĂ©s dans rĂ©pertoire pour rotation. Le rĂ©pertoire doit ĂȘtre sur le mĂȘme pĂ©riphĂ©rique physique que le journal en cours de rotation, sauf si une des directives copy , copytruncate ou renamecopy est spĂ©cifiĂ©e. rĂ©pertoire est supposĂ© relatif au rĂ©pertoire contenant le fichier journal, sauf si un chemin absolu est spĂ©cifiĂ©. Quand cette directive est utilisĂ©e, toutes les anciennes versions des journaux finissent dans rĂ©pertoire . Cette directive peut ĂȘtre outrepassĂ©e par la directive noolddir .

noolddir

Les journaux sont mis en rotation dans le répertoire dans lequel ils résident normalement (cette directive outrepasse la directive olddir ).

su utilisateur groupe

Faire tourner le jeu de fichiers journaux sous l’utilisateur et le groupe spĂ©cifiĂ©s au lieu de l’utilisateur/groupe par dĂ©faut (en gĂ©nĂ©ral root ). utilisateur et groupe spĂ©cifient respectivement l’utilisateur et le groupe utilisĂ©s pour la rotation (voir la section UTILISATEUR ET GROUPE pour les dĂ©tails). Si l’utilisateur/groupe que vous avez spĂ©cifiĂ© ici ne possĂšde pas de privilĂšges suffisants pour crĂ©er des fichiers avec l’appartenance que vous avez spĂ©cifiĂ©e dans une directive create , une erreur sera gĂ©nĂ©rĂ©e. Si logrotate s’exĂ©cute avec les privilĂšges de root , il est conseillĂ© d’utiliser la directive su pour faire tourner les fichiers dans les rĂ©pertoires qui sont directement ou indirectement sous contrĂŽle d’utilisateurs non privilĂ©giĂ©s.

Fréquence

hourly

Les fichiers journaux sont mis en rotation toutes les heures. Notez qu’en gĂ©nĂ©ral, logrotate est configurĂ© pour ĂȘtre exĂ©cutĂ© par cron (8) quotidiennement (ou par logrotate.timer lorsqu’on utilise systemd (1)). Vous devez modifier cette configuration et exĂ©cuter logrotate toutes les heures pour pouvoir effectivement faire tourner les journaux toutes les heures.

daily

Les fichiers journaux sont mis en rotation tous les jours

weekly [ jour_de_la_semaine ]

Les fichiers journaux sont mis en rotation une fois chaque jour_de_la_semaine , ou si la date actuelle est postĂ©rieure d’au moins 7 jours Ă  la date de la derniĂšre rotation (tout en ignorant l’écart exact). L’interprĂ©tation de jour_de_la_semaine est la suivante : 0 signifie dimanche, 1 signifie lundi, ..., 6 signifie samedi ; la valeur spĂ©ciale 7 signifie « tous les 7 jours », sans tenir compte du jour de la semaine. Si l’argument jour_de_la_semaine est omis, sa valeur par dĂ©faut est 0 .

monthly

Les fichiers journaux sont mis en rotation à la premiÚre exécution de logrotate au cours du mois (en général le premier jour du mois).

yearly

Les fichiers journaux sont mis en rotation si l’annĂ©e actuelle est diffĂ©rente de l’annĂ©e de la derniĂšre rotation.

size taille

Les fichiers journaux ne sont mis en rotation que s’ils dĂ©passent taille octets. Si taille est suivie de k , M ou G , la taille sera respectivement en ko, Mo ou Go. Ainsi, les directives size 100 , size 100k , size 100M et size 100G sont toutes valables. Cette directive et les directives d’intervalle de temps sont mutuellement exclusives ; cette directive fait tourner les fichiers journaux sans tenir compte de la date de la derniĂšre rotation, dans la mesure oĂč elle a Ă©tĂ© spĂ©cifiĂ©e aprĂšs le critĂšre de temps (la derniĂšre directive spĂ©cifiĂ©e l’emporte sur les prĂ©cĂ©dentes).

Sélection de fichiers

missingok

Si le fichier journal est manquant, continuer avec le suivant sans afficher de message d’erreur. Voir aussi nomissingok .

nomissingok

Si un fichier journal n’existe pas, afficher une erreur (c’est le comportement par dĂ©faut).

ignoreduplicates

Ignorer toutes les correspondances suivantes d’un fichier journal.

ifempty

Faire tourner le fichier journal mĂȘme s’il est vide en outrepassant la directive notifempty ( ifempty est la directive par dĂ©faut).

notifempty

Ne pas faire tourner le fichier journal s’il est vide (outrepasse la directive ifempty ).

minage nombre

Ne pas faire tourner les fichiers journaux qui datent de moins de <nombre> jours.

maxage nombre

Supprimer les fichiers journaux ayant subi une rotation et qui datent de plus de <nombre> jours. L’ñge n’est vĂ©rifiĂ© que si le fichier journal doit ĂȘtre mis en rotation. rotate -1 n’empĂȘche pas la suppression. Les fichiers sont envoyĂ©s Ă  l’adresse spĂ©cifiĂ©e si maillast et mail sont dĂ©finies.

minsize taille

Les fichiers journaux sont mis en rotation s’ils dĂ©passent taille octets, mais pas avant l’intervalle de temps par ailleurs spĂ©cifiĂ© ( daily , weekly , monthly ou yearly ). La directive apparentĂ©e size est similaire, exceptĂ© qu’elle est mutuellement exclusive avec les directives d’intervalle de temps et qu’elle fait tourner les fichiers journaux sans tenir compte de la date de derniĂšre rotation, sous rĂ©serve qu’elle ait Ă©tĂ© spĂ©cifiĂ©e aprĂšs le critĂšre de temps (la derniĂšre directive spĂ©cifiĂ©e l’emporte sur les prĂ©cĂ©dentes). Lorsque minsize est dĂ©finie, la taille et l’ñge d’un fichier journal sont pris en compte.

maxsize taille

Les fichiers journaux sont mis en rotation s’ils dĂ©passent taille octets, mĂȘme avant l’intervalle de temps par ailleurs spĂ©cifiĂ© ( daily , weekly , monthly ou yearly ). La directive apparentĂ©e size est similaire, exceptĂ© qu’elle est mutuellement exclusive avec les directives d’intervalle de temps et qu’elle fait tourner les fichiers journaux sans tenir compte de la date de derniĂšre rotation, sous rĂ©serve qu’elle ait Ă©tĂ© spĂ©cifiĂ©e aprĂšs le critĂšre de temps (la derniĂšre directive spĂ©cifiĂ©e l’emporte sur les prĂ©cĂ©dentes). Lorsque maxsize est dĂ©finie, la taille et l’ñge d’un fichier journal sont pris en compte.

tabooext [+] liste

La liste actuelle des extensions taboues est modifiĂ©e (voir la directive include pour des informations sur les extensions taboues). Si un + prĂ©cĂšde la liste d’extensions, la liste actuelle des extensions taboues est augmentĂ©e, sinon elle est remplacĂ©e. Au dĂ©marrage, la liste des extensions taboues contient ,v , .bak , .cfsaved , .disabled , .dpkg-bak , .dpkg-del , .dpkg-dist , .dpkg-new , .dpkg-old , .dpkg-tmp , .new , .old , .orig , .rhn-cfg-tmp-* , .rpmnew , .rpmorig , .rpmsave , .swp , .ucf-dist , .ucf-new , .ucf-old , ˜

taboopat [+] liste

La liste actuelle des motifs à caractÚres génériques tabous est modifiée (voir la directive include pour des informations sur les extensions et les motifs tabous). Si un + précÚde la liste de motifs, la liste actuelle des motifs tabous est augmentée, sinon elle est remplacée. Au démarrage, la liste des motifs tabous est vide.

Fichiers et répertoires

create mode propriétaire groupe , create propriétaire groupe

Le fichier journal est créé immĂ©diatement aprĂšs la rotation (avant l’exĂ©cution du script postrotate et avec le mĂȘme nom que le fichier journal qui vient d’ĂȘtre mis en rotation). mode spĂ©cifie les droits du fichier journal en octal (tels que spĂ©cifiĂ©s Ă  l’aide de chmod (2)), owner spĂ©cifie l’utilisateur qui sera propriĂ©taire du fichier journal et group spĂ©cifie le groupe auquel appartiendra le fichier journal (voir la section UTILISATEUR ET GROUPE pour les dĂ©tails). Un ou plusieurs attributs du fichier journal peuvent ĂȘtre omis, auquel cas ces attributs prendront comme valeur par dĂ©faut la valeur qu’ils avaient dans le fichier journal original. Cette directive peut ĂȘtre dĂ©sactivĂ©e par la directive nocreate .

nocreate

Les nouveaux fichiers journaux ne sont pas créés (outrepasse la directive create ).

createolddir mode [ propriétaire [ groupe ]], createolddir [ propriétaire
[ groupe ]]

Si le rĂ©pertoire spĂ©cifiĂ© Ă  l’aide de la directive olddir n’existe pas, il est créé. mode spĂ©cifie les droits du rĂ©pertoire olddir en octal (tels que spĂ©cifiĂ©s Ă  l’aide de chmod (2)), owner spĂ©cifie l’utilisateur qui sera propriĂ©taire du rĂ©pertoire olddir et group spĂ©cifie le groupe auquel appartiendra le rĂ©pertoire olddir (voir la section UTILISATEUR ET GROUPE pour les dĂ©tails). Si mode n’est pas spĂ©cifiĂ©, 0755 est supposĂ©. Cette directive peut ĂȘtre dĂ©sactivĂ©e en utilisant la directive nocreateolddir .

nocreateolddir

Le rĂ©pertoire olddir n’est pas créé par logrotate lorsqu’il n’existe pas.

copy

Faire une copie du fichier journal, mais ne pas modifier le fichier original. Cette directive permet, par exemple, de gĂ©nĂ©rer un instantanĂ© du fichier journal actuel, ou Ă  un autre utilitaire de tronquer ou analyser le fichier. Si cette directive est utilisĂ©e, la directive create n’aura aucun effet, car l’ancien fichier journal reste Ă  sa place. La directive copy permet, Ă  l’aide de la directive olddir , de stocker sur divers pĂ©riphĂ©riques les fichiers journaux mis en rotation.

nocopy

Ne pas copier le fichier journal original et le laisser Ă  sa place (cette directive outrepasse la directive copy ).

copytruncate

Au lieu de dĂ©placer le fichier journal original et d’en crĂ©er Ă©ventuellement un nouveau, le tronquer Ă  une taille de zĂ©ro Ă  sa place aprĂšs en avoir effectuĂ© une copie. Cette directive peut ĂȘtre utilisĂ©e lorsqu’on ne peut demander Ă  un programme de fermer son fichier journal, ce programme continuant alors Ă  Ă©crire (en mode ajout) indĂ©finiment dans le fichier journal prĂ©cĂ©dent. Notez qu’il y a un trĂšs petit laps de temps entre la copie du fichier et sa troncature, et qu’il y a donc un risque de perte de donnĂ©es de journalisation. Si cette directive est utilisĂ©e, la directive create n’aura aucun effet, car l’ancien fichier journal reste en place. La directive copytruncate permet de stocker les fichiers journaux mis en rotation sur divers pĂ©riphĂ©riques en utilisant la directive olddir . La directive copytruncate implique la directive norenamecopy .

nocopytruncate

Ne pas tronquer le journal original en place aprÚs en avoir créé une copie (outrepasse la directive copytruncate ).

renamecopy

Le fichier journal est renommĂ© avec un nom temporaire dans le mĂȘme rĂ©pertoire en lui ajoutant l’extension « .tmp ». Ensuite, le script postrotate est exĂ©cutĂ© et le fichier journal est copiĂ© depuis le fichier de nom temporaire vers le fichier de nom final. Enfin, le fichier de nom temporaire est supprimĂ©. La directive renamecopy permet de stocker les fichiers journaux mis en rotation sur divers pĂ©riphĂ©riques en utilisant la directive olddir . La directive renamecopy implique la directive nocopytruncate .

norenamecopy

Ne pas renommer ni copier le fichier journal original (outrepasse la directive renamecopy ).

shred

Supprimer les fichiers journaux en utilisant shred -u Ă  la place de unlink() , ce qui permet de s’assurer que les journaux ne seront pas lisibles aprĂšs leur suppression ; cette directive est Ă  off par dĂ©faut. Voir aussi noshred .

noshred

Ne pas utiliser shred pour supprimer les anciens fichiers journaux. Voir aussi shred .

shredcycles nombre

Demander Ă  GNU shred (1) d’écraser les fichiers journaux nombre fois avant suppression. Sans cette directive, c’est la valeur par dĂ©faut de shred qui sera utilisĂ©e.

allowhardlink

Faire tourner les fichiers avec plusieurs liens physiques ; cette directive est Ă  off par dĂ©faut. Le fichier cible peut ĂȘtre vidĂ© Ă  l’aide, par exemple, de shred ou copytruncate . À utiliser avec prĂ©caution, en particulier lorsque les fichiers journaux sont mis en rotation en tant que root .

noallowhardlink

Ne pas faire tourner les fichiers avec plusieurs liens physiques. Voir aussi allowhardlink .

Compression

compress

Les anciens fichiers journaux sont compactés avec gzip (1) par défaut. Voir aussi nocompress .

nocompress

Les anciennes versions des fichiers journaux ne sont pas compactées. Voir aussi compress .

compresscmd

Spécifier la commande à utiliser pour compacter les fichiers journaux (par défaut gzip (1)). Voir aussi compress .

uncompresscmd

Spécifier la commande à utiliser pour décompacter les fichiers journaux. Le programme de décompactage par défaut est gunzip (1).

compressext

SpĂ©cifier l’extension Ă  ajouter aux fichiers journaux compactĂ©s si le compactage est activĂ©. L’extension par dĂ©faut correspond Ă  celle spĂ©cifiĂ©e dans la commande de compactage.

compressoptions

Des options de ligne de commande peuvent ĂȘtre transmises au programme de compactage si on en utilise un. L’option par dĂ©faut pour gzip (1) est « -6 » (ce qui implique un haut niveau de compression au dĂ©triment de la vitesse d’exĂ©cution). Si vous utilisez une commande de compression diffĂ©rente, vous devrez peut-ĂȘtre modifier les compressoptions en consĂ©quence.

delaycompress

Reporter le compactage du fichier journal prĂ©cĂ©dent au prochain cycle de rotation. Cette directive n’a d’effet que si elle est utilisĂ©e en combinaison avec la directive compress . Elle peut ĂȘtre utilisĂ©e quand il n’est pas possible de demander Ă  un programme de fermer son journal, ce programme pouvant par consĂ©quent continuer Ă  Ă©crire pendant un moment dans le fichier journal prĂ©cĂ©dent.

nodelaycompress

Ne pas reporter le compactage du fichier journal précédent au prochain cycle de rotation (outrepasse la directive delaycompress ).

Noms de fichier

extension ext

Les fichiers journaux possĂ©dant l’extension ext peuvent la conserver aprĂšs leur rotation. Si le compactage est utilisĂ©, le suffixe de compactage (normalement .gz ) apparaĂźt aprĂšs ext . Par exemple, vous pourriez vouloir faire tourner un fichier journal mylog.foo en mylog.1.foo.gz au lieu de mylog.foo.1.gz .

addextension ext

Donner aux fichiers journaux l’extension finale ext aprĂšs leur rotation. Si le fichier original a dĂ©jĂ  pour extension ext , l’extension n’est pas dupliquĂ©e mais simplement dĂ©placĂ©e vers la fin du nom du fichier ; autrement dit, nom_fichier et nom_fichier ext seront tous deux mis en rotation vers nom_fichier .1 ext . Si on utilise le compactage, le suffixe de compactage (normalement .gz ) apparaĂźtra aprĂšs ext .

start nombre

C’est le nombre Ă  utiliser comme base pour la rotation. Si vous spĂ©cifiez 0 par exemple, les journaux seront créés avec une extension .0 au moment de leur rotation depuis les fichiers journaux originaux. Si vous spĂ©cifiez 9 , les journaux seront créés avec une extension .9 en sautant les valeurs 0 Ă  8 , mais les fichiers seront tout de mĂȘme mis en rotation le nombre de fois spĂ©cifiĂ© Ă  l’aide de la directive rotate .

dateext

Archiver les anciennes versions des fichiers journaux en ajoutant une extension de date comme AAAAMMJJ au lieu d’un simple nombre. Le format de l’extension peut ĂȘtre configurĂ© en utilisant les directives dateformat et dateyesterday .

nodateext

Ne pas archiver les anciennes versions des fichiers journaux avec une extension de date (outrepasse la directive dateext ).

dateformat chaine_formatage

Configurer l’extension pour dateext en utilisant une notation similaire Ă  celle de la fonction strftime (3). Seuls sont permis les spĂ©cificateurs %Y %m %d %H %M %S %V %s et %z. Le format par dĂ©faut est « -%Y%m%d », sauf pour les rotations Ă  chaque heure qui utilisent « -%Y%m%d%H » comme format par dĂ©faut. Notez que le caractĂšre sĂ©parant le nom du journal de l’extension fait aussi partie de la chaĂźne de formatage de date. L’horloge systĂšme doit ĂȘtre rĂ©glĂ©e sur une date postĂ©rieure au 9 septembre 2001 pour un fonctionnement correct de %s. Notez que les horodatages gĂ©nĂ©rĂ©s par ce format doivent ĂȘtre lexicalement adaptĂ©s au tri (c’est-Ă -dire l’annĂ©e en premier, puis le mois et enfin le jour. Par exemple, 2001/12/01 est valable, mais 01/12/2001 ne l’est pas, car 01/11/2002 serait considĂ©rĂ© comme antĂ©rieur, alors que ce n’est pas le cas). La raison de cette rĂšgle de format rĂ©side dans le fait que lorsqu’on utilise la directive rotate , logrotate trie tous les noms de fichiers dĂ©jĂ  mis en rotation pour dĂ©terminer lesquels sont les plus anciens et doivent ĂȘtre supprimĂ©s.

dateyesterday

Utiliser la date de la veille au lieu de la date du jour pour crĂ©er l’extension dateext , de façon que le fichier journal mis en rotation ait une date dans son nom qui corresponde aux horodatages qu’il contient.

datehourago

Utiliser l’heure prĂ©cĂ©dente au lieu de l’heure courante pour crĂ©er l’extension dateext , de façon que le fichier journal mis en rotation ait une heure dans son nom qui corresponde aux horodatages qu’il contient. À utiliser avec les rotations toutes les heures.

Messagerie

mail adresse

Quand un journal est mis en rotation pour ĂȘtre supprimĂ©, il est envoyĂ© Ă  adresse . La directive nomail permet d’indiquer qu’aucun mail ne doit ĂȘtre gĂ©nĂ©rĂ© pour un journal particulier

nomail

Ne pas envoyer les anciens fichiers journaux.

mailfirst

Lors de l’utilisation de la commande mail , envoyer le journal qui vient d’ĂȘtre mis en rotation au lieu d’envoyer le journal sur le point d’expirer.

maillast

Lors de l’utilisation de la commande mail , envoyer le journal sur le point d’expirer au lieu d’envoyer le journal qui vient d’ĂȘtre mis en rotation (comportement par dĂ©faut).

Fichiers de configuration supplémentaires

include fichier_ou_répertoire

Lire le fichier donnĂ© en argument comme s’il Ă©tait insĂ©rĂ© lĂ  oĂč la directive include apparaĂźt. Si c’est un rĂ©pertoire qui est donnĂ©, la plupart des fichiers de ce rĂ©pertoire sont lus par ordre alphabĂ©tique avant de continuer le traitement d’inclusion des fichiers. Les seuls fichiers ignorĂ©s sont les fichiers non standards (tels que les rĂ©pertoires et les tubes nommĂ©s) et les fichiers dont les noms se terminent par une extension ou un motif tabous, comme prĂ©cisĂ© respectivement par la directive tabooext ou taboopat . Le chemin donnĂ© peut dĂ©buter par ˜/ pour qu’il soit relatif au rĂ©pertoire personnel de l’utilisateur qui est Ă  l’exĂ©cution. Pour des raisons de sĂ©curitĂ©, les fichiers de configuration ne doivent pas ĂȘtre accessibles en Ă©criture pour le groupe ou le reste du monde.

Scripts

sharedscripts

En gĂ©nĂ©ral, les scripts prerotate et postrotate sont exĂ©cutĂ©s pour chaque journal mis en rotation et le chemin absolu du fichier journal leur est passĂ© comme premier argument. Cela signifie qu’un script peut ĂȘtre exĂ©cutĂ© plusieurs fois pour des spĂ©cifications de fichier journal qui correspondent Ă  plusieurs fichiers (comme /var/log/news/* par exemple). Si la directive sharedscripts est spĂ©cifiĂ©e, les scripts ne sont exĂ©cutĂ©s qu’une seule fois, quel que soit le nombre de journaux auxquels correspond le motif Ă  caractĂšres gĂ©nĂ©riques, et l’ensemble du motif leur est passĂ© comme argument. Cependant, si aucun des journaux du motif ne nĂ©cessite une rotation, les scripts ne seront pas exĂ©cutĂ©s du tout. Si les scripts se terminent avec une erreur (ou si la rotation d’un journal Ă©choue), les actions restantes ne seront exĂ©cutĂ©es pour aucun journal. Cette directive outrepasse la directive nosharedscripts .

nosharedscripts

ExĂ©cuter les scripts prerotate et postrotate pour chaque fichier journal qui est mis en rotation (il s’agit du comportement par dĂ©faut, et cette directive outrepasse la directive sharedscripts ). Le chemin absolu du fichier journal est passĂ© au script comme premier argument. Le chemin absolu du fichier journal final qui a Ă©tĂ© mis en rotation est passĂ© au script postrotate comme second argument. Si les scripts se terminent avec une erreur, les actions restantes ne seront pas exĂ©cutĂ©es, mais seulement pour les journaux affectĂ©s.

firstaction
script

endscript
Le script est exécuté une fois avant que tous les fichiers

journaux qui correspondent au motif Ă  caractĂšres gĂ©nĂ©riques soient mis en rotation, avant l’exĂ©cution du script prerotate et seulement si au moins un journal sera effectivement mis en rotation. Ces directives ne doivent apparaĂźtre qu’au sein d’une dĂ©finition de fichier journal. L’ensemble du motif est passĂ© au script comme premier argument. Si le script se termine avec une erreur, plus aucun traitement n’est effectuĂ©. Voir aussi lastaction et la section SCRIPTS .

lastaction
script

endscript
Le script est exécuté une fois aprÚs que tous les fichiers

journaux qui correspondent au motif Ă  caractĂšres gĂ©nĂ©riques soient mis en rotation, aprĂšs l’exĂ©cution du script prerotate et seulement si au moins un journal est mis en rotation. Ces directives ne doivent apparaĂźtre qu’au sein d’une dĂ©finition de fichier journal. L’ensemble du motif est passĂ© au script comme premier argument. Si le script se termine avec une erreur, un message d’erreur est seulement affichĂ© (car il s’agit de la derniĂšre action). Voir aussi firstaction et la section SCRIPTS .

prerotate
script

endscript
Le script est exécuté avant la rotation du fichier journal

et de ses journaux anciens seulement si le journal sera effectivement mis en rotation. Ces directives ne doivent apparaĂźtre qu’au sein d’une dĂ©finition de fichier journal. Normalement, le chemin absolu du fichier journal est passĂ© au script comme premier argument. Si sharedscripts est spĂ©cifiĂ©, c’est l’ensemble du motif qui est passĂ© au script. Voir aussi postrotate et la section SCRIPTS . Voir sharedscripts et nosharedscripts pour la gestion des erreurs.

postrotate
script

endscript
Le script est exécuté aprÚs la rotation du fichier

journal. et avant la compression du fichier journal. Ces directives ne doivent apparaĂźtre qu’au sein d’une dĂ©finition de fichier journal. Normalement, le chemin absolu du fichier journal est passĂ© au script comme premier argument et le chemin absolu du fichier journal final mis en rotation comme second argument. Si sharedscripts est spĂ©cifiĂ©, l’ensemble du motif est passĂ© au script comme premier argument et le second argument est omis. Voir aussi pretrotate et la section SCRIPTS . Voir sharedscripts et nosharedscripts pour la gestion des erreurs.

preremove
script

endscript
Le script est exécuté une fois juste avant la suppression

d’un fichier journal. logrotate passera au script le nom du fichier sur le point d’ĂȘtre supprimĂ© comme premier argument. Voir aussi firstaction et la section SCRIPTS .

SCRIPTS

Les lignes entre le mot-clĂ© de dĂ©but (par exemple prerotate ) et endscript (ces deux mots-clĂ©s devant apparaĂźtre seuls sur une ligne) sont exĂ©cutĂ©es en utilisant /bin/sh . Le script hĂ©rite de certains traits du processus logrotate comme stderr, stdout, le rĂ©pertoire actuel,l’environnement et le umask. Les scripts sont exĂ©cutĂ©s sous l’utilisateur et groupe appelants, sans tenir compte de toute directive su . Si l’option --log a Ă©tĂ© spĂ©cifiĂ©e, le descripteur de fichier 3 correspondra au fichier journal. Le rĂ©pertoire de travail actuel n’est pas spĂ©cifiĂ©.

UTILISATEUR ET GROUPE

Les identifiants d’utilisateur et de groupe sont rĂ©solus en essayant tout d’abord d’utiliser leur reprĂ©sentation textuelle, et en cas d’échec, en utilisant leur valeur numĂ©rique.

FICHIERS

Image grohtml-3863223-1.png

VOIR AUSSI

chmod (2), gunzip (1), gzip (1), mail (1), shred (1), strftime (3), strtoul (3), <https://github.com/logrotate/logrotate>

AUTEURS

Erik Troan, Preston Brown, Jan Kaluza.

<https://github.com/logrotate/logrotate>

TRADUCTION

La traduction française de cette page de manuel a été créée par Laurent Hugé et Lucien Gentis <lucien.gentis@waika9.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org .