![如何无需等待即可启用systemd的服务?](https://linux22.com/image/46723/%E5%A6%82%E4%BD%95%E6%97%A0%E9%9C%80%E7%AD%89%E5%BE%85%E5%8D%B3%E5%8F%AF%E5%90%AF%E7%94%A8systemd%E7%9A%84%E6%9C%8D%E5%8A%A1%EF%BC%9F.png)
我正在尝试使最快的启动成为可能并且确实运行了systemd-analyze critical-chain
:
graphical.target @5.800s
└─multi-user.target @5.800s
└─NetworkManager.service @4.201s +1.598s
└─basic.target @4.201s
└─sockets.target @4.196s
└─dbus.socket @4.196s
└─sysinit.target @4.196s
└─systemd-update-utmp.service @4.108s +87ms
└─systemd-tmpfiles-setup.service @4.066s +41ms
└─local-fs.target @4.066s
└─boot-efi.mount @3.964s +101ms
└─boot.mount @3.932s +26ms
└─systemd-fsck@dev-disk-by\x2duuid-9846843d\x2d8ec1\x2d4574\x2d8bcc\x2d4790440cad5f.service @3.714s +218ms
└─dev-disk-by\x2duuid-9846843d\x2d8ec1\x2d4574\x2d8bcc\x2d4790440cad5f.device @3.713s
如您所见,启动时间└─NetworkManager.service @4.201s +1.598s
增加了几秒。+1.598s
但是,我不需要运行网络来输入密码,当我在个人电脑上输入用户名/密码时,网络有足够的时间进行连接。
所以我尝试:
rm /etc/systemd/system/multi-user.target.wants/NetworkManager.service
然而,在启动时完全禁用 NM 并启用它systemctl enable NetworkManager
只是创建相同的符号链接:
Created symlink from /etc/systemd/system/multi-user.target.wants/NetworkManager.service to /usr/lib/systemd/system/NetworkManager.service.
有什么方法可以NetworkManager.service
在引导期间启动,但不作为依赖项multi-user.target
?
答案1
这个问题没有什么意义。 “在引导期间启动”准确地说是“作为默认目标的依赖项启动”。
注意systemd 并行启动一切,所以 NetworkManager 启动时间为 1.5 秒不耽误任何事情除了显式等待网络的服务(显然,您没有;否则它们将显示在图中)。