Я понимаю, что решение длительного времени загрузки включает анализ того, сколько времени требуется для загрузки чего, но вывод systemd-analyze blame
и systemd-analyze plot
оставил меня озадаченным.
~ $ systemd-analysis Запуск завершен за 12,557 с (прошивка) + 4,516 с (загрузчик) + 3,732 с (ядро) + 26,720 с (пользовательское пространство) = 47,526 с
~ $ systemd-проанализировать вину | grep "\ s [1-9] * \." 8.989s клавиатура-setup.service 8.757s dev-sda2.device 6.055s apparmor.service 4.948s account-daemon.service 4.446s NetworkManager.service 3.383s gpu-manager.service 3.134s systemd-udevd.service 3.079s snapd.firstboot.service 2.440s udisks2.service 2.249s grub-common.service 2.093s upower.service 1.943s network.service 1.661s avahi-daemon.service 1.461s rsyslog.service 1.460s pppd-dns.service 1.449s systemd-tmpfiles-setup-dev.service 1.387s systemd-rfkill.service 1.290s colord.service 1.210s resolvconf.service 1.192s apport.service 1.188s systemd-modules-load.service 1.187s systemd-remount-fs.service 1.166s dev-mqueue.mount 1.152s bluetooth.service 1.032s lightdm.service 1.013s plymouth-quit-wait.service
Информация
Машина Dell Inspiron 5559; У меня было это с февраля / марта 2016 года.
~ $ uname -imporvs Linux 4.8.0-32-generic # 34-Ubuntu SMP Вт 13 дек. 14:30:43 UTC 2016 x86_64 x86_64 x86_64 GNU / Linux
Distro - это Lubuntu 16.10 с LXDE.
$ sudo расстался / dev / sda unit mib print Модель: ATA ST1000LM024 HN-M (SCSI) Диск / dev / sda: 953870 МБ Размер сектора (логический / физический): 512B / 4096B Таблица разделов: gpt Флаги дисков: Номер Начало Конец Размер Имя Файловой системы Флаги 1 1.00MiB 513MiB 512MiB fat32 Загрузка системного раздела EFI, esp 2 513MiB 937591MiB 937078MiB ext4 3 937591MiB 953869MiB 16278MiB linux-swap (v1)
Хуже всего то, что время работы отдельных модулей немного различается (от 1 до 2 секунд, что наблюдалось после решения этой проблемы с тех пор, как я установил Lubuntu), что означает, что мне нужно будет systemd-analyze blame
постоянно обновлять или регистрировать серию перезагрузок, а затем делать среднее значение.
Может кто-нибудь сказать мне, где я мог бы начать ?
ОБНОВИТЬ
Обновление с 16.10 до 17.04 черезsudo apt dist-upgrade
существенно изменило ситуацию.
~ $ systemd-проанализировать вину | grep "\ s [1-9] * \." 16.083s dev-sda2.device 15.435s клавиатура-setup.service 8.015s systemd-udevd.service 4.090s NetworkManager.service 3.644s systemd-tmpfiles-setup-dev.service 2.621s apparmor.service 2.549s grub-common.service 2.477s plymouth-read-write.service 1.560s account-daemon.service 1.107s systemd-modules-load.service 1.002s colord.service
~ $ systemd-анализ критической цепочки Время после того, как устройство активно или запущено, печатается после символа «@». Время, необходимое устройству для запуска, печатается после символа «+». graphical.target @ 25.631s M─multi-user.target @ 25.631s Get─getty.target @ 25.631s Get─getty@tty1.service @ 25.631s Ystem─system-getty.slice @ 25.630s Set─setvtrgb.service @ 25,407 с + 222 мс Ystem─systemd-user-sessions.service @ 25.245s + 2ms N─network.target @ 25.245s Etwork─NetworkManager.service @ 21.154s + 4.090s D─dbus.service @ 21.147s Bas─basic.target @ 21.139s So─sockets.target @ 21.139s S─snapd.socket @ 21.136s + 2ms Ys─sysinit.target @ 21.110s App─apparmor.service @ 18.488s + 2.621s Loc─local-fs.target @ 18.488s Bo─boot-efi.mount @ 18.387s + 100ms Ystem─systemd-fsck @ dev-disk-by \ x2duuid-7930 \ x2d6EDD.service @ 18.198s + 150ms Dev─dev-disk-by \ x2duuid-7930 \ x2d6EDD.device @ 18.198s
По крайней мере, явные виновники появляются.
ЗАКРЫТО
Сообщение закрыто, потому что я перешел в другой дистрибутив (Gentoo), где проблема не возникла, поэтому вопрос больше не актуален.
grep "\s[1-9]\."
По какой причине вы фильтруете сервисы с временем загрузки более 10 секунд? Поставьте +
после, ]
чтобы соответствовать одной или нескольким цифрам.
+
это не сработало; это один из операторов повторения в GNU Grep gnu.org/software/grep/manual/grep.html#Fundamental-Structure
systemd-analyze blame
(в частностиkeyboard-setup.service
), являются скриптами в стиле SysVInit, расположенными в /etc/init.d. Хотя я не знаю, как бы вы заменили службу, основанную на сценариях ...