Init/bootプロセスを理解しようとしています。私のシステムはLMDEなので、その点ではほぼ標準のDebianになると思います。 /etc/init.d/
、/etc/defaults/
などのinitスクリプトの基本を多かれ少なかれ理解していると思いますが、私に見えるいくつかのスクリプトには/lib/init/
の奇妙な使用法があります。 /etc/init.d/に他のすべてと一緒にあるはずです。誰かがこれの論理を説明できますか? /lib/init/rw/
についてはたくさんの議論がありますが、/lib/init/
自体については何も見つかりません。
これがそこにあるすべてです:
drwxr-xr-x 3 root 4.0K 2013-12-25//15:20:41 rw/
-rw-r--r-- 1 root 1.3K 2014-01-21//07:37:07 vars.sh
-rw-r--r-- 1 root 3.3K 2014-01-21//07:37:07 tmpfs.sh
-rw-r--r-- 1 root 741 2014-01-21//07:37:07 swap-functions.sh
-rw-r--r-- 1 root 17K 2014-01-21//07:37:07 mount-functions.sh
-rw-r--r-- 1 root 4.4K 2014-01-21//07:37:07 bootclean.sh
dpkg-query -S /lib/init
を実行すると、次の結果が返されます。
initscripts: /lib/init
スクリプトを開くだけです。 /etc/init.d
は、起動中またはランレベルの変更中に開始または停止する必要があるデーモンおよびプロセスを処理します。
ただし、/lib/init
内のこれらのスクリプトは、.pidファイルとロックファイルのクリーニング、スワップのマウント/アンマウント、およびランレベル間のシステムのクリーニングに関連するタスクを実行します。
lib
ディレクトリ内の他のほとんどのものと同じように、それらはライブラリです。
この場合、これらの各ファイルは関数で満たされ、他には何もありません。それらは、それらの機能にアクセスするために他のシェルスクリプトによって供給されています。ファイルは関数で満たされているだけなので、直接実行しても何も起こりません。
したがって、あなたの質問に答えるために、それらはさまざまなinitスクリプトによって使用されるシェルライブラリ関数のスイートです。