我的体验非常慢用户空间加载时间相比核心加载时间,如下所示systemd-analyze
:
jnavarro@almanzora:~$ systemd-analyze
Startup finished in 14.134s (kernel) + 1min 30.675s (userspace) = 1min 44.809s
graphical.target reached after 12.124s in userspace
当我也问时,systemd-analyze blame
我没有看到任何“好的候选人”:
jnavarro@almanzora:~$ systemd-analyze blame
7.387s NetworkManager-wait-online.service
6.863s plymouth-quit-wait.service
1.996s docker.service
1.966s exim4.service
1.895s systemd-cryptsetup@luks\foo\bar\zaz\.service
1.256s fwupd.service
1.061s upower.service
1.008s alsa-restore.service
978ms dev-mapper-almanzora\foo\bar\zaz.device
756ms udisks2.service
知道在哪里可以找到导致启动时间变慢的原因吗?看来systemd
不能再帮助我了。
- 编辑 -
systemd-analyze critical-chain
输出:
jnavarro@almanzora:~$ 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 @12.124s
└─multi-user.target @12.124s
└─docker.service @10.127s +1.996s
└─network-online.target @10.125s
└─NetworkManager-wait-online.service @2.737s +7.387s
└─NetworkManager.service @2.416s +319ms
└─dbus.service @2.413s
└─basic.target @2.392s
└─sockets.target @2.392s
└─docker.socket @2.390s +1ms
└─sysinit.target @2.387s
└─sys-fs-fuse-connections.mount @22.662s +9ms
└─systemd-modules-load.service @548ms +95ms
└─systemd-journald.socket @531ms
└─-.mount @526ms
└─systemd-journald.socket @531ms
└─...
答案1
如果systemd-analyze blame
无法识别延迟的应用程序/服务,这可能意味着 systemd 之外的其他原因导致了延迟。
这可能是由设备引起的...尝试删除所有可拔出的设备(USB 等)并重新启动,固件/驱动程序可能会导致延迟
您可以在启动后以 tty2 身份登录(ctrl+alt+f2)以避免加载桌面及其应用程序,然后从那里使用 ps 查看正在运行的内容以及执行时间。
ps -eo pid,lstart,cmd
将列出已启动的任务及其启动时间/日期,ps -aux
您可以检查每个进程使用的 cpu 时间。
- 此外,有缺陷的硬件(如硬盘驱动器)也可能会导致延迟,您可以使用 live cd 进行检查,或者启动不同的内核版本或不同的发行版,然后检查它是否也受到影响