GNU/Linux >> Tutoriels Linux >  >> Linux

Exemples de commande systemd-analyze sous Linux

La commande systemd-analyze est utilisée pour récupérer les statistiques de performances des opérations de démarrage. La commande prend une ou plusieurs sous-commandes qui déterminent le type d'informations à imprimer et comment. Pour la gestion des processus et le dépannage, le blâme est la sous-commande la plus pertinente. Cela imprimera une liste de toutes les unités systemd qui ont été exécutées au démarrage, ainsi que le temps qu'il a fallu à chaque unité pour s'exécuter. Vous pouvez utiliser systemd-analyze blâmer pour identifier les services et autres unités qui ralentissent le démarrage du système.

Syntaxe

La syntaxe de la commande systemd-analyze est :

# systemd-analyze [options] [subcommand]

La commande systemd-analyze peut être utilisée pour obtenir des informations sur la durée de démarrage de chaque service. systemd-analyze time peut fournir des informations générales sur le temps qu'il a fallu au système pour démarrer. Voici une commande out qui montre clairement le temps pris par le noyau, initrd et l'espace utilisateur lors du démarrage.

# systemd-analyze time
Startup finished in 1.267s (kernel) + 6.798s (initrd) + 1min 2.139s (userspace) = 1min 10.205s

Pour savoir combien de temps chaque unité a mis à démarrer, exécutez systemd-analyze blame.

# systemd-analyze blame
         24.728s dev-mapper-centosx2droot.device
         15.135s kdump.service
         14.670s plymouth-quit-wait.service
         14.210s firewalld.service
          9.835s accounts-daemon.service
          7.383s ModemManager.service
          7.259s libvirtd.service
          7.257s systemd-logind.service
          7.177s ksm.service
          7.081s gssproxy.service
          7.067s avahi-daemon.service
          7.062s rsyslog.service
          7.039s abrt-ccpp.service

Comme vous voyez que la sortie est triée en fonction du temps pris par chaque unité, vous pouvez facilement savoir quel service prend le plus de temps lors du démarrage et creuser plus profondément pour analyser le problème.

À certaines étapes, le démarrage ne peut pas se poursuivre tant que toutes les dépendances de l'unité ne sont pas satisfaites. Pour voir les unités à ces points critiques, exécutez systemd-analyze critic-chain.

# systemd-analyze critical-chain
The time after the unit is active or started is printed after the "@" character.
The time the unit takes to start is printed after the "+" character.

graphical.target @1min 2.102s
└─multi-user.target @1min 2.102s
  └─abrt-vmcore.service @1min 1.228s +872ms
    └─kdump.service @46.090s +15.135s
      └─remote-fs.target @46.086s
        └─remote-fs-pre.target @46.083s
          └─iscsi-shutdown.service @45.951s +99ms
            └─network.target @45.944s
              └─network.service @44.959s +975ms
                └─NetworkManager.service @38.653s +689ms
                  └─firewalld.service @24.439s +14.210s
                    └─basic.target @23.850s
                      └─sockets.target @23.849s
                        └─cups.socket @23.847s
                          └─sysinit.target @23.618s
                            └─systemd-update-utmp.service @23.603s +13ms
                              └─auditd.service @22.959s +643ms
                                └─systemd-tmpfiles-setup.service @22.726s +230ms
                                  └─rhel-import-state.service @22.431s +294ms
                                    └─local-fs.target @22.428s
                                      └─boot.mount @19.675s +2.126s
                                        └─dev-disk-byx2duuid-7de2053cx2d44d7x2d4f33x2db522x2d81dee2f6b69b.device @19.652s

L'image graphique SVG peut être un tracé contenant des détails sur l'heure de démarrage des services système, mettant en évidence le temps passé à l'initialisation. Assurez-vous d'avoir activé le mode d'affichage graphique ou d'avoir activé x-windows afin de voir le tracé.

# systemd-analyze plot > plot.svg
# eog plot.svg

Voici un extrait d'un exemple de tracé sur ma machine CentOS 7. Zoomez pour vérifier clairement la cascade.

Exemples de commande systemd-analyze

1. Indiquez l'heure de démarrage de chaque unité :

# systemd-analyze blame

2. Imprimez une arborescence de la chaîne d'unités critiques :

# systemd-analyze critical-chain

3. Créez un fichier SVG indiquant le démarrage de chaque service système, en mettant en évidence le temps passé à l'initialisation :

# systemd-analyze plot > path/to/file.svg

4. Tracez un graphique de dépendance et convertissez-le en fichier SVG :

# systemd-analyze dot | dot -Tsvg > path/to/file.svg

5. Afficher les scores de sécurité des unités en cours :

# systemd-analyze security


Linux
  1. 7 Exemples de commandes Linux df

  2. Exemples de commandes sa sous Linux

  3. ac Exemples de commandes sous Linux

  4. Exemples de commandes df sous Linux

  5. du Exemples de commandes sous Linux

10 exemples de commandes iftop sous Linux

16 exemples de commandes Echo sous Linux

9 exemples de commandes tee sous Linux

9 exemples de commande diff sous Linux

Commande Linux ip avec exemples

Exemples de commandes id sous Linux