起動時に現在のランレベルの起動スクリプトのリストを表示しようとしています。次のコードを書きました。
rl=`runlevel | cut -d " " -f2`
ls /etc/rc.d/rc$rl.d/S* | cut -d "/" -f5
sleep 10
rc.local
このコードをファイルに入れるとうまくいきます。
rc
ただし、ファイルまたは別のスクリプトファイルabc
に入れて、/etc/init.d
ランレベルディレクトリにソフトリンクを作成しても動作しません。
しかし、以下の簡単なコマンドはすべての方法で機能します。
ls /etc/init.d
特定のスクリプトが起動しない場合、特定のコマンド(実行レベルやパイプなど)は機能しませんか?それとも別のものはありますか?
コードをファイルに入れると、再起動のrc
前後にコードが実行されます。
rc
それでは、ファイルrc.local
とファイルrc.sysinit
の違いは何ですか?- このファイルを正確にどこで編集する必要がありますか?
2、3、4、5ランレベルでS99local
- >ソフトリンクもあります。rc.local
rc.local
これはランレベル1で実行できないことを意味しますか?
ベストアンサー1
rc
Linuxディストリビューションでは通常これを使用しませんが、BSD用rc.local
シンボリックリンクを追加せずに起動時に追加のコマンドを実行できるようにします。rc.sysinit
そんな気がする赤い帽子具体的かつプロセスの早い段階で実行します。最初のスクリプトの1つとして実行され、rc.local
後で実行されます。
また、ランレベル2、3、4、5でrc.localへのS99local - >ソフトリンクを見つけることができます。これは、rc.localがランレベル1で実行されないことを意味しますか?
そうですね。これは、シンボリックリンクS99localが/etc/rc.local
ランレベルに入ったときに実行される最後のスクリプトの1つになることを意味します。ランレベルのように実行されません。2
3
4
5
1
1
シングルユーザー通常、構造/メンテナンス操作に使用される実行レベルです。