Comment effacer les journaux de journal Systemd

Ce didacticiel rapide vous montre deux façons d’effacer les journaux de journal systemd de votre système Linux.

Le journal systemd est le propre système de journalisation de systemd. C’est l’équivalent de syslog dans le système init . Il collecte et stocke les données de journalisation du noyau, les messages du journal système, la sortie standard et les erreurs pour divers services systemd.

Une machine Linux avec systemd écrit les journaux dans le répertoire /var/log/journal. Si vous vous souvenez de la structure des répertoires Linux , /var est l’endroit où les journaux système sont stockés.

Vous pouvez soit afficher manuellement les fichiers journaux à l’ aide de la commande less, soit utiliser la commande journalctl . Pour afficher tous les derniers journaux, utilisez la commande avec l’option reverse.

journalctl -r

Le truc avec la journalisation, c’est qu’avec le temps, ça commence à grossir. Et si vous vérifiez l’espace disque sous Linux , vous verrez que parfois, cela prend plusieurs Go d’espace.

Laissez-moi vous montrer comment nettoyer les journaux de journal systemd et libérer de l’espace disque sur votre système Linux.

Effacement des journaux de journal systemd

Tout d’abord, vérifiez l’espace occupé par les logs du journal avec la commande du :

du -sh /var/log/journal/

Vous pouvez également utiliser la commande journalctl pour la même tâche :

journalctl --disk-usage

Les deux commandes devraient donner approximativement le même résultat :

abhishek@linuxhandbook:~$ journalctl --disk-usage
Archived and active journals take up 1.6G in the file system.

abhishek@linuxhandbook:~$ sudo du -sh /var/log/journal/
1.7G	/var/log/journal/

Maintenant que vous savez combien d’espace les journaux de journal occupent, vous pouvez décider si vous souhaitez effacer les journaux ou non. Si vous décidez d’effacer les journaux du journal, laissez-moi vous montrer quelques façons de le faire.

READ  Tutoriel pour ajouter une encoche de style MacBook dans GNOME 40 (Ubuntu 21.10)

Vous pouvez, bien sûr, utiliser la commande rm pour supprimer les fichiers du dossier log, mais je ne le conseillerai pas. La commande journalctl vous donne la bonne façon de gérer les anciens journaux.

La première chose à faire est de faire pivoter les fichiers journaux. Cela marquera les journaux de journal actuellement actifs comme archives et créera de nouveaux journaux. C’est facultatif mais c’est une bonne pratique de le faire.

sudo journalctl --rotate

Vous avez maintenant trois façons d’effacer les anciens journaux de journal. Vous supprimez les journaux antérieurs à un certain temps, ou vous supprimez des fichiers journaux plus anciens afin que la taille totale du journal soit limitée à l’espace disque prédéfini, ou vous limitez le nombre de fichiers journaux. Voyons comment utiliser les trois méthodes.

1. Effacer le journal de plus de x jours

Gardez à l’esprit que les journaux sont importants à des fins d’audit, vous ne devez donc pas tous les supprimer en même temps. Supposons que vous souhaitiez conserver l’historique du journal de seulement deux jours. Pour supprimer toutes les entrées de plus de deux jours, utilisez cette commande :

sudo journalctl --vacuum-time=2d

Voici à quoi la sortie peut ressembler :

Vacuuming done, freed 1.6G of archived journals from /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c

Vous pouvez également modifier le délai de fourniture en heures comme 2h, en minutes comme 2m, en secondes comme 2s. Si vous voulez des unités de temps plus grandes, vous pouvez également 2 semaines, 2 mois.

2. Limitez les journaux à une certaine taille

Une autre méthode consiste à limiter la taille du journal. Cela supprimera les fichiers journaux du journal jusqu’à ce que l’espace disque occupé par les journaux du journal tombe en dessous de la taille que vous avez spécifiée.

sudo journalctl --vacuum-size=100M

Cela réduira la taille du journal à environ 100 Mo.

Vacuuming done, freed 40.0M of archived journals from /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c.

Vous pouvez spécifier la taille en Go avec G, Mo avec M, Ko avec K etc.

READ  Les meilleures distributions Linux qui conviennent le mieux aux débutants

3. Limiter le nombre de fichiers journaux

La troisième méthode consiste à limiter le nombre de fichiers journaux. Le journalctl a généralement des fichiers journaux pour le système et pour les utilisateurs. Au fur et à mesure que les journaux vieillissent, ils sont archivés dans divers fichiers.

