この特集のトップページへ
この回のトップページへ

起動処理を付け加えてみよう

 次に独自に処理を追加する方法を解説しよう。ここでは,例としてhttpサーバのApacheを自分でインストールして起動スクリプトを追加する手順を見る。Apacheのインストール先は,/usr/local/apacheディレクトリだ。

 Apacheの起動スクリプト例は,次の通りだ。

#!/bin/sh
APACHE=/usr/local/apache
if [ -x $APACHE/bin/httpd -a -x $APACHE/bin/apachectl ]; then
        $APACHE/bin/apachectl start
        echo -n 'apache '
fi

 次にこのスクリプトを apache.sh というファイル名で,/usr/local/etc/rc.dディレクトリに保存する。ファイルのパーミッションは,必ず755に設定しておくことを忘れずに。

# cp apache.sh /usr/local/etc/rc.d
# cd /usr/local/etc/rc.d
# chmod 755 apache.sh

 これで,次回のマシン起動時から自動的に実行されるようになる。これは,先に紹介したrcスクリプトの中で,/etc/rc.d や/usr/local/etc/rc.dディレクトリの中の「*.sh」スクリプトを自動的に実行するようになっているからである。

シャットダウン時のスクリプト/etc/rc.shutdown

 このように,独自に追加したサーバの自動起動は /etc/rc.dディレクトリ,あるいは/usr/local/etc/rc.dディレクトリに起動用シェルスクリプトを作成しておくのだ。

 マシンをシャットダウンする際に何らかの特定の終了処理を行わなければならないような場合もあるだろう。こんな時は,起動スクリプトを設置するだけでは不十分である。そのような場合には,/etc/rc.shutdownファイルのスクリプトの中で,終了のための処理ファイルを別に呼び出すようにする。

リスト
別ウィンドウで見る or 03a.txt

 例えば,Apacheの場合には,「Insert shutdown procedures here」という記述の後に,次のように追加しよう。このように,FreeBSDではRedHat Linuxなどと比べて比較的シンプルに設定を行うことが可能である。

echo -n Shutting down daemon processes: 
# Insert shutdown procedures here
/usr/local/apache/bin/apachectl stop

PREV 3/8 NEXT