Como se certificar de que está causando um tempo de inicialização lento no Lubuntu?

2

Não tenho certeza do que conta inicializando lenta ou rapidamente no mundo Linux, mas parece que a máquina Lubuntu que tenho aqui ( especificações aqui ), parece estar inicializando um pouco lento (cerca de 50 segundos). Meus pais começaram a reclamar sobre a inicialização lenta e pensei em investigar.

O assistente de configuração do LXSession não mostrou nada que deva desacelerar a inicialização. Ele mostrou que os serviços a seguir começarão quando o computador estiver iniciando (o computador não está em inglês, então não tenho certeza se estou traduzindo corretamente): gerenciamento de energia, atualizador de software, serviço de rede, Screen Locker, atualizações de pastas de usuários Ônibus SPI D-Bus.

Então eu olhei para dmesg , acho que está mostrando o tempo de inicialização no começo da linha e vi alguns comportamentos estranhos:

[   21.827368] audit: type=1400 audit(1471992144.548:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/tcpdump" pid=1854 comm="apparmor_parser"
[   21.944457] audit: type=1400 audit(1471992144.668:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince" pid=1850 comm="apparmor_parser"
[   21.944478] audit: type=1400 audit(1471992144.668:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince//sanitized_helper" pid=1850 comm="apparmor_parser"
[   32.425176] IPv6: ADDRCONF(NETDEV_UP): enp0s25: link is not ready
[   32.892255] IPv6: ADDRCONF(NETDEV_UP): enp0s25: link is not ready
[   34.236909] e1000e: enp0s25 NIC Link is Up 100 Mbps Full Duplex, Flow Control: Rx/Tx
[   34.237022] e1000e 0000:00:19.0 enp0s25: 10/100 speed: disabling TSO
[   34.237060] IPv6: ADDRCONF(NETDEV_CHANGE): enp0s25: link becomes ready
[   42.868183] ata1.00: configured for UDMA/100
[   42.868192] ata1: EH complete

Então, por algum motivo, no vigésimo segundo, ele simplesmente trava e começa a carregar o serviço IPv6 com o qual não tenho nada a ver. Poderia ser a razão por trás de inicialização lenta? E se sim, como eu poderia solucionar isso?

Estou pesquisando há algum tempo, mas não encontrei bons conselhos que me ajudassem. As coisas que eu tentei não resolveram o problema.

Eu ficaria grato se alguém me ajudasse a investigar o que está causando inicialização lenta nesta máquina Lubuntu.

Obrigado!

edit: Um usuário chamado eridani sugeriu que eu desse uma olhada em uma ferramenta chamada systemd-analyze , que pode me ajudar a descobrir o que atrasa o tempo de inicialização.
Aqui está a saída de um comando systemd-analyze plot > ~/Desktop/systemd.html : link para baixar (não foi possível encontrar uma maneira melhor de compartilhá-lo).

Outro comando sugerido no blog do Arch Linux foi systemd-analyze critical-chain e aqui está a saída dele:

~$ 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 @38.425s
└─multi-user.target @38.425s
  └─teamviewerd.service @36.611s +1.812s (displayed in red color)
    └─network-online.target @36.598s
      └─NetworkManager-wait-online.service @24.297s +12.301s (displayed in red color)
        └─NetworkManager.service @19.493s +4.785s (displayed in red color)
          └─dbus.service @15.022s
            └─basic.target @14.901s
              └─paths.target @14.901s
                └─systemd-networkd-resolvconf-update.path @14.901s
                  └─sysinit.target @14.869s
                    └─apparmor.service @6.651s +8.167s (displayed in red color)
                      └─local-fs.target @6.646s
                        └─run-user-1000.mount @34.907s
                          └─local-fs-pre.target @6.646s
                            └─systemd-remount-fs.service @6.533s +100ms (displayed in red color)
                              └─system.slice @1.934s
                                └─-.slice @1.851s

NetworkManager e apparmor.service parecem demorar um pouco para serem carregados. Eu poderia ajustar algo para que isso fosse carregado mais rápido?

Então, novamente, 44 segundos é um bom tempo de inicialização dadas as minhas especificações? Eu poderia de alguma forma baixar um pouco, usando alguma distro ainda mais leve (então, novamente, eu não quero perder tanta usabilidade também, dado que é o computador dos meus pais, a GUI Lubuntu atual é boa o suficiente, eu posso tentar o Xubuntu também ).

Obrigado pela ajuda.

edit2: Aparentemente, o comando disable na verdade não desabilitou o NetworkManager-wait-online.service , então usei os seguintes comandos:

systemctl disable NetworkManager-wait-online.service  
systemctl mask NetworkManager-wait-online.service

E obtive o tempo de inicialização do sistema a partir disso: Startup finished in 5.647s (kernel) + 38.452s (userspace) = 44.100s para isso: Startup finished in 5.487s (kernel) + 26.994s (userspace) = 32.481s . Embora, do ponto de vista psicológico, não pareça, são 12 segundos mais rápidos, mas se os números dizem isso, então não tenho nada para discutir.

E agora temos o apparmor.service restante, o que leva aproximadamente 10 segundos para carregar. Aqui está o comando atualizado de systemd-analyze critical-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 @26.958s
└─multi-user.target @26.958s
  └─ntp.service @26.590s +368ms (displayed in red)
    └─network-online.target @26.569s
      └─network.target @26.569s
        └─NetworkManager.service @23.537s +3.032s (displayed in red)
          └─dbus.service @16.973s
            └─basic.target @16.896s
              └─sockets.target @16.896s
                └─pcscd.socket @16.896s
                  └─sysinit.target @16.895s
                    └─apparmor.service @6.518s +10.348s (displayed in red)
                      └─local-fs.target @6.513s
                        └─local-fs-pre.target @6.456s
                          └─systemd-remount-fs.service @6.353s +88ms (displayed in red)
                            └─systemd-journald.socket @1.901s
                              └─-.mount @1.826s
                                └─system.slice @1.901s
                                  └─-.slice @1.826s

E a saída de systemd-analyze blame | head :

:~$ systemd-analyze blame | head
         10.348s apparmor.service
          9.634s dev-sda1.device
          7.510s ModemManager.service
          7.449s grub-common.service
          6.908s networking.service
          6.898s apport.service
          6.879s irqbalance.service
          6.791s systemd-logind.service
          6.724s ondemand.service
          6.595s alsa-restore.service

Útil usuário, eridani , solicitou a saída de dois comandos, o que pode me ajudar a solucionar a lentidão do apparmor.service e aqui estão elas:

~$ systemctl status apparmor
● apparmor.service - LSB: AppArmor initialization
   Loaded: loaded (/etc/init.d/apparmor; bad; vendor preset: enabled)
   Active: active (exited) since P 2016-08-28 20:00:10 EEST; 31min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 785 ExecStart=/etc/init.d/apparmor start (code=exited, status=0/SUCCESS)

    aug   28 19:59:59 dc7800 systemd[1]: Starting LSB: AppArmor initialization...
    aug   28 20:00:08 dc7800 apparmor[785]:  * Starting AppArmor profiles
    aug   28 20:00:09 dc7800 apparmor[785]: Skipping profile in /etc/apparmor.d/disable: usr.bin.firefox
    aug   28 20:00:09 dc7800 apparmor[785]: Skipping profile in /etc/apparmor.d/disable: usr.sbin.rsyslogd
    aug   28 20:00:10 dc7800 apparmor[785]:    ...done.
    aug   28 20:00:10 dc7800 systemd[1]: Started LSB: AppArmor initialization.

E outro:

:~$ journalctl |grep apparmor
aug   28 20:00:08 dc7800 apparmor[785]:  * Starting AppArmor profiles
aug   28 20:00:09 dc7800 audit[1849]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/sbin/dhclient" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 audit[1849]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 audit[1849]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/NetworkManager/nm-dhcp-helper" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 audit[1849]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/connman/scripts/dhclient-script" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 kernel: audit: type=1400 audit(1472403609.772:2): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/sbin/dhclient" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 kernel: audit: type=1400 audit(1472403609.772:3): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 kernel: audit: type=1400 audit(1472403609.772:4): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/NetworkManager/nm-dhcp-helper" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 kernel: audit: type=1400 audit(1472403609.772:5): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/connman/scripts/dhclient-script" pid=1849 comm="apparmor_parser"
aug   28 20:00:09 dc7800 audit[1848]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session" pid=1848 comm="apparmor_parser"
aug   28 20:00:09 dc7800 audit[1848]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session//chromium" pid=1848 comm="apparmor_parser"
aug   28 20:00:09 dc7800 apparmor[785]: Skipping profile in /etc/apparmor.d/disable: usr.bin.firefox
aug   28 20:00:09 dc7800 kernel: audit: type=1400 audit(1472403609.852:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session" pid=1848 comm="apparmor_parser"
aug   28 20:00:09 dc7800 kernel: audit: type=1400 audit(1472403609.852:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session//chromium" pid=1848 comm="apparmor_parser"
aug   28 20:00:09 dc7800 audit[1852]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/ntpd" pid=1852 comm="apparmor_parser"
aug   28 20:00:09 dc7800 apparmor[785]: Skipping profile in /etc/apparmor.d/disable: usr.sbin.rsyslogd
aug   28 20:00:09 dc7800 kernel: audit: type=1400 audit(1472403609.920:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/ntpd" pid=1852 comm="apparmor_parser"
aug   28 20:00:09 dc7800 audit[1854]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/tcpdump" pid=1854 comm="apparmor_parser"
aug   28 20:00:10 dc7800 kernel: audit: type=1400 audit(1472403609.996:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/tcpdump" pid=1854 comm="apparmor_parser"
aug   28 20:00:10 dc7800 audit[1850]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 audit[1850]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince//sanitized_helper" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 audit[1850]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince-previewer" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 audit[1850]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince-previewer//sanitized_helper" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 audit[1850]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince-thumbnailer" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 audit[1850]: AVC apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince-thumbnailer//sanitized_helper" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 kernel: audit: type=1400 audit(1472403610.068:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 kernel: audit: type=1400 audit(1472403610.072:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince//sanitized_helper" pid=1850 comm="apparmor_parser"
aug   28 20:00:10 dc7800 apparmor[785]:    ...done.

Estou tentando o Google também, mas eu gostaria de receber bons pensamentos por aqui também :) Obrigado por toda a ajuda, especialmente eridani !

    
por user3596479 24.08.2016 / 01:43

2 respostas

0

Bem, para colocar algumas coisas em perspectiva, eu tenho um sistema relativamente rápido (usando o Ubuntu) e ele é inicializado em cerca de 8 segundos (i7 a 3.6GHz, 16GB a 1866MHz e uma unidade M.2 que abriga a partição raiz). ).

As especificações da área de trabalho parecem relativamente baixas (1,8 GHz, 1 GB de Ram instalada a 667 MHz e uma HDD mais lenta que a média a 3 GBps). Você não vai conseguir tempos de carregamento fantásticos com este sistema. Agora lubuntu é mais leve que o Ubuntu, então deve ajudar, mas você ainda tem um pouco de carga na inicialização.

Da inspeção, parece que o seu ram pode ser um gargalo, com a velocidade do seu HDD. Estou imaginando que o seu indicador de acesso ao HDD está piscando muito em T: 21seg?

Você parece achar que nem sempre foi tão lento assim. Quanto mais serviços você adicionar, mais lentos serão os tempos de carregamento. Especialmente, também, se seu disco rígido estiver cheio, levará mais tempo para procurar e encontrar as informações.

Embora isso não resolva realmente o seu problema, ele ajudou a colocá-lo em perspectiva e mostra alguns possíveis problemas em seus tempos de carregamento.

    
por Zzzach... 24.08.2016 / 01:54
0

Eu tenho este resultado do commnad systemd-analyze critical-chain

systemd-analyze critical-chain 

O tempo após a unidade estar ativa ou iniciada é impresso após o caractere "@". O tempo que a unidade leva para começar é impresso após o caractere "+".

graphical.target @1min 41.706s
└─multi-user.target @1min 41.703s
  └─smbd.service @1min 41.278s +423ms
    └─nmbd.service @39.182s +1min 2.092s
      └─network-online.target @39.165s
        └─systemd-resolved.service @36.838s +156ms
          └─network.target @36.827s
            └─wpa_supplicant.service @38.285s +224ms
              └─basic.target @29.932s
                └─sockets.target @29.929s
                  └─snapd.socket @29.897s +28ms
                    └─sysinit.target @29.136s
                      └─systemd-timesyncd.service @27.747s +1.384s
                        └─systemd-tmpfiles-setup.service @26.585s +1.147s
                          └─systemd-journal-flush.service @7.366s +19.214s
                            └─systemd-remount-fs.service @7.094s +267ms
                              └─system.slice @3.316s
                                └─-.slice @3.240s

Se alguém puder me ajudar a conseguir um tempo de inicialização mais rápido.

Laptop config is: 1.6 GHZ, 2GB Ram, Ubuntu Core + LXDE-Openbox

    
por SD. 21.06.2018 / 09:34