レポ
クラウドで
伸びる人沈む人

連絡特定商取引将来設計運営方針&メルマガSEの彼女は?
成功レポート集 Fedora9インストール! EclipseでJava Oracleバックアップのアーキテクチャ ゼロからHPでCGI 便利ネット知識
無料レポ&講習 IT業界の実態 linux処方箋 Java処方箋 Oracle処方箋 Perl処方箋
起動スクリプトの作成

<IT技術の処方箋:起動スクリプトの作成>



起動スクリプトの作成方法を学習しましょう。


下にサンプルスクリプトを掲載しましたので、
それをみながら読んでいってください。


起動スクリプトは、おおきく別けて、環境変数の定義を行い、
start(),stop,restart()を作成します。


stat,stop,restartの
どれを指定されたかをcaseで別けて実行します。


ね、簡単でしょ。


で、二重起動防止の仕組みを簡単に説明しておきます。

start起動すると、
/var/lock/subsys/
にテンポラリーに、ゼロファイルを作成し、
このテンポラリーのファイルが存在すれば、
二重起動を防止するようになっています。


では、サンプルを見てみましょう。
トムキャットの起動スクリプトです。


#!/bin/sh
#
# chkconfig: - 85 15
#
# description: Start and stop Jakarta Tomcat service.
# processname: xxx-srv
# pidfile: /var/run/tomcat/xxx.pid
#

SUDO_CMD=/usr/bin/sudo
USER=root

JAVA_HOME=/usr/java/j2sdk1.4.2_08
CATALINA_BASE=/home/xxxusr/xxx
CATALINA_OPTS="-Xmx256M -Xms128M -Djava.awt.headless=true"
CATALINA_PID=/var/run/tomcat/xxx.pid
DISPLAY=localhost:0.0
CATALINA_HOME=/usr/local/tomcat
export JAVA_HOME CATALINA_BASE CATALINA_OPTS CATALINA_PID DISPLAY CATALINA_HOME
PATH=$PATH:$JAVA_HOME/bin

# Source function library.
if [ -f /etc/rc.d/init.d/functions ]; then
. /etc/rc.d/init.d/functions
elif [ -f /etc/init.d/functions ]; then
. /etc/init.d/functions
fi

start() {
echo "Starting xxx-srv: "

if [ -f /var/lock/subsys/xxx-srv ]; then
action "xxx-srv is running now." /bin/false
RETVAL=$?
echo ""
else
$SUDO_CMD -u $USER ""$CATALINA_HOME/bin/startup.sh" && touch /var/lock/subsys/xxx-srv
RETVAL=$?
echo ""
fi
}

stop () {
echo "Shutting down xxx-srv: "
if [ -f /var/lock/subsys/xxx-srv ]; then
$SUDO_CMD -u $USER ""$CATALINA_HOME/bin/shutdown.sh"
RETVAL=$?
if [ "$RETVAL" = "0" ]; then
rm -f /var/lock/subsys/xxx-srv
fi
echo ""
else
action "xxx-srv is not running." /bin/false
RETVAL=$?
echo ""
fi
}

status() {
status xxx-srv
}

restart() {
stop
sleep 5
start
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit $RETVAL




参考)起動スクリプトの意味
http://www.searchman.info/tips/1610.html

参考)起動スクリプトの登録
http://www.searchman.info/tips/1630.html

参考)起動スクリプトの順番
http://www.searchman.info/tips/1640.html
さらに補講教材があります。
以下をクリックしてください。

新人用Java勉強環境の準備

Servlet初心者が勘違いする「典型的な間違い」

クラウドで伸びる人沈む人 ||Copyright © 2005-2020 SearchMan,All Rights Reserved.