После удаления большинства ненужных мне сервисов все равно требуется около 28 секунд для загрузки, фотосъемки и выключения. Я хотел бы снизить это еще больше, и я сделал systemd-analyze blame
и получил следующее:
7.476s disableusb.service
1.736s keyboard-setup.service
958ms kbd.service
789ms systemd-fsck-root.service
737ms systemd-setup-dgram-qlen.service
722ms fake-hwclock.service
580ms kmod-static-nodes.service
565ms console-setup.service
534ms dev-mqueue.mount
518ms systemd-udev-trigger.service
498ms networking.service
489ms raspi-config.service
449ms hdparm.service
444ms systemd-journal-flush.service
376ms systemd-tmpfiles-setup.service
375ms dhcpcd.service
345ms systemd-logind.service
332ms ntp.service
317ms systemd-modules-load.service
281ms tmp.mount
272ms triggerhappy.service
269ms sys-kernel-debug.mount
265ms systemd-fsck@dev-mmcblk0p6.service
223ms rsyslog.service
221ms sys-kernel-config.mount
212ms systemd-tmpfiles-setup-dev.service
200ms systemd-remount-fs.service
198ms systemd-sysctl.service
184ms boot.mount
173ms systemd-random-seed.service
168ms rc-local.service
167ms user@1000.service
165ms var-log.mount
141ms udev-finish.service
130ms sys-fs-fuse-connections.mount
111ms systemd-user-sessions.service
94ms systemd-update-utmp.service
94ms alsa-restore.service
93ms systemd-update-utmp-runlevel.service
77ms systemd-udevd.service
55ms takepicture.service
disableusb.service
это мое, и в отличие от того, что подразумевает название, оно делает и другие вещи. Я сомневаюсь, что смогу улучшить время там.
Моя система работает без головы, по последовательному. Мне нужно только сеть через Wi-Fi (Wi-Fi не запускается, потому что я отключаю питание USB, но иногда я не отключаю его, чтобы он мог запуститься).
Глядя на этот список, я вижу такие вещи, как: 1.736s keyboard-setup.service
и 958ms kbd.service
. Они занимают почти 3 секунды. Нужны ли они мне, если я не использую клавиатуру? Если нет, то как их отключить?
Что еще я могу безопасно отключить отсюда?
Хорошо, здесь происходит что-то действительно странное. Я отключил еще несколько сервисов, и это все равно занимает столько времени, только теперь некоторые сервисы, которые раньше занимали меньше времени, занимают гораздо больше времени ...
7.468s disableusb.service
1.676s console-setup.service
768ms systemd-logind.service
768ms systemd-fsck-root.service
726ms systemd-setup-dgram-qlen.service
714ms fake-hwclock.service
689ms networking.service
530ms systemd-journal-flush.service
524ms systemd-udev-trigger.service
509ms dev-mqueue.mount
509ms ntp.service
508ms kmod-static-nodes.service
439ms dhcpcd.service
334ms systemd-random-seed.service
331ms hdparm.service
318ms systemd-modules-load.service
281ms systemd-tmpfiles-setup.service
279ms systemd-fsck@dev-mmcblk0p6.service
279ms rsyslog.service
269ms systemd-remount-fs.service
265ms sys-kernel-config.mount
254ms systemd-tmpfiles-setup-dev.service
250ms systemd-sysctl.service
238ms rc-local.service
234ms systemd-udevd.service
232ms sys-kernel-debug.mount
224ms user@1000.service
187ms tmp.mount
176ms sys-fs-fuse-connections.mount
175ms var-log.mount
133ms systemd-update-utmp.service
122ms systemd-update-utmp-runlevel.service
122ms systemd-user-sessions.service
119ms alsa-restore.service
91ms boot.mount
88ms udev-finish.service
76ms takepicture.service
Сервисный файл: (не знаю, почему синтаксис кода не работает)
[Unit]
Description=Disable USB power
Before=networking.service
After=local-fs.target
DefaultDependencies=no
[Service]
Type=oneshot
ExecStart=/sbin/usb_down
[Install]
Вот сюжет: http://www.eternal-lands.com/plot.svg
disableusb.service
. Кстати, вы можете быстро, convert plog.svg plog.jpg
если вы установите imagemagick
пакет /
systemd-analyze plot
и включите сюда изображение (которое должно привести к хорошей диаграмме SVG, показывающей время и, возможно, прояснит ситуацию).