RedHatのサービス

[サーバの実験室 Redhat/Fedora]

作成 : 2002/06/30

"サーバの実験室"の検索


/etc/rcX.dディレクトリ

ランレベルXで、どのサービスを起動・停止するかは、/etc/rcX.dディレクトリで設定する。 ランレベル3で起動・停止するサービスは、/etc/rc3.dディレクトリで設定し、ファイル名の先頭がSであれば起動、Kであれば停止を実行する。

/etc/rcX.dディレクトリ内のファイルは、/etc/init.dディレクトリ内のスクリプトへのシンボリックリンクとなっている。 手動で起動時サービスの起動・停止を設定したいときは、/etc/init.dディレクトリ内のスクリプトのへシンボリックリンクを、/etc/rcX.dに作成すればよい。

# cd /etc/rc3.d
# ln -s ../init.d/httpd S85httpd

システムを再起動するまで、設定したサービスは起動・停止されない。 すぐにサービスを起動・停止したい場合は、/etc/init.dディレクトリ内のスクリプトを実行する。

# /etc/init.d/httpd ( start | stop | restart )

/etc/xinetd.dディレクトリ

pop3サービスやftpサービスなどは、xinetdを通して起動される。 xinetdを通して起動されるサービスは、/etc/xinetd.dディレクトリ内のファイルで設定を行う。 「disable = no」となっていればサービスは起動され、「disable = yes」となっていればサービスは起動されない。

下は、pop3サービスのための、/etc/xinetd.d/ipop3ファイルの例。

service pop3
{
        disable = no
        socket_type             = stream
        wait                    = no
        user                    = root
        server                  = /usr/sbin/ipop3d
        log_on_success          += USERID
        log_on_failure          += USERID
}

設定を変更した場合は、xinetdの再起動を行う。

# /etc/init.d/xinetd restart

chkconfigコマンド

chkconfigコマンドを使用すると、起動時サービスの確認と、追加・削除を行うことができる。 実際は、/etc/rcX.dと/etc/xintd.dのファイルを設定している。

起動時サービスの確認: # chkconfig --list

起動時サービスの追加: # chkconfig --level [0123456] (service) on

起動時サービスの削除: # chkconfig --level [0123456] (service) off

現在のランレベルでhttpdサービスを起動するように設定するには、次のようにする。

# chkconfig httpd on

ntsysvコマンド

ntsysvコマンドを使用すると、起動時サービスの追加・削除を行うことができる。 実際は、/etc/rcX.dと/etc/xintd.dのファイルを設定している。

# ntsysv

最低限必要なサービス

インストールしたままの状態だと、さまざまなサービスが起動するよう設定されている。 必要なものを残して、不要なサービスを起動させないようにする。 これぐらいあればいいかな。

(crond)cronサービスを提供
ipchains/iptablesファイアウォール
keytableキーボード配列を定義
(kudzu)起動時PnP
networkネットワークサービスを提供
random乱数発生
syslogdsyslogサービスを提供

起動時サービスの追加・削除

起動するよう設定されているサービスは、chkconfigコマンドで確認できる。

# chkconfig --list

起動時サービスの追加・削除は、ntsysvコマンドを使用するのがお手軽。 設定したいランレベルで、ntsysvコマンドを実行する。

# ntsysv

chkconfigやntsysvでは、動いているサービスを止めることはできない。 kill/pkillや/etc/init.dディレクトリのスクリプトで停止させる。


[サーバの実験室 Redhat/Fedora]