Systemd-Analyze-Encontre estatísticas de desempenho de inicialização do sistema no Linux

Systemd-Analyze-Encontre estatísticas de desempenho de inicialização do sistema no Linux

Você está usando o Systemd System and Service Manager, e seu sistema Linux demorando mais tempo para inicializar ou você deseja ver os relatórios do seu desempenho de inicialização do sistema? Se sim, você pousou no lugar certo.

Neste artigo, mostraremos como analisar uma estatística de desempenho de inicialização do sistema Linux usando Systemd-analisado, um dos numerosos utilitários sob o SystemD para gerenciamento de sistemas.

Leia também: Como controlar os serviços do Systemd no servidor Linux Remote

Para obter uma visão geral do tempo de inicialização do sistema, podemos executar Systemd-analisado comando sem nenhum argumento da seguinte maneira. Ele listará informações sobre quanto tempo cada serviço levou para começar, que inclui tempo gasto pelo kernel, initrd e Usuários Space enquanto inicializa.

# Systemd-analyze Startup terminado em 884ms (kernel) + 3.861s (initrd) + 48.356s (Usuáriospace) = 53.102s 

Se você deseja visualizar uma lista de todas as unidades em execução, classificadas no momento em que tomaram para inicializar (o mais alto tempo no topo), o subcomando da culpa é usado para esse fim. Depois de executar o comando a seguir, use [Digitar] Para ver mais serviços na lista e q para sair.

# systemd-analyze culpa 
Descubra o tempo que cada unidade levou para começar
 16.159S MARIADB.Serviço 12.178S LibVirtd.Serviço 10.298s sintonizados.Serviço 9.836S Postfix.Serviço 8.704S LSWS.Serviço 7.352S LSCPD.Serviço 4.988S [Email Protected] 4.779S NetworkManager-Wait-Online.Serviço 4.577S LVM2-Monitor.Serviço 4.439S ModemManager.Serviço 4.413S Polkit.Serviço 4.280S dev-sda1.dispositivo 4.225S SystemD-Udev-Settle.Serviço 3.957S Firewalld.Serviço 3.227S RHEL-DMESG.Serviço 3.221S ABRT-CCPP.Serviço 3.142S RSYSLOG.Serviço 3.053S Avahi-Daemon.Serviço 3.042S puro-ftpd.Serviço 2.249S GSSProxy.Serviço 2.212s NetworkManager.Serviço 1.889s proc-fs-nfsd.Monte 1.780S Systemd-tmpfiles-setup-dev.Serviço 1.451S SSHD.Serviço 1.267S RHEL-READONLY.Serviço 1.035S SYSSTAT.Serviço 1.001S RPC-STATD-Notify.Serviço 910ms Systemd-Logind.Serviço 739ms Kdump.Rede 738MS de serviço.serviço… 

Como você pode ver na saída acima que cada unidade é classificada com base no tempo gasto, você pode simplesmente descobrir qual serviço está levando mais tempo enquanto inicializa e analisa o problema.

Em seguida, também podemos ver uma árvore da cadeia crítica do tempo para o alvo padrão ou uma lista de unidades especificadas com o subcomando de cadeia crítica, como mostrado.

# Systemd-analisada Chain Crítica 
Cadeia crítica de impressão para o alvo padrão
O horário após a unidade estiver ativo ou iniciado é impresso após o caractere "@". O tempo que a unidade leva para iniciar é impressa após o caractere "+". multi usuário.Target @48.342S └─MariAdb.Serviço @31.560S +16.159S └─NETWORK.Target @31.558S └─NETWORK.serviço @30.819S +738ms └─NETWORKMANAGER-WAIT-ONLINE.Serviço @26.035S +4.779S └─NETWORKMANAGER.serviço @23.821s +2.212S └─NETWORK-PRE.Target @23.821S └─Firewalld.serviço @19.863s +3.957S └─ Polkit.serviço @15.381s +4.413S └─ Basic.Target @12.271s └─ sockets.Target @12.271S └─ Virtlockd.soquete @12.270s └─ sysinit.Target @12.251S └─SystemD-UpDate-UTMP.serviço @12.196S +54ms └─uditd.serviço @11.705s +486ms └─Systemd-tmpfiles-setup.serviço @11.609s +93ms └─rhel-import-state.serviço @11.397S +211ms └─Local-Fs.Target @11.363s └─run-user-0.montagem @46.910S └─LOCAL-FS-PRE.Target @10.575S └─LVM2-Monitor.serviço @5.996S +4.577S └─LVM2-LVMETAD.serviço @7.376S └─LVM2-LVMETAD.soquete @5.987S └─-.fatiar 
# systemd-analis.Rede de serviço.serviço 

Por fim, vejamos mais um subcomando importante que permite a produção de detalhes gráficos (formato SVG) dos serviços do sistema que foram iniciados e a que horas, destacando seu tempo de inicialização, como segue.

Verifique se o modo de exibição gráfico ou a Windows está ativado para visualizar o gráfico.

# Systemd-analyze plot> boot_analysis.SVG # xViewer boot_analysis.svg 
Análise de inicialização do Linux

Todos os comandos acima imprimirão as estatísticas de desempenho de inicialização para a máquina local. Para visualizar informações de um host remoto sobre ssh, use o -H sinalizar e especificar o [Email protegido] diretiva, como mostrado.

# systemd-analyze time -h [email protegido] # systemd-analyze culpa -h [email protegido] # systemd-analyze cadeia crítica -h [email protegido] 

Systemd-analisado também pode ser usado para encontrar outras informações de estado e rastreamento do sistema e SystemD (gerente de serviço) e mais. Para mais informações, consulte sua página de homem.

# man systemd-analyze 

Leia também: Como alterar os níveis de execução (metas) no Systemd

É isso por agora! Se você tiver alguma dúvida ou pensar em compartilhar, use o formulário de feedback abaixo para alcançar -nos.