- ベストアンサー
ランレベルと起動スクリプト
ランレベルと起動スクリプトとの関係について教えてください。 rc*.dというファイルについて色々調べているのですが、 下記の説明を見つけまして /etc/rc1.d/ ランレベル1の際の起動スクリプト /etc/rc2.d/, ランレベル2の際の起動 スクリプト /etc/rc3.d/, ランレベル3の際の起動スクリプト /etc/rc4.d/, ランレベル4の際の起動スクリプト /etc/rc5.d/, ランレベル5の際の起動スクリプト デフォルトでsolaris起動時にランレベル3になるような場合、 rc3.dの中のスクリプトを読みに行くのはわかるのですが、 他のrc2.dやrc1.dは読みに行かないのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
確認方法は、パッと思いつくのは 1) docs.sun の Solaris9 のシステム管理を読む http://docs.sun.com/app/docs/doc/817-4909/6mkdd9iil?l=ja&a=view 2) ブートプロセスのシェルを追う /etc/inittab -> /sbin/init -> /sbin/rc* ( rc0 とか rc1 とか・・) この順でシェルが呼ばれますので、丁寧に追えばわかるかも。 3) 起動、停止シェルを置いてみる runlebel3 で起動するマシンのrc2やrc1に、ログをはくだけなどの みせかけの起動シェルを置いてみてはいかがでしょう。 たしかに、僕も昔、疑問に思ったことがありますが、よくわからず 今に至っていますので、逆に結果を知りたいです。
その他の回答 (2)
- 3899
- ベストアンサー率54% (65/119)
こんにちは 簡単に… solarisのブート処理 poweron→POST→カーネル→initプログラム→sac、ttymon→login: となります。 この流れの中でinitプログラムのところで/etc/inittabファイルを参照して起動スクリプトを実行します。 /etc/inittabファイルを見て下さい。 1行目のエントリから順に実行されます。 マルチユーザの場合、4行目のinitdefaultのところで、第2フィールドが「3」を実行する指定になっています。 s2、s3、sc、coを実行します。 質問者様が言われている、ランレベル2と3を実行するということです。
お礼
お返事が遅くなりました。 おっしゃる通り、実行されました。 ネットなどを見て勘違いしていたようです。ありがとうございました。
- dyna_1550
- ベストアンサー率34% (122/353)
Solarisのバージョンは、Solaris10と考えていいでしょうか? 起動するアプリケーションの管理は、rcの管理から、SMFというものに 切り替わろうとしています。 以下のSUNのドキュメントを読むことをお勧めします。 Solaris のシステム管理 (基本編) http://docs.sun.com/app/docs/doc/819-0378/hbsysboot-41054?a=view rcは、/etc/rc* というシェルスクリプトにより起動されます。 裏覚え(だったら書くなと怒られそうですが)ですが、 rc0 -> rc1 -> rc2 -> rc3 (runlevel3 の場合) と呼ばれるものだったと記憶しています。
お礼
ご回答ありがとうございます、 すいません、solaris9を使用しています。 >裏覚え(だったら書くなと怒られそうですが)ですが、 > rc0 -> rc1 -> rc2 -> rc3 (runlevel3 の場合) もしこれが正解なら、私の悩みが一気に解決します。 色々なサイトをめぐっているのですが、rc.2はrunlevel2で読み込まれるとしか記載がなくて、なかなか解決に導けません。 本当に確認したいことは、職場で使用しているsolaris9の装置にrc2.dに入っている起動スクリプト以外に、インターフェイスのduplex,speedの設定などが見当たらなかったので調べていました。 /etc/systemなど色々な設定を確認しましたが設定されておらず、他の起動スクリプトにも入っていなかった為、rc2.dがrunlevel3で読み込まれるのであれば一気に解決します! 何か確認する方法や、どこかに詳細が記載されているサイトなどありましたら教えてください!
お礼
結果報告が遅くなってすいません、 3の方法をいただきまして、実施してみました。 デフォルト3で起動した際にrc2.dのスクリプトも読み込んでました。。。 rc2.dの配下にduplexとlink_speedの設定コマンドを入れたスクリプトを配置して、再起動したら見事に設定されたlink_speedに変わっていました。 う~~~ん、色々なサイトで回って 通常は、/etc/rc.d/rc3.d または /etc/rc.d/rc5.d 配下の 各スクリプトが実行される事になります。と載っていたので、たぶん読み込まないないよなぁ~・・・と思ってやってました、。。。 大変参考になりました。ありがとうございます。
補足
3の方法いただきました! 明日、時間があればやってみます。