# /etc/init.d/script restart << this runs fine, returns my shell prompt # exit << When I enter this command, my shell window just stays "stuck" and actually won't close down.
Anyone know why this happens?
Are you spawning/backgrounding jobs in the script?
Here is the script, it is a fairly simple start/stop/reset script that was written by Jay Farschman. One other question I had about this script is what the "$PROG" variable in the stop() function is for.
#!/bin/sh # # swatchrc This shell script takes care of starting and stopping # swatch. # # chkconfig: 2345 81 31 # description: Swatch is a System WATCHdog program that we are # using here to block repeated failed ssh logins. # processname: swatch
# Replace --tail-file with the file you wish to watch, see /etc/swatch/swatchrc
RETVAL=0 test -x /usr/bin/swatch || exit 0 start(){ echo "Starting swatch" # Spawn a new swatch program /usr/bin/swatch --daemon --config-file=/etc/swatch/swatchrc --tail-file=/u sr/local/ha-tomcat/logs/catalina.out --pid-file=/var/run/swatch.pid echo $PID return $RETVAL } stop () { # stop daemon echo "Stopping swatch:" $PROG kill -9 `cat /var/run/swatch.pid` rm -f /var/run/swatch.pid killall tail return $RETVAL } restart () { stop start RETVAL=$? return $RETVAL }
case "$1" in start) start ;; stop) stop ;; restart) restart ;; *) echo "Usage: $0 {start|stop|restart}" RETVAL=1 esac exit $RETVAL