ひさしぶりにLinux。

  • 今日はちょっとHSQLDBを入れてみた。

 起動/終了のスクリプトを作ってみたり。
 こんなかんじ?
(/etc/rc.d/init.d/hsqldb)
$ cat hsqldb


#!/bin/bash
#
# chkconfig: - 91 35
# description: Starts and stops HSQLDB Server.
#

# Source function library.
. /etc/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

[ -f /etc/sysconfig/hsqldb ] && . /etc/sysconfig/hsqldb

prog=$"HSQLDB server"
basedir=$"/home/uPortal_rel-2-4-2-quick-start/HSQLDB_1-7-2-4"
jar=$"$basedir/lib/hsqldb.jar"
java=$"/usr/java/jdk1.5.0_06/bin/java"
options=$"-database $basedir/demo/uPortal -port 8887"
log=$"/var/log/hsqldb.log"

start() {
echo -n $"Starting $prog: "
$java -cp $jar org.hsqldb.Server $options >$log 2>&1 &
RETVAL=$?
[ "$RETVAL" -eq 0 ] && success $"HSQLDB start" || \
failure $"HSQLDB start"
echo
[ "$RETVAL" -eq 0 ] && touch /var/lock/subsys/hsqldb
}

stop() {
echo -n $"Shutting down $prog: "
$java -cp $jar org.hsqldb.util.ShutdownServer $options
RETVAL=$?
[ "$RETVAL" -eq 0 ] && success $"HSQLDB shutdown" || \
failure $"HSQLDB shutdown"
echo
[ "$RETVAL" -eq 0 ] && rm -f /var/lock/subsys/hsqldb
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
sleep 3
start
;;
condrestart)
if [ -f /var/lock/subsys/hsqldb ]; then
stop
sleep 3
start
fi
;;
status)
status HSQLDB
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 1
esac

とか。どう?