我如何检查启动过程?

我如何检查启动过程?

我的电脑(Ubuntu Mate 20.04)启动需要一分钟多的时间,我不知道为什么。这似乎与此特定硬盘上的启动过程有关。

来自 dmesg:

...
[    1.922970] async_tx: api initialized (async)
[    2.328482] psmouse serio2: trackpoint: IBM TrackPoint firmware: 0x0e, buttons: 3/3
[    2.530339] input: TPPS/2 IBM TrackPoint as /devices/platform/i8042/serio1/serio2/input/input7
[    3.256967] Btrfs loaded, crc32c=crc32c-intel
[   34.601941] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
...

那里似乎有 30 秒,我没有 Btrfs,我不确定它为什么要检查它,或者它在做什么。

然后我有这个:

[   38.739280] USB Video Class driver (1.1.1)
[  125.248857] Process accounting resumed

我不知道流程会计是什么。

我拍摄了这张启动过程的照片: 在此处输入图片描述 这张照片中的最后一行是我想要找到并修复的,每次启动计算机时,它都需要一分半钟才能运行。它发生在安全模式和正常启动时。有没有一个可以列出启动过程的工具?我不想重新安装。我试过检查磁盘文件系统,问题仍然存在。我已经做了 SMART 磁盘分析,硬盘没问题。

命令systemd-analyze critical-chain

$ systemd-analyze critical-chain
The time when unit became active or started is printed after the "@" character.
The time the unit took to start is printed after the "+" character.

graphical.target @1min 38.388s
└─multi-user.target @1min 38.388s
  └─lxc.service @1min 38.330s +57ms
    └─lxc-net.service @1min 38.184s +143ms
      └─network-online.target @1min 38.179s
        └─NetworkManager-wait-online.service @1min 30.737s +7.440s
          └─NetworkManager.service @1min 30.360s +374ms
            └─dbus.service @1min 30.355s
              └─basic.target @1min 30.316s
                └─sockets.target @1min 30.315s
                  └─snapd.socket @1min 30.310s +4ms
                    └─sysinit.target @1min 30.280s
                      └─systemd-backlight@leds:tpacpi::kbd_backlight.service @2>
                        └─system-systemd\x2dbacklight.slice @1.538s
                          └─system.slice @251ms
                            └─-.slice @251ms

和命令systemd-analyze time

$ systemd-analyze time
Startup finished in 34.552s (kernel) + 2min 7.682s (userspace) = 2min 42.235s 
graphical.target reached after 1min 38.388s in userspace

答案1

好吧,我仍然想知道在启动过程中的最佳实践,或者更有效的方法来解决此类无稽之谈。

当我看到W: initramfs-tools configuration sets RESUME=UUID=66f2ea6d-cfab-4410-933b-763fb6c6bc83: but no matching swap device is available……我检查了 gparted,发现我没有交换空间分区。(这应该没问题,我有很多 RAM)但这个设置似乎是我可能曾经有过一个,为什么我现在没有,那部分是一个谜。我打开了 /etc/fstab,并注释掉了交换分区(它与启动时需要很长时间检查的磁盘具有相同的 UUID。)

# swap was on /dev/sda5 during installation
#UUID=66f2ea6d-cfab-4410-933b-763fb6c6bc83 none            swap    sw              0       0

为什么它在 /dev/sda5 上?好问题,我不知道。

因此我转而注释掉了sudo vim /etc/initramfs-tools/conf.d/resume 对具有有问题的 UUID 的交换分区的引用。

#RESUME=UUID=66f2ea6d-cfab-4410-933b-763fb6c6bc83

然后,我更新了 initramfs $ sudo update-initramfs -u -k all

然后重新启动,看看会发生什么。我在几秒钟内就启动了。

所以我的启动时间问题解决了……但如果有更好的方法来解决此类错误,我很想知道。我阅读了各种各样的资料,看到很多用户遇到类似的问题。我尝试了该boot-repair实用程序,但它没有解决这个问题。几个月后,我才从尝试更新 Mate 时看到的错误中得到线索,当时我认为某个用户空间应用程序可能是问题所在。

相关内容