SystemD-Analyze - Trouver des statistiques de performances de démarrage du système dans Linux

SystemD-Analyze - Trouver des statistiques de performances de démarrage du système dans Linux

Utilisez-vous SystemD System and Service Manager, et votre système Linux prenant plus de temps pour démarrer ou vous souhaitez voir les rapports des performances de démarrage de votre système? Si oui, vous avez atterri au bon endroit.

Dans cet article, nous vous montrerons comment analyser les statistiques des performances de démarrage du système Linux en utilisant systemd-analyze, l'un des nombreux utilitaires sous Systemd pour la gestion du système.

Lire aussi: Comment contrôler les services SystemD sur le serveur Linux distant

Pour obtenir un aperçu du temps de démarrage du système, nous pouvons exécuter systemd-analyze commande sans aucun argument comme suit. Il répertorie les informations sur le temps que chaque service a pris au démarrage, ce qui comprend le temps pris par le noyau, l'initrd et l'espace utilisateur lors du démarrage.

# systemd-analyse Startup terminée en 884 ms (noyau) + 3.861s (initrd) + 48.356s (espace utilisateur) = 53.102 

Si vous souhaitez afficher une liste de toutes les unités de course, triée au moment où ils ont pris l'initialisation (temps le plus élevé en haut), le sous-commande de blâme est utilisé à cet effet. Après avoir exécuté la commande qui suit, utilisez [Entrer] Pour afficher plus de services dans la liste et q quitter.

# blâme systemd-analyse 
Découvrez le temps que chaque unité a pris pour commencer
 16.159S Mariadb.Service 12.178S libvirtd.Service 10.298S à l'écoute.Service 9.836S Postfix.service 8.704S LSW.Service 7.352S LSCPD.service 4.988S [Protégé par e-mail] 4.779S NetworkManager-wait-online.service 4.577S LVM2-moniteur.service 4.439S ModemManager.service 4.413S Polkit.service 4.280S DEV-SDA1.dispositif 4.225S Systemd-Udev-Settle.Service 3.Pare-feu 957S.Service 3.227S RHEL-DMESG.Service 3.221s Abrt-CCPP.Service 3.142S RSYSLOG.Service 3.053s avahi-daemon.Service 3.042s Pure-FTPD.Service 2.249S GSSPROXY.Service 2.212S NetworkManager.Service 1.889S Proc-Fs-NFSD.mont 1.780S Systemd-TmpFiles-Settup-DEV.Service 1.451S SSHD.Service 1.267S RHEL-READONNELLEMENT.Service 1.035S Sysstat.Service 1.001S RPC-STATD-NOTIFY.service 910ms systemd-logind.service 739ms kdump.Service 738 ms Réseau.service… 

Comme vous pouvez le voir sur la sortie ci-dessus que chaque unité est triée en fonction du temps pris, vous pouvez simplement découvrir quel service prend plus de temps tout en démarrant et analyser le problème.

Ensuite, nous pouvons également afficher un arbre de la chaîne critique pour la cible par défaut ou une liste des unités spécifiées avec le sous-commande de la chaîne critique comme indiqué.

# Systemd-Analyze Chain critique 
Imprimez la chaîne critique pour la cible par défaut
Le temps après l'unité de l'unité ou le démarrage est imprimé après le caractère "@". Le temps que l'unité prend pour démarrer est imprimé après le caractère "+". multi-utilisateurs.cible @ 48.342S └fique.service @ 31.560S +16.159S └─Network.cible @ 31.558S └─Network.service @ 30.819s + 738 ms └─NetworkManager-wait-online.service @ 26.035S +4.779S └─NetworkManager.service @ 23.821S +2.212S └─Network-pre.cible @ 23.821s └fiqueswalld.service @ 19.863s +3.957S └─Polkit.service @ 15.381S +4.413S └─ Basique.cible @ 12.271S └dres-coffre.cible @ 12.271S └fiqueVirtlockd.prise @ 12.270S └─Sysinit.cible @ 12.251s └─Systemd-update-utMP.service @ 12.196S + 54 ms └til auditd.service @ 11.705S + 486ms └─Systemd-tmpfiles-setup.service @ 11.609s + 93 ms └─Rhel-Import-State.service @ 11.397s + 211 ms └─Local-fs.cible @ 11.363S └fiquesr-user-0.monter @ 46.910S └─Local-fs-pre.cible @ 10.575S └fiqueslvm2-moniteur.service @ 5.996S +4.577S └fiqueslvm2-lvmetad.service @ 7.376S └fiqueslvm2-lvmetad.prise @ 5.987S └─-.tranche 
# Systemd-Analyze NTP dans la chaîne critique.réseau de services.service 

Enfin, examinons un autre sous-commande important qui permet de produire des détails graphiques (format SVG) des services système qui ont été démarrés, et à quelle heure, mettant en évidence leur temps d'initialisation, comme suit.

Assurez-vous que le mode d'affichage graphique ou X-Windows est activé afin d'afficher le tracé.

# Plot SystemD-Analyze> boot_analysis.SVG # xviewer boot_analysis.SVG 
Analyse de démarrage Linux

Toutes les commandes ci-dessus imprimeront les statistiques de performances de démarrage pour la machine locale. Pour afficher les informations d'un hôte distant sur ssh, Utilisez le -H signalez et spécifiez le [Protégé par e-mail] directive, comme indiqué.

# Systemd-Analyze Time -H [Protégé par e-mail] # Systemd-Analyze Blame -H [Protégé par e-mail] # SystemD-Analyze Critique-Chain -h [Protégé par e-mail] 

systemd-analyze Peut également être utilisé pour trouver d'autres informations d'état et de traçage du système et du SystemD (Service Manager) et plus. Pour plus d'informations, consultez sa page homme.

# man systemd-analyse 

Lire aussi: Comment modifier les niveaux d'usine (cibles) dans SystemD

C'est tout pour le moment! Si vous avez des questions ou pensé à partager, utilisez le formulaire de rétroaction ci-dessous pour nous joindre.