Logo

Systemd-analyze

Systemd-analyze je nástroj pro analýzu a ladění správce systému. Může být využit ke zjištění výkonu spouštění systému a trasuje informace ze systému a správce služeb. Z mého pohledu je to přímo dokonalý nástroj pro ladění, detekci a porovnávání spouštění systému, celého PC i služeb

Něco z manuálu

systemd-analyze  [OPTIONS...] [time]
systemd-analyze  [OPTIONS...]  blame 
systemd-analyze  [OPTIONS...]  critical-chain  [UNIT...]
systemd-analyze  [OPTIONS...]  dump 
systemd-analyze  [OPTIONS...]  plot  [>file.svg]
systemd-analyze  [OPTIONS...]  dot  [PATTERN...] [>file.dot]
systemd-analyze  [OPTIONS...]  unit-paths 
systemd-analyze  [OPTIONS...]  exit-status  [STATUS...]
systemd-analyze  [OPTIONS...]  capability  [CAPABILITY...]
systemd-analyze  [OPTIONS...]  condition   CONDITION… 
systemd-analyze  [OPTIONS...]  syscall-filter  [SET…]
systemd-analyze  [OPTIONS...]  calendar   SPEC... 
systemd-analyze  [OPTIONS...]  timestamp   TIMESTAMP... 
systemd-analyze  [OPTIONS...]  timespan   SPAN... 
systemd-analyze  [OPTIONS...]  cat-config   NAME|PATH... 
systemd-analyze  [OPTIONS...]  verify  [FILE...]
systemd-analyze  [OPTIONS...]  security   UNIT... 

Cli analýza

Pomocí samotného příkazu systemd-analyze se dozvíme dobu spouštění PC firmware, loaderu, kernelu, uživatelského prostředí.

systemd-analyze Startup finished in 12.681s (firmware) + 678ms (loader) + 2.086s (kernel) + 2.674s (userspace) = 18.119s graphical.target reached after 2.674s in userspace

blame

Pomocí parametru blame získáme výpis služeb a jejich dobu spuštění.

systemd-analyze blame

plot

Vykreslí a vytrasuje pomocí škálovatelné grafiky průběh zapínání PC. Příkaz může být následující:

systemd-analyze plot > spusteni.svg

Ukázky svg plotů

Zajímají mne pouze časy a přibližná orientace v údajích, příklady níže mohou být ořízlé a nekompletní, nicméně to podstatné si drží – a to je čas. Některé ukázky jsou natolik velké a dlouhé, že jsem vyzdvihl pouze koncový čas, kdy PC plně naběhl.

Na obrázcích nezohledňuji tzv. loader a dobu, kdy se spouští samotný HW počítače. Dění se odehrává zejména od zavaděče a značí dobu naběhnutí samotného OS až do úplného konce v grafickém prostředí.

Arch Linux jednoduchý desktop pro uživatele ve VirtualBoxu na NTB s procesorem Core i5, 8GB RAM, SSD – obrázek značí spuštění za 4 sekundy
Arch Linux a běžné i serverové služby na stolním PC Intel Xeon E3-1200 v3, 16GB RAM, SSD – obrázek značí spuštění za 4 sekundy
OpenSUSE jako server ve VirtualBoxu na NTB s procesorem Core i5, 8GB RAM, SSD – obrázek značí spuštění za 32 sekund
OpenSUSE jako server na PC Dell 8GB RAM, 2x 7200rpm, RAID – obrázek značí spuštění za 61 sekund

Mohu prohlásit, že OS Linux nabíhá na počítačích zhruba od 4 sekund až po minutu a v některých případech i téměř dvě minuty.