Утилита systemd-analyze позволяет понять, что не так с юнитами.
Общее время загрузки
Чтобы определить общее время загрузки, выполните команду без параметров:
systemd-analyze
Она выводит информацию в 2 строки:
Startup finished in 7.168s (kernel) + 17.380s (userspace) = 24.549s
graphical.target reached after 17.227s in userspace.
Понимать это надо так:
| Этап | Время, с |
|---|---|
| Загрузка ядра | 7.168 |
| Службы | 17.380 |
| Итого | 24.549 |
Время запуска отдельных юнитов
Чтобы посмотреть, какая служба сколько времени требует, выполните команду:
systemd-analyze blame
Она выводит список служб с указанием времени, которое потребовалось на их запуск:
8.698s systemd-fsck@dev-disk-by\x2duuid-bfad844d\x2db17f\x2d4f5e\x2d981c\x2d4f0d93e89944.service
6.003s NetworkManager-wait-online.service
5.491s systemd-fsck@dev-disk-by\x2duuid-7bfe3a92\x2d1445\x2d4082\x2d87a2\x2dc9c9428038b3.service
3.193s fwupd-refresh.service
1.132s man-db.service
1.090s modprobe@efi_pstore.service
936ms smartmontools.service
544ms dev-sda2.device
449ms udisks2.service
392ms e2scrub_reap.service
366ms dpkg-db-backup.service
352ms NetworkManager.service
289ms user@1000.service
...
Как видно из этого вывода, больше всего времени ушло на проверку дисков. Однако, её мы отключать не будем. А вот дальше уже интереснее. Например, служба fwupd-refresh.service вряд ли нужна каждый день:
systemctl disable fwupd-refresh.service --now