Por que demora tanto para inicializar?

5
# systemd-analyze blame
       40.256s firewalld.service
       38.154s initial-setup-graphical.service
       26.161s dev-mapper-VolGroup\x2dlv_root.device
       24.262s abrtd.service
       24.118s systemd-udev-settle.service
       20.907s systemd-journal-flush.service
       17.716s accounts-daemon.service
       16.398s libvirtd.service
       11.097s systemd-udevd.service
       10.533s systemd-journald.service
       10.389s systemd-sysctl.service
       10.266s dnf-makecache.service
        4.412s polkit.service
        4.404s jexec.service
        3.767s lvm2-monitor.service
        3.439s chronyd.service
        3.300s systemd-logind.service
        3.157s livesys.service
        3.155s akmods-shutdown.service
        3.144s akmods.service
        3.143s gssproxy.service
        2.889s rpcbind.service

Além de que cada IO demora uma eternidade para ser concluído? Como posso rastrear isso?

    
por ayhid 02.09.2016 / 11:09

2 respostas

4

Use o bootchart para confirmar que o IO é o fator limitante em seu processo de boot. Espero que o gráfico mostre 100% IO o tempo todo, e apenas rajadas curtas onde a CPU é totalmente utilizada.

Um teste de desempenho rápido está disponível nos discos do GNOME. Você deve esperar que a "ferrugem giratória" mostre um pouco melhor que 100MB / se 10ms por busca.

Eu acho que a escala de timings é plausível para o armazenamento mecânico tradicional. A peculiaridade do firewall parece familiar. Meu sistema baseado em disco leva mais de 60 90 segundos (!). systemd-analyze blame não parece tão ruim assim.

Os desenvolvedores de Upstream (e Fedora) tendem a comprar um bom armazenamento não-mecânico. O desempenho em iniciar programas é um benefício bem conhecido: -).

systemd-readahead não foi mantido e acabou sendo removido. Esse foi o serviço que pré-leu os arquivos necessários para inicialização em sequência, para evitar a leitura de páginas sob demanda (e fora de sequência). Ou seja reduziu o número de operações mecânicas lentas.

Estou curioso para saber qual é a história do Ubuntu. Depois que o Ubuntu adotou o systemd, eu gostaria de pensar que eles tinham recursos suficientes para perceber uma grande regressão.

Acabei de notar livesys.service Caso você esteja inicializando a partir de um CD ou DVD, pode esperar um desempenho de inicialização terrível . Para uma unidade USB básica ... é melhor, mas infelizmente as leituras seqüenciais não serão tão rápidas quanto o armazenamento interno.

    
por 02.09.2016 / 21:38
1

Você provavelmente forneceu sua própria resposta em "IO demora para sempre". É provável que o desempenho do seu hardware de volume de inicialização esteja com falha. Se sua E / S for super lenta, provavelmente não há nada que você possa fazer para fazer uma diferença dramática no lado do software.

    
por 02.09.2016 / 20:25