このページはrcスクリプトについて紹介しています。サーバーを管理するにはサービスの追加・削除など環境にあった設定が必要です。不要なサービスを起動しないためにもrcスクリプトについては少なくとも理解しましょう。

vinelinuxで自宅サーバー公開ロゴ
サイトマップ

>>Linuxで自宅サーバー公開(TOP) >>サービスの設定方法


サービスの設定方法


 
rcスクリプトとは? 
 rcスクリプトとは、Linuxで各種サービスの起動設定を行うシェルスクリプトです。
 スクリプト自体は /etc/init.d 配下に存在します。
 
 ↓/etc/init.d 配下のスクリプト(例)
anacron crond halt killall named nfslock proftpd single syslog xfs
atd dhcpd httpd kudzu netfs ntpd random smb usbmgr yppasswdd
autofs functions inet lpd network portmap rawdevices squid usermin ypserv
canna gpm keytable murasaki nfs postfix routed sshd webmin ypxfrd

 実際の起動設定は、ランレベルごとに設定用ディレクトり( /etc/rc[0〜6].d )が存在し
 起動設定を行うシェルスクリプトへのシンボルリンクを作ることにより、各種サービス
 の起動設定を可能とします。
K25squid K74ntpd S10network S20random S56rawdevices S85httpd S91smb S99usermin
 ※シンボルリンクはS**サービス名、K**サービス名となっています。(**:2桁の数字)
  Sで始まるものは起動用、Kで始まるものは終了用のスクリプトです。
  2桁の数字は起動(停止)順序を決めています(2桁の数字が小→大の順に実行)

 シンボルリンクを使うことにより、異なるランレベルでも共通のスクリプトファイル
 ( /etc/init.d 配下のスクリプト) にアクセスすることができます。
 変更する場合は共通のスクリプトを編集するのみで、全てに反映できます。
 シンボルリンクって便利ですね^^
 

 サービスの起動設定 
 それでは、実際に各種サービスの起動設定はどうやるのでしょうか?
 上記ファイルを手動で追加削除するのはちょっと....
 設定用のコマンドがあります。お勧めなのは chkconfigコマンドです。
 ntsysvコマンドもありますが、chkconfigの方が使いやすいです。
 (グラフィカルではないですが....)

 以下に chkconfigコマンドの使用例を示します。
[root@yu_syun rc3.d]# chkconfig --list  ←各ランレベルでの設定一覧
canna 0:off 1:off 2:on 3:on 4:on 5:on 6:off
lpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
xfs 0:off 1:off 2:on 3:on 4:on 5:on 6:off
anacron 0:off 1:off 2:on 3:on 4:on 5:on 6:off
httpd 0:off 1:off 2:off 3:on 4:off 5:on 6:off

↓サービスを指定することも可能です。
[root@yu_syun rc3.d]#
chkconfig --list smb
smb 0:off 1:off 2:off 3:on 4:on 5:on 6:off

↓smbの起動設定を"ON(自動起動)"設定にする
[root@yu_syun etc]# chkconfig smb on


 サービスをONまたはOFF設定して、サービスの設定一覧を確認してみてください。
 設定がきちんと反映されているはずです。

 起動サービスの設定は、サーバーを運用する上で必要となります。
 ご自身の環境に合ったサービスの起動方法をマスターしましょう。(自分も^^;)


 【ご参考】
 スーパーサーバー方式ではサービス起動方法に注意が必要です。
  ↓chkconfig --list(例)
[root@yu_syun]# chkconfig --list
 proftpd
0:off 1:off 2:off 3:off 4:off 5:off 6:off
 inet 0:off 1:off 2:off
3:on 4:on 5:on 6:off


 上記設定で、proftpdのサービスは正常に起動します。なぜでしょうか?
 proftpdは全てのランレベルでoffとなっているのに....
 そうです、proftpdはスーパーサーバー方式(inetd)で起動しているのです。
 つまり、/etc/inetd.confで有効にしたサービスは、スタンドアローン方式での
 サービス起動をoffに設定する必要があります。
 くれぐれも、スーパーサーバー方式とスタンドアローン方式を同時に起動しないでください^^




 Copyright(c) 2005, All Rights Reserved.