Как удостовериться, что вызывает медленное время начальной загрузки на Lubuntu?

Я не уверен, что считает медленную или быструю загрузку в мире Linux, но на машину Lubuntu кажется, что я имею здесь (спецификации здесь), кажется, загружается несколько медленный (приблизительно 50 секунд). Мои родители начали жаловаться мне о медленной начальной загрузке, и я думал, что изучу ее.

Мастер конфигурации LXSession не показал ничего, что должно замедлить начальную загрузку. Это показало, что следующие сервисы запустятся, когда компьютер запустится (компьютер не находится на английском языке, таким образом, я не уверен, перевожу ли я правильно): управление питанием, программное обеспечение updater, сетевой сервис, Экранный Блокировщик, пользовательские обновления папки, Шина D-шины в SPI.

Затем я изучил dmesg, Я предполагаю, что это показывает время начальной загрузки в начале строки и видело некоторые странные поведения:

[   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

Так по некоторым причинам на 21-й секунде это просто подвешивает и начинает загружать сервис IPv6, к которому я не имею никакого отношения. Это могла быть причина позади медленной начальной загрузки? И если да, как я мог диагностировать его?

Я гуглил вокруг в течение некоторого времени, но действительно не нашел хороший совет, который помог бы мне. Вещи, которые я попробовал, не решили вопрос.

Я был бы благодарен, если кто-то поможет мне исследовать то, что вызывает медленную начальную загрузку на этой машине Lubuntu.

Спасибо!

править: Пользователь, названный eridani, предложил, чтобы я смотрел в названном инструменте, systemd-анализируют, который может помочь мне обнаружить то, что замедляет время начальной загрузки.
Вот вывод команды systemd-analyze plot > ~/Desktop/systemd.html: свяжитесь с загрузкой (не мог найти лучший способ совместно использовать его).

Другая команда, которая была предложена в Дуге блог Linux, была 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 @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 и apparmor.service, кажется, берут вполне немного для загрузки. Я мог настроить что-то так, чтобы они загрузились бы быстрее?

С другой стороны, действительно ли 44 секунды хорошее время начальной загрузки, учитывая мои спецификации? Я мог так или иначе свалить его немного, с помощью некоторого еще более легкого дистрибутива (с другой стороны, я не хочу терять так много удобства использования также, учитывая он - компьютер моих родителей, текущий GUI Lubuntu достаточно хорош, я могу попробовать Xubuntu также).

Спасибо за справку.

edit2: По-видимому, disable команда на самом деле не отключила NetworkManager-wait-online.service, таким образом, я использовал следующие команды:

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

И получил время начальной загрузки системы от этого: Startup finished in 5.647s (kernel) + 38.452s (userspace) = 44.100s к этому: Startup finished in 5.487s (kernel) + 26.994s (userspace) = 32.481s. Хотя с психологической точки зрения, это не походит, это - 12 секунд быстрее, но если числа говорят так, то у меня нет ничего для утверждения.

И теперь мы имеем apparmor.service левый, который занимает ~10 секунд для загрузки. Вот обновленная команда 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

И вывод 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

Услужливый пользователь, eridani, попросивший вывода двух команд, которые могли бы помочь мне диагностировать замедление apparmor.service и здесь они:

~$ 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.

И другой:

:~$ 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.

Я пробую к Google слишком тем временем, но я ценил бы хорошие мысли отсюда также :) Спасибо за всю справку, особенно eridani!

2
задан 28 August 2016 в 20:37

2 ответа

Хорошо для помещения пары вещей в перспективу у меня есть относительно быстрая система (использующий Ubuntu), и она загружается приблизительно за 8 секунд (i7 3.6 ГГц, 16 ГБ Ram 1866 МГц и корпус диска M.2 корневой раздел).

настольные спецификации выглядят относительно низкими (1,8 ГГц, 1 ГБ, которого Ram установил 667 МГц, и более медленное, чем средний жесткий диск на уровне 3 Гбит/с). Вы не собираетесь получать фантастические времена загрузки с этой системой. Теперь lubuntu более легок, чем Ubuntu, таким образом, это должно помочь, но у Вас все еще есть вполне немного загрузки при запуске.

От контроля, похож на Ваш поршень, могло быть узкое место, это со скоростью Вашего жесткого диска. Я предполагаю, что Ваш индикатор доступа жесткого диска высвечивается много в T: 21 секунда?

Вы, кажется, думаете, что это не всегда было, это замедляется все же. Чем больше сервисов Вы добавляете, тем медленнее время загрузки. Особенно, также, если Ваш жесткий диск полон, потребуется больше времени, чтобы искать и найти информацию.

, Хотя это действительно не решает Вашу проблему, она помогла поместить его в перспективу и показывает некоторые потенциальные проблемы в Ваши времена загрузки.

0
ответ дан 2 December 2019 в 10:10

У меня есть этот результат commnad systemd-analyze critical-chain

systemd-analyze critical-chain 

Время после единицы активно или запускается, печатается после символ. Время, которое единица занимает для запуска, печатается после "+" символ.

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

Если кто-либо может помочь мне получить возможное более быстрое время начальной загрузки.

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

0
ответ дан 2 December 2019 в 10:10

Другие вопросы по тегам:

Похожие вопросы: