我注意到我的 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"
默认启动时间为:47秒。
我遵循了这篇文章的建议:如何诊断/修复 Ubuntu 18.04 上启动速度非常慢的问题,虽然有些答案对其他人有帮助,但对我来说却不起作用。
我已尝试过:
在内核启动中添加了
noresume
参数。从上面的帖子可以看出,有人将启动时间缩短了 31 秒!我昨天升级到了 18.04,也遇到了同样的问题(花了 52 启动需要 100 秒)。设置“noresume”参数后,需要 21 秒。
结果:(抱歉忘记截图了):57秒(慢了 10 秒)。为什么?
通过更改以下内容来减少网络的时间处理并配置启动作业和停止作业的超时时间:
/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
本来应该阻止恢复分区的反而让它变慢了?还有其他减少启动时间的建议吗?
更新
根据以下建议微软, 我试过 :
按照步骤 (3) 禁用网络,然后删除日志刷新服务并通过更改以下内容对其进行清理:
nano /etc/systemd/journald.conf
改变
Storage=auto SystemMaxUse=50M SystemMaxFileSize=1G SystemMaxFiles=5
我原来的日志磁盘使用量是 2G,现在降到了 200MB。但
system-journal-flush.service
时间似乎没有变快,仍然是 11 秒。
另外,在更改设置之前,刷新时间为 3.xx 秒。现在改为 10.xx 秒。
结果,启动时间:52秒(慢5秒)。
禁用 tor 服务:
/etc/default/tor
更改为
RUN_DAEMON="no"
并运行sudo systemctl disable tor.service
然后添加
video=SVIDEO-1:d
参数添加到启动内核(以下解决方案来自:18.04 中的长内核引导段)
并蒙面systemd-journal-flush.service
和keyboard-setup.service
(以下解决方案来自:Ubuntu 18.04 启动时间过长)。
结果。启动时间:45秒。 (快 2 秒),但我相信可以改进。
第二次试验时:47秒(没有改善)。
我真的以为禁用 tor-service 会让我的启动时间缩短 5~7 秒,因为原来的启动时间是 10-13 秒。
仍然不明白noresume
参数禁用网络和从日志中清除日志如何导致启动时间变慢。如能提供进一步的建议,我们将不胜感激!
更新2
- 安装
haveged
。启动时间:49秒(慢 2 秒)
只是为什么。
答案1
您也许可以完全禁用网络等待:
删除日志刷新服务并改为使用 vacuum 方式:
snapd
通过在启动时摇动鼠标可以加快缓慢的时间: