accueil > Gestion des paquets et du système > logrotate

logrotate : Gestion des fichiers journaux système

logrotate est un utilitaire responsable de la rotation automatique, de la compression, de la suppression et de l'envoi par e-mail des fichiers journaux système. Cet outil permet une gestion efficace des journaux en empêchant les fichiers journaux de devenir trop volumineux, d'occuper de l'espace disque ou d'affecter les performances du système.

Aperçu

logrotate gère périodiquement les fichiers journaux en se basant sur des fichiers de configuration. Les anciens journaux sont supprimés ou compressés selon la période de rétention pour économiser de l'espace disque, et de nouveaux fichiers journaux sont créés pour assurer le bon fonctionnement du système. Il est exécuté automatiquement chaque jour via une tâche cron sur la plupart des systèmes Linux.

Fonctionnalités principales

  • Rotation et rétention automatiques des fichiers journaux
  • Compression et suppression des anciens fichiers journaux
  • Gestion efficace de l'espace disque
  • Application flexible des règles basée sur des fichiers de configuration
  • Inclus par défaut dans la plupart des distributions Linux

Options principales

logrotate fonctionne principalement via des fichiers de configuration, mais vous pouvez contrôler des actions spécifiques à l'aide d'options en ligne de commande.

Contrôle de l'exécution

Spécification de fichiers

Commande générée :

Essayez de combiner les commandes.

Description:

`logrotate` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

logrotate est généralement exécuté automatiquement par cron, mais vous pouvez l'exécuter manuellement ou le tester avec des options spécifiques.

Exécuter logrotate avec le fichier de configuration par défaut

sudo logrotate /etc/logrotate.conf

Normalement exécuté par cron, mais voici la commande pour exécuter logrotate manuellement en utilisant le fichier de configuration par défaut.

Exécuter en mode débogage pour prévisualiser les changements

sudo logrotate -d /etc/logrotate.conf

Ne modifie pas réellement les fichiers journaux, mais simule et affiche les actions que logrotate effectuera. Indispensable pour tester de nouvelles configurations avant de les appliquer.

Forcer la rotation des fichiers journaux

sudo logrotate -f /etc/logrotate.conf

Ignore les conditions de rotation (par exemple, temps, taille) et fait pivoter les fichiers journaux immédiatement. Utilisé en cas d'urgence ou lorsque des journaux spécifiques doivent être traités immédiatement.

Exécuter avec le fichier de configuration d'une application spécifique

sudo logrotate -c /etc/logrotate.d/nginx

Exécute logrotate en utilisant uniquement le fichier de configuration d'une application spécifique dans le répertoire `/etc/logrotate.d/`.

Conseils et précautions

Conseils et points à considérer pour utiliser logrotate efficacement.

Emplacement des fichiers de configuration

Les fichiers de configuration de logrotate sont généralement situés à deux endroits.

  • /etc/logrotate.conf: Fichier de configuration global, qui contient les valeurs par défaut et inclut d'autres fichiers de configuration applicables à tous les journaux.
  • /etc/logrotate.d/: Répertoire contenant les fichiers définissant les règles de rotation des journaux pour des applications individuelles (par exemple, Nginx, Apache, MySQL).

Directives de configuration principales

Directives fréquemment utilisées dans les fichiers de configuration logrotate.

  • rotate N : Conserve N fichiers journaux rotatifs.
  • daily/weekly/monthly/yearly : Spécifie la fréquence de rotation des journaux.
  • compress : Compresse les fichiers journaux rotatifs.
  • delaycompress : Compresse le journal précédent lors de la rotation suivante.
  • notifempty : Ne tourne pas le fichier journal s'il est vide.
  • missingok : Ne génère pas d'erreur si le fichier journal est manquant.
  • create [mode owner group] : Crée un nouveau fichier journal.
  • postrotate/endscript : Définit le script à exécuter après la rotation du journal.

Tester les modifications de configuration

Avant d'appliquer de nouvelles configurations logrotate, vous devez impérativement les tester à l'aide de l'option `-d` (ou `--debug`). C'est la méthode la plus sûre pour vérifier la validité de la configuration sans affecter le système réel.

Intégration avec cron

logrotate est généralement exécuté automatiquement chaque jour via le script `/etc/cron.daily/logrotate`. Ce script lit le fichier `/etc/logrotate.conf` et traite toutes les tâches de rotation de journaux configurées.


Commandes de la même catégorie