Vous pouvez limiter le nombre de fichiers journaux d’archivage. Supposons que vous souhaitiez n’avoir que cinq fichiers journaux.

journalctl --vacuum-files=5

Il supprimera les anciens fichiers journaux d’archivage en ne laissant que le nombre spécifié de fichiers journaux.

Deleted archived journal /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c/system@d9fbc18533be4cb69483adf2a61505ac-00000000001e0bba-00059745988c0982.journal (8.0M).
Deleted archived journal /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c/user-1000@f571e91e5c6748a8a74666a448df78dd-00000000001e21d4-00059747a2ebd5a3.journal (48.0M).
Deleted archived journal /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c/system@d9fbc18533be4cb69483adf2a61505ac-00000000001e2414-00059747a32024d0.journal (48.0M).
Vacuuming done, freed 104.0M of archived journals from /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c.

Effacement automatique des anciens fichiers journaux [Nécessite une connaissance intermédiaire de la ligne de commande]

Ce que vous venez de faire va nettoyer les fichiers journaux pour le moment. Dans un mois, les journaux augmenteront à nouveau. Vous pouvez les nettoyer manuellement avec l’une des méthodes décrites ci-dessus. Mais c’est une tâche fastidieuse et vous ne vous souvenez peut-être pas de le faire régulièrement.

La bonne chose est que vous pouvez configurer systemd pour gérer automatiquement les anciens fichiers journaux.

Le journalctl a un fichier de configuration dans /etc/systemd/journald.conf. Il y a des paramètres qui sont commentés. Les lignes commentées indiquent essentiellement la valeur par défaut de ces paramètres de réglage (même s’ils sont commentés).

Vous pouvez modifier certains de ces paramètres par défaut pour nettoyer automatiquement les fichiers journaux.

Vous souhaitez modifier les paramètres suivants :

ParamètreLa description
SystemMaxUseLes journaux d’espace disque maximum peuvent prendre
SystemMaxFileSizeTaille maximale d’un fichier journal INDIVIDUEL
SystemMaxFilesNombre maximum de fichiers journaux

Attention!

READ  Comment créer et exécuter votre premier script shell Bash

Veuillez noter que vous devez être prudent lors de la modification des fichiers de configuration. Vous devez être à l’aise avec un éditeur de texte basé sur un terminal comme Vim, Emacs ou Nano afin de ne pas faire d’erreurs stupides lors de l’édition du fichier conf.

Je conseille de faire d’abord une sauvegarde du fichier de configuration :

cp /etc/systemd/journald.conf /etc/systemd/journald.conf.back

Maintenant, vous devez décommenter (supprimer le # au début de la ligne) le paramètre que vous souhaitez utiliser. Par exemple, je souhaite limiter l’espace disque maximal occupé par les fichiers journaux à 250 Mo.

Vous devrez utiliser Vim ou un autre éditeur basé sur un terminal pour éditer ce fichier de configuration. Voici à quoi ça ressemble après avoir édité le fichier.

#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See journald.conf(5) for details.

[Journal]
#Storage=auto
#Compress=yes
#Seal=yes
#SplitMode=uid
#SyncIntervalSec=5m
#RateLimitIntervalSec=30s
#RateLimitBurst=1000
SystemMaxUse=250M
#SystemKeepFree=
#SystemMaxFileSize=
#SystemMaxFiles=100

Gardez à l’esprit qu’après avoir modifié le fichier de configuration, vous devez charger les modifications :

sudo systemctl restart systemd-journald

Le fichier journald.conf peut être utilisé pour ajuster encore plus les paramètres de journalctl. Vous pouvez même définir les niveaux de journal (info, débogage, erreur, etc.) que vous souhaitez voir. C’est à vous de décider si vous souhaitez également modifier ces paramètres.

J’espère que vous aimez cette astuce pour effacer les fichiers journaux du journal systemd. Si vous avez des questions ou des suggestions, veuillez laisser un commentaire ci-dessous.

5/5 - (1 vote)
SAKHRI Mohamed
SAKHRI Mohamed

Le blog d'un passionné d'informatique qui partage des actualités, des tutoriels, des astuces, des outils en ligne et des logiciels pour Windows, macOS, Linux, Web designer et jeux vidéo.

Publications: 3732

Laisser un commentaire

Your email address will not be published.