systemd-analyze - Finndu tölfræði um ræsingu kerfis í Linux


Ertu að nota kerfis- og þjónustustjóra og Linux kerfið þitt tekur lengri tíma að ræsa eða vilt þú einfaldlega skoða skýrslur um ræsingu kerfisins þíns? Ef já, hefur þú lent á réttum stað.

Í þessari grein munum við sýna þér hvernig á að greina tölfræði um ræsingu á Linux kerfi með því að nota systemd-analyze, eitt af fjölmörgum tólum undir systemd fyrir kerfisstjórnun.

Til að fá yfirsýn yfir ræsingartíma kerfisins getum við keyrt systemd-analyze skipunina án nokkurra röksemda sem hér segir. Það mun skrá upplýsingar um hversu mikinn tíma hver þjónusta tók að ræsa, sem felur í sér tíma sem tók kjarna, initrd og notendarými við ræsingu.

# systemd-analyze

Startup finished in 884ms (kernel) + 3.861s (initrd) + 48.356s (userspace) = 53.102s

Ef þú vilt skoða lista yfir allar hlaupandi einingar, raðað eftir þeim tíma sem þær tóku að frumstilla (hæsti tíminn efst), er sök undirskipunin notuð í þessu skyni. Eftir að hafa keyrt skipunina sem fylgir skaltu nota [Enter] til að skoða fleiri þjónustur á listanum og q til að hætta.

# systemd-analyze blame 
         16.159s mariadb.service
         12.178s libvirtd.service
         10.298s tuned.service
          9.836s postfix.service
          8.704s lsws.service
          7.352s lscpd.service
          4.988s [email 
          4.779s NetworkManager-wait-online.service
          4.577s lvm2-monitor.service
          4.439s ModemManager.service
          4.413s polkit.service
          4.280s dev-sda1.device
          4.225s systemd-udev-settle.service
          3.957s firewalld.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.mount
          1.780s systemd-tmpfiles-setup-dev.service
          1.451s sshd.service
          1.267s rhel-readonly.service
          1.035s sysstat.service
          1.001s rpc-statd-notify.service
           910ms systemd-logind.service
           739ms kdump.service
           738ms network.service
...

Eins og þú sérð af ofangreindu framtaki að hver eining er flokkuð út frá þeim tíma sem það tekur, getur þú einfaldlega fundið út hvaða þjónusta tekur lengri tíma meðan þú ræsir og greint málið.

Næst getum við líka skoðað tré tímamikilvægu keðjunnar fyrir sjálfgefið markmið eða lista yfir tilgreindar einingar með undirskipuninni mikilvæga keðju eins og sýnt er.

# 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.

multi-user.target @48.342s
└─mariadb.service @31.560s +16.159s
  └─network.target @31.558s
    └─network.service @30.819s +738ms
      └─NetworkManager-wait-online.service @26.035s +4.779s
        └─NetworkManager.service @23.821s +2.212s
          └─network-pre.target @23.821s
            └─firewalld.service @19.863s +3.957s
              └─polkit.service @15.381s +4.413s
                └─basic.target @12.271s
                  └─sockets.target @12.271s
                    └─virtlockd.socket @12.270s
                      └─sysinit.target @12.251s
                        └─systemd-update-utmp.service @12.196s +54ms
                          └─auditd.service @11.705s +486ms
                            └─systemd-tmpfiles-setup.service @11.609s +93ms
                              └─rhel-import-state.service @11.397s +211ms
                                └─local-fs.target @11.363s
                                  └─run-user-0.mount @46.910s
                                    └─local-fs-pre.target @10.575s
                                      └─lvm2-monitor.service @5.996s +4.577s
                                        └─lvm2-lvmetad.service @7.376s
                                          └─lvm2-lvmetad.socket @5.987s
                                            └─-.slice
# systemd-analyze critical-chain ntp.service networking.service

Að lokum skulum við skoða enn eina mikilvæga undirskipun sem gerir kleift að búa til grafískar (svg snið) upplýsingar um kerfisþjónustur sem hafa verið ræstar, og á hvaða tíma, með áherslu á upphafstíma þeirra, eins og hér segir.

Gakktu úr skugga um að grafísk skjástilling eða x-windows sé virkjuð til að skoða söguþráðinn.

# systemd-analyze plot > boot_analysis.svg
# xviewer boot_analysis.svg  

Allar ofangreindar skipanir munu prenta frammistöðutölfræði um ræsingu fyrir staðbundna vélina. Til að skoða upplýsingar frá ytri hýsingaraðila yfir ssh, notaðu -H fánann og tilgreindu [email  tilskipunina, eins og sýnt er.

# systemd-analyze time -H [email 
# systemd-analyze blame -H [email 
# systemd-analyze critical-chain -H [email 

systemd-analyze er einnig hægt að nota til að finna aðrar upplýsingar um ástand og rekja úr kerfinu og systemd (þjónustustjóri) og fleira. Fyrir frekari upplýsingar, sjáðu mannasíðu þess.

# man systemd-analyze 

Það er það í bili! Ef þú hefur einhverjar spurningar eða hugsar til að deila, notaðu athugasemdareyðublaðið hér að neðan til að ná í okkur.