問題ID : 9043 : /etc/rc[0-6].d にあるスクリプトは、K→Sの順で実行されます
- フォーラムは新サイトへ移行しました。
- このフォーラムではゲスト投稿が禁止されています
前の投稿
-
次の投稿
|
親投稿
-
子投稿なし
|
投稿日時 2021-5-4 10:49 | 最終変更
tnishita2
投稿数: 123
> K27fuga → K30hoge → S29TEST → S30hoge → S35hogehoge
が正解で、その解説にある
> 起動するランレベルに応じた /etc/rc[0-6].d にあるスクリプトは、K→Sの順で実行されます。
はときどき聞く話ですが、その意味するところは、例えばランレベル2から3に移行したときに
/etc/rc2.d/K* を実行しランレベル2終了 → /etc/rc3.d/S* を実行しランレベル3開始
という流れになるということ、と私は解釈しています。
しかしこの問題には「他のランレベルからランレベル3に移行した場合」のような話は何も書かれていないので、マシンの電源を入れて最初にランレベル3で立ち上がった場合を考えるのが普通と思います。(そもそも他のランレベルの/etc/rc?.d/ にK27fuga などが存在するかも不明です。)
そしてK* スクリプトが実行されるとすれば、その後マシンをシャットダウンしたと考えるのが自然なので、
(マシン起動) → S29TEST → S30hoge → S35hogehoge → (シャットダウンした) → K27fuga → K30hoge
が正解ではないでしょうか。
※ この場合でも「最後にシャットダウンした」のような文言が問題文にないと不親切に感じますが、「他のランレベルからランレベル3に移行した」を仮定するよりは自然と思います。
が正解で、その解説にある
> 起動するランレベルに応じた /etc/rc[0-6].d にあるスクリプトは、K→Sの順で実行されます。
はときどき聞く話ですが、その意味するところは、例えばランレベル2から3に移行したときに
/etc/rc2.d/K* を実行しランレベル2終了 → /etc/rc3.d/S* を実行しランレベル3開始
という流れになるということ、と私は解釈しています。
しかしこの問題には「他のランレベルからランレベル3に移行した場合」のような話は何も書かれていないので、マシンの電源を入れて最初にランレベル3で立ち上がった場合を考えるのが普通と思います。(そもそも他のランレベルの/etc/rc?.d/ にK27fuga などが存在するかも不明です。)
そしてK* スクリプトが実行されるとすれば、その後マシンをシャットダウンしたと考えるのが自然なので、
(マシン起動) → S29TEST → S30hoge → S35hogehoge → (シャットダウンした) → K27fuga → K30hoge
が正解ではないでしょうか。
※ この場合でも「最後にシャットダウンした」のような文言が問題文にないと不親切に感じますが、「他のランレベルからランレベル3に移行した」を仮定するよりは自然と思います。