我注意到我的 Ubuntu 18 启动速度非常慢,比以前安装在同一台机器上的 Windows 慢得多。我不使用双启动,我的机器是:
Ubuntu 18.04.3 LTS
Intel® Core™ i7-7700HQ CPU @ 2.80GHz × 8
64-bit, NVIDIA GeForce GTX 950M
NVIDIA 是相当有问题并导致启动问题,所以我不得不放一些内核启动参数。现在看起来像这样:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi pci=noaer
acpi_enforce_resources=lax intel_pstate=disable acpi_osi=!Windows
2012"
默认开机时间为:47s。
我遵循了这篇文章的建议:如何在 Ubuntu 18.04 上诊断/修复非常慢的启动,虽然一些答案对其他人有所帮助,但对我不起作用。
我尝试过的:
noresume
在内核启动中添加了参数。从上面的帖子字面上看,有人将启动时间缩短了 31 秒!我昨天升级到 18.04,我遇到了同样的问题( 启动需要 52 秒)。设置“noresume”参数后,耗时21 秒。
结果:(抱歉忘记截图了):57s(慢了 10s)。为什么 ?
减少网络的时间进程并通过更改配置启动作业和停止作业的超时:
/etc/systemd/system/network-online.target.wants/networking.service
更改
TimeoutStartSec=5min
为TimeoutStartSec=5s
。还,
/etc/systemd/system.conf
改变 :
DefaultTimeoutStartSec=5s DefaultTimeoutStopSec=5s
结果:启动失败。(卡在开机画面)
启动期间禁用网络:
systemctl disable NetworkManager-wait-online.service
结果:启动时间为51 秒(慢 4 秒)。
为什么我错过了上述步骤?我的机器是如何最终启动变慢的?
为什么noresume
应该防止恢复分区反而使它变慢?还有其他减少启动时间的建议吗?
更新
根据WinEunuuchs2Unix的建议,我尝试了:
如步骤 (3) 所示禁用网络,并删除日志刷新服务并通过更改将其清理:
nano /etc/systemd/journald.conf
改变
Storage=auto SystemMaxUse=50M SystemMaxFileSize=1G SystemMaxFiles=5
我原来的日志磁盘使用量是 2G,现在下降到 200MB。但
system-journal-flush.service
时间似乎并没有变快,还是11s。
此外,在更改其设置之前,冲洗时间为 3.xx 秒。现在它是 10.xx s。
结果,启动时间:52秒(慢 5 秒)。
禁用 tor 服务:
/etc/default/tor
更改为
RUN_DAEMON="no"
并运行sudo systemctl disable tor.service
然后将
video=SVIDEO-1:d
参数添加到引导内核(遵循18.04 中的 Long Kernel Boot Segment 的解决方案)。
并屏蔽systemd-journal-flush.service
和keyboard-setup.service
(以下解决方案来自:Long boot time Ubuntu 18.04)。
结果。开机时间:45s。(快 2 秒),但我相信它可以改进。
二审:47s(无改善)。
我真的认为禁用 tor-service 会给我 5~7 秒的启动时间,因为它最初需要 10-13 秒的启动时间。
仍然对noresume
参数、禁用网络和日志中的真空日志如何导致启动时间变慢感到困惑。进一步的建议将不胜感激!
更新 2
- 安装
haveged
. 启动时间:49秒(慢 2 秒)
只是为什么。
您可以完全禁用网络等待:
删除日志刷新服务并用真空吸尘器代替:
snapd
通过在启动时摇动鼠标可以加快慢速: