시작 속도를 높이고 싶습니다. systemd-analyze critical-chain
출력을 확인했습니다 .
graphical.target @13.691s
└─multi-user.target @13.691s
└─cups-browsed.service @13.690s
└─org.cups.cupsd.service @13.419s +269ms
└─network.target @13.412s
└─[email protected] @5.850s +7.561s
└─basic.target @5.838s
└─sockets.target @5.838s
└─avahi-daemon.socket @5.838s
└─sysinit.target @5.837s
└─systemd-update-done.service @5.828s +8ms
└─ldconfig.service @5.183s +643ms
└─local-fs.target @5.180s
└─run-mount-extra.mount @3.333s +1.846s
└─systemd-fsck@dev-disk-by\x2duuid-abd2e996\x2db30b\x2d4e55\x2db52e\x2dccd74242221a.service @1.650s +1.680s
└─local-fs-pre.target @1.649s
└─lvm2-monitor.service @216ms +1.432s
└─lvm2-lvmetad.service @235ms
└─systemd-journald.socket @207ms
└─-.mount @181ms
└─systemd-journald.socket @207ms
└─...
[email protected]
7초가 소요됩니다. 그러나 실제로 시작 후 처음 몇 초 동안은 네트워크가 필요하지 않으며 WM이 시작된 후 몇 초 정도 기다릴 수 있습니다. 이것을 가능하게 하려면 무엇을 바꿔야 합니까?
답변1
먼저, 어떤 타겟에서 출시할지 결정하는 것이 좋습니다.
systemctl list-units --type target
systemctl get-default
어떤 타겟에서 발사를 시도할 수 있나요?
그렇다면 내가 가장 하고 싶은 일은장애를 입히다시작 단계에서 필요하지 않은 서비스와시작@reboot를 통과했습니다.예약 된 일들.
가상 머신의 간단한 예를 들어보겠습니다.
# systemctl status iptables | grep disabled
Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
# systemctl status ip6tables | grep disabled
Loaded: loaded (/usr/lib/systemd/system/ip6tables.service; disabled; vendor preset: disabled)
# crontab -l
@reboot systemctl restart iptables
@reboot systemctl restart ip6tables
하지만 systemd는 서비스 종속성을 지원하므로 핵심 서비스를 비활성화하면 시스템이 올바른 방식으로 시작되지 않을 수 있으므로 주의하세요.