Con*_*016 5 sysvinit openrc devuan
我有安装了 SysVinit 的 Devuan Ascii。我发现 Devuan ascii 存储库中的 openRC 版本要旧得多。有人用 openRC 试过 Devuan 吗?是否为 openRC 启用了并行启动?
是的,它可以,但它比默认的 sysvinit setup 更慢且效率更低。
默认的 Devuan Ascii 安装已经使用insserv和startpar 进行并行启动。这些通过解析/etc/init.d
显式指定依赖项的initscripts(看看里面)中的LSB 标头来工作。当您运行sudo insserv
,insserv
处理这些init脚本到文件,如/etc/init.d/.depend.boot
,/etc/init.d/.depend.start
等在启动时,startpar
读取这些脚本,并根据这些规则并行启动过程。
安装 OpenRC 就像安装任何其他软件包一样:
$ apt update
$ apt install openrc
Run Code Online (Sandbox Code Playgroud)
安装后,它会告诉你:
**********************************************************************
*** WARNING: if you are replacing sysv-rc by OpenRC, then you must ***
*** reboot immediately using the following command: ***
for file in /etc/rc0.d/K*; do s=`basename $(readlink "$file")` ; /etc/init.d/$s stop; done
**********************************************************************
Run Code Online (Sandbox Code Playgroud)
以超级用户身份运行它。
在安装过程中,apt
将删除insserv
和startpar
。
但是,至少根据我的经验,OpenRC 比增强的 sysvinit 慢,因为 OpenRC 在启动时计算依赖项,而不是insserv
在包安装时计算。
例如,这是我使用 OpenRC 的引导图,它慢了 1.57 秒:
如果我们想更进一步,我们可以将行添加rc_parallel="YES"
到/etc/rc.conf
. 然而,这会破坏启动输出以获得最小的启动时间增益,这仍然比insserv
+慢startpar
:
这是因为 OpenRC 仍然使用在 shell 中编写的 LSB init 脚本,而不是使用 openrc-run 为其优化的设置。即使使用 openrc-init 而不是 sysvinit 的 OpenRC 更新版本,启动时间仍然更糟。
归档时间: |
|
查看次数: |
1705 次 |
最近记录: |