当我运行时systemd-analyse blame
,这是输出:
11.365s dev-sda1.device
7.844s systemd-udevd.service
3.603s NetworkManager.service
2.808s keyboard-setup.service
2.466s ModemManager.service
2.406s accounts-daemon.service
1.758s grub-common.service
1.730s thermald.service
1.469s irqbalance.service
847ms gpu-manager.service
813ms console-setup.service
773ms apport.service
702ms systemd-modules-load.service
697ms resolvconf.service
693ms dev-hugepages.mount
692ms sys-kernel-debug.mount
690ms apparmor.service
671ms dev-mqueue.mount
596ms systemd-tmpfiles-setup-dev.service
594ms systemd-udev-trigger.service
500ms systemd-journald.service
452ms rsyslog.service
438ms upower.service
399ms polkitd.service
358ms networking.service
355ms ufw.service
338ms avahi-daemon.service
251ms packagekit.service
249ms dev-disk-by\x2duuid-0830d07e\x2da7a6\x2d410b\x2da495\x2d625777b6a36e.swap
245ms systemd-rfkill.service
195ms systemd-logind.service
194ms wpa_supplicant.service
176ms kmod-static-nodes.service
163ms udisks2.service
162ms ondemand.service
142ms systemd-timesyncd.service
119ms plymouth-read-write.service
102ms alsa-restore.service
100ms [email protected]
96ms [email protected]
96ms plymouth-start.service
87ms pppd-dns.service
86ms systemd-journal-flush.service
84ms systemd-tmpfiles-setup.service
76ms systemd-update-utmp.service
75ms systemd-tmpfiles-clean.service
57ms snapd.autoimport.service
56ms systemd-sysctl.service
54ms systemd-user-sessions.service
49ms plymouth-quit.service
42ms snapd.socket
40ms setvtrgb.service
32ms systemd-remount-fs.service
17ms rtkit-daemon.service
16ms systemd-backlight@backlight:radeon_bl0.service
13ms systemd-update-utmp-runlevel.service
12ms ureadahead-stop.service
11ms systemd-random-seed.service
8ms sddm.service
7ms sys-fs-fuse-connections.mount
4ms rc-local.service
lines 35-61/61 (END)
什么是dev-sda1.device
?它的重要性是什么?如果我禁用它会发生什么?
当我登录 Kubuntu 时,启动画面 (Breeze) 会长时间显示
答案1
名称以“ .device”结尾的单元配置文件对 sysfs/udev(7) 设备树中公开的设备单元的信息进行编码。
其他单元可以使用设备单元在它们运行之前保持可用状态。
/dev/sda1
可能发生的情况:您在 中安装了/etc/fstab
。Systemd 将会解析 fstab并为每个项目生成 .mount 单元。此挂载单元将包含一个After=dev-sda1.device
,以便它仅在分区块设备可用时才尝试挂载文件系统。
您可以通过运行以下命令查看哪个单元正在等待设备:
systemctl show dev-sda1.device --property=Before
设备耗时的原因在于内核需要加载访问磁盘所需的所有驱动程序模块,然后读取分区表。在配备 SSD 的较新硬件上,这一过程会快得多。
答案2
fstab
实际上,为您的设备工作而安装磁盘的是udisks2
,并且它dev-sdaX.device
所做的是访问 Linux 模块,例如:PCI(视频卡、采集卡等)、USB Wi-Fi 卡、USB 蓝牙适配器、处理器微码、CD-ROM 等。
如果您需要有关安装和读取磁盘的信息,请在终端仿真器中输入:
journalctl -b | grep udisks2
为udisks2
,且;journalctl -b | grep dev-sda1
为了dev-sda1.device