web-dev-qa-db-fra.com

Quelle est l'utilisation de systemd-journal-flush.service?

Cela ralentit le temps de démarrage de mon système.

Puis-je le désactiver?

Que se passera-t-il si je le désactive au démarrage?

J'utilise Ubuntu version 18.04.

6
vivek

systemd-journal-flush.service demande au démon de journal de vider toutes les données de journal stockées dans/run/log/journal dans/var/log/journal, si le stockage persistent est activé. Si vous avez (déjà) d’énormes fichiers journaux, le démarrage sera plus lent. De plus, le disque (avec /var/log) doit être monté dans un mode inscriptible pour pouvoir le faire.

En résumé: d’anciens anciens fichiers d’enregistrement volumineux, qui sont vérifiés au démarrage et l’ajout de nouvelles données de journal ralentit le démarrage.

Pour vérifier le type de taille du journal journalctl

journalctl --disk-usage

Afin d’obtenir les informations de temps et d’espace disque du traitement de vidage, entrez la commande suivante

journalctl -b --unit systemd-journald

La sortie correspondante ressemblera à

-- Logs begin at Sat 2018-12-08 00:40:23 CET, end at Mon 2018-12-10 19:40:27 CET. --
Dec 10 12:51:38 ubuntu01 systemd-journald[479]: Journal started
Dec 10 12:51:38 ubuntu01 systemd-journald[479]: Runtime journal (/run/log/journal/265c93c062bf4c8da41abfe2ae793452) is 4.7M, max 38.3M, 33.5M free.
Dec 10 12:51:38 ubuntu01 systemd-journald[479]: Time spent on flushing to /var is 7.066904s for 132 entries.
Dec 10 12:51:38 ubuntu01 systemd-journald[479]: System journal (/var/log/journal/265c93c062bf4c8da41abfe2ae793452) is 128.0M, max 256.0M, 128M free.


Tu peux soit

  • Désactiver le service (non recommandé)

    Il est alors possible que toutes les données de journal ne soient pas écrites sur le disque; ennuyeux lors du débogage des erreurs de démarrage.


  • Utilisez une commande journalctl --vacuum

    De journalctl -h

    --vacuum-size = BYTES Réduit l'utilisation du disque en dessous de la taille spécifiée
    - vacuum-files = INT Laissez uniquement le nombre spécifié de fichiers journaux
    - vacuum-time = TIME Supprimer les fichiers journaux plus anciens que l'heure spécifiée

    D'où un

     Sudo journalctl --vacuum-size=1G --vacuum-time=5d --vacuum-files=5
    


  • Changer le type de stockage de systemd-journal-flush.service

    Vérifiez d'abord votre type de stockage avec

     systemctl cat systemd-journal-flush.service  | grep -i storage
    

    De man journald.conf

    Stockage =

    Contrôle où stocker les données du journal. Un de "volatile", "persistant", "auto" et "aucun".

    Si "volatile", les données du journal du journal seront uniquement stockées en mémoire, c'est-à-dire en dessous de la hiérarchie/run/log/journal (qui est créée si nécessaire).

    Si "persistant", les données seront stockées de préférence sur le disque, c'est-à-dire sous la hiérarchie/var/log/journal (créée le cas échéant), avec un repli sur/run/log/journal (qui est créé si nécessaire), au démarrage initial et si le disque n’est pas accessible en écriture.

    "auto" est similaire à "persistent", mais le répertoire/var/log/journal n'est pas créé si nécessaire, de sorte que son existence contrôle l'emplacement où les données du journal vont.

    "none" désactive tout le stockage, toutes les données de journal reçues seront supprimées. Le transfert vers d'autres cibles, telles que la console, le tampon de journal du noyau ou un socket syslog fonctionnera toujours. La valeur par défaut est "auto".

    Éditer le fichier

    Sudo nano /etc/systemd/journald.conf
    

    Dans la section revue, commentez et modifiez:

    Storage=auto
    SystemMaxFileSize=1G
    SystemMaxFiles=5
    

    Enregistrer et redémarrer.


4
abu_bua

Selon ce message de la page d'accueil du développeur systemd , vous pouvez le réparer en modifiant le fichier d'unité .

Pour ce faire, ouvrez /lib/systemd/system/systemd-journal-flush.service, par exemple

Sudo vim /lib/systemd/system/systemd-journal-flush.service

et changez le avant la dépendance de

 Before=systemd-user-sessions.service systemd-tmpfiles-setup.service

 à

 Before=systemd-tmpfiles-setup.service

Ce correctif sera automatiquement modifié pour les versions de systemd>  v240.

N'oubliez pas de sauvegarder le fichier.

2
abu_bua