Devuan AsciiとSysVinitをインストールしました。 Devuan asciiリポジトリのopenRCバージョンがはるかに古いことがわかりました。 openRCでDevuanを使ったことがある人はいますか? openRCはパラレルスタートをサポートしていますか?
答え1
長すぎます。
はい、できます。しかし、デフォルトのsysvinit設定よりも遅く、効率が低下します。。
デフォルト(sysvinit)
デフォルトのDevuan Asciiインストールはすでに並列に開始できます。提供するそして起動パラメータ。これは、依存関係を明示的に指定するinitscripts(内部参照)/etc/init.d
からLSBヘッダーを解析することによって機能します。を実行すると、sudo insserv
これらのinsserv
初期化スクリプトが/etc/init.d/.depend.boot
。/etc/init.d/.depend.start
起動時にstartpar
これらのスクリプトを読み、これらの規則に従ってプロセスが並列に開始されます。
たとえば、以下は私のsysvinitブートイメージです(コンソールブート)。
OpenRC(最適化されていない)
他のパッケージと同じ方法でOpenRCをインストールします。
$ apt update
$ apt install openrc
インストールが完了すると、次のメッセージが表示されます。
**********************************************************************
*** 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
**********************************************************************
スーパーユーザーとして実行してください。
インストール中およびapt
削除されます。insserv
startpar
しかし、少なくとも私の経験ではOpenRCは改善されたsysvinitより遅い。これは、OpenRCがinsserv
パッケージがインストールされたときではなく、起動時の依存関係を計算するためです。
たとえば、以下は1.57秒遅いOpenRCを使用したブートチャートです。
OpenRC(最適化)
さらに進むには、この行をrc_parallel="YES"
に追加できます/etc/rc.conf
。ただし、これにより開始出力が破損し、開始時間が最小限に抑えられます。これはまだinsserv
+より遅いですstartpar
。
これは、OpenRCがopenrc-runを使用してより最適に設定するのではなく、シェルにまだ書かれているLSB initスクリプトを使用するためです。最新バージョンのOpenRC(sysvinitの代わりにopenrc-initを使用)を使用しても、起動時間はまだ悪いです。