当前位置: 技术问答>linux和unix
关于脚本的自启动问题
来源: 互联网 发布时间:2016-01-20
本文导语: 我这两天作了一个关于CA系统的redhatAS4.0的双机,我写的脚本不能设置为开机自动启动,用chkconfig --add 报 the carestart.sh is not support service 错误。我把脚本贴出来麻烦大家帮我看看有什么错误没有,这个脚本在ha中...
我这两天作了一个关于CA系统的redhatAS4.0的双机,我写的脚本不能设置为开机自动启动,用chkconfig --add 报 the carestart.sh is not support service 错误。我把脚本贴出来麻烦大家帮我看看有什么错误没有,这个脚本在ha中能够启动。我写的脚本是通过一个大的脚本调用两个小的脚本。
这是我的castart脚本:
#!/bin/sh
cd /opt/jit/ca50
. /ca.sh -start&
这是我的castop脚本:
#!/bin/sh
cd /opt/jit/ca50
./ca.sh -stop&
这是我放到/etc/init.d下的脚本:
/etc/rc.d/init.d/functions
export CA_HOME=/opt/jit/ca50
export PATH=$CA_HOMEPATH
[ -f $CA_HOME/castart.sh ] || exit 0
[ -f $CA_HOME/castop.sh ] || exit 0
export PATH=$PATH:/usr/bin:/usr/local/bin
case "$1" in
start)
# Start daemon.
echo -n "Starting CA: "
$CA_HOME/castart.sh
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/CA
echo "[`date`] CA start $RETVAL " >> CA.log
;;
stop)
# Stop daemons.
echo -n "Shutting down CA: "
$CA_HOME/castop.sh
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/CA
echo "[`date`] CA stop $RETVAL " >> CA.log
;;
restart)
$0 stop
/bin/sleep 1
$0 start
;;
condrestart)
[ -e /var/lock/subsys/CA ] && $0 restart
;;
status)
if [ -e /var/lock/subsys/CA ]; then
RETVAL=0
else
RETVAL=3
fi
echo "[`date`] CA status $RETVAL " >> CA.log
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
esac
echo "[`date`] cmd: $0 $* :return $RETVAL" >> CA.log
exit $RETVAL
欢迎各位给出您的具体意见,谢谢!
这是我的castart脚本:
#!/bin/sh
cd /opt/jit/ca50
. /ca.sh -start&
这是我的castop脚本:
#!/bin/sh
cd /opt/jit/ca50
./ca.sh -stop&
这是我放到/etc/init.d下的脚本:
/etc/rc.d/init.d/functions
export CA_HOME=/opt/jit/ca50
export PATH=$CA_HOMEPATH
[ -f $CA_HOME/castart.sh ] || exit 0
[ -f $CA_HOME/castop.sh ] || exit 0
export PATH=$PATH:/usr/bin:/usr/local/bin
case "$1" in
start)
# Start daemon.
echo -n "Starting CA: "
$CA_HOME/castart.sh
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/CA
echo "[`date`] CA start $RETVAL " >> CA.log
;;
stop)
# Stop daemons.
echo -n "Shutting down CA: "
$CA_HOME/castop.sh
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/CA
echo "[`date`] CA stop $RETVAL " >> CA.log
;;
restart)
$0 stop
/bin/sleep 1
$0 start
;;
condrestart)
[ -e /var/lock/subsys/CA ] && $0 restart
;;
status)
if [ -e /var/lock/subsys/CA ]; then
RETVAL=0
else
RETVAL=3
fi
echo "[`date`] CA status $RETVAL " >> CA.log
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
esac
echo "[`date`] cmd: $0 $* :return $RETVAL" >> CA.log
exit $RETVAL
欢迎各位给出您的具体意见,谢谢!
|
多看看 /etc/init.d/ 里面其它的脚本。
你的脚本头上注释行里少了这么句话:
# chkconfig: 2345 25 88
你的脚本头上注释行里少了这么句话:
# chkconfig: 2345 25 88
|
放到/etc/rc.d/rc.local文件中
|
/etc/rc.local