Po usunięciu większości usług, których nie potrzebuję, nadal trwa około 28 sekund, aby uruchomić, zrobić zdjęcie i zamknąć. Chciałbym obniżyć to jeszcze bardziej, zrobiłem systemd-analyze blame
i otrzymałem następujące:
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
jest moja i w przeciwieństwie do tego, co sama nazwa wskazuje, robi też inne rzeczy. Wątpię, czy mogę poprawić tam czas.
Mój system działa bez głowy, szeregowo. Potrzebuję tylko sieci przez Wi-Fi (Wi-Fi nie uruchamia się, ponieważ wyłączam zasilanie USB, ale czasami nie wyłączam go, aby mógł się uruchomić).
Patrząc na tę listę, widzę takie rzeczy jak: 1.736s keyboard-setup.service
i 958ms kbd.service
. Zajmują prawie 3 sekundy. Czy potrzebuję ich, jeśli nie używam klawiatury? Jeśli nie, jak mogę je wyłączyć?
Co jeszcze mogę bezpiecznie wyłączyć z tego miejsca?
Ok, dzieje się tu coś naprawdę dziwnego. Wyłączyłem więcej usług i nadal trwa to w sumie tyle, że teraz niektóre usługi, które zajęły mniej czasu wcześniej, zajmują znacznie dłużej ...
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
Plik usługi: (nie mam pojęcia, dlaczego składnia kodu nie działa)
[Unit]
Description=Disable USB power
Before=networking.service
After=local-fs.target
DefaultDependencies=no
[Service]
Type=oneshot
ExecStart=/sbin/usb_down
[Install]
Oto fabuła: http://www.eternal-lands.com/plot.svg
disableusb.service
. BTW, możesz szybko, convert plog.svg plog.jpg
jeśli zainstalujesz imagemagick
pakiet /
systemd-analyze plot
może łatwiej będzie wyjaśnić, na czym polega problem, jeśli uruchomisz i włączysz tutaj obraz (to powinno wygenerować ładny wykres SVG pokazujący czasy i być może wyczyści wszystko).