suse下自动启动脚本

时间:2021-09-03 06:01:35

suse下自动启动脚本

http://blog.csdn.net/herobox/article/details/8961358

 

suse下自动启动脚本

 也许你对SUSE Linux很了解,也许你不太了解,都没关系,在这里我们一起互相讨论,今天我们讨论的是在SUSE Linux Tomcat自动启动。希望本文能对大家有一些帮助,希望你能学会SUSE Linux Tomcat自动启动。在/etc/init.d/boot.local文件中添加命令。Red Hat系统的对应文件是/etc/rc.d/rc.local。

 

对于Linux系统启动时自动运行的命令或程序,在rh-based linux 系统,一般常见是放在 /etc/rc.d/rc.local 中。但SuSE Linux 没有这个文件,另外也不推荐使用者这样管理启动服务。推荐使用正规的方式来管理服务启动方式。

 

有人会说,在SuSE系统里,可以放在 /etc/init.d/boot.local 中,这要看实际情况。因为 SuSE 的 /etc/init.d/boot.local 文件是由/etc/init.d/boot 这个 script 所启动的,而且是最后 boot script 工作完成要准备进入 runlevel 环境执行各项 rc script 时所执行。而rh 的 /etc/rc.d/rc.local 档案是 runlevel 环境执行各项 rc script 时最后一个阶段执行的,所以层面不一样。如果你要运行的程序适合于runlevel  这项服务之前就执行的话,在SuSE linux 中可以放在 boot.local 文件里。

 

但如果你的服务需要是在进入 runlevel 后才执行的话,SuSE 下正规做法应该是自己写一个 rc script放到 /etc/init.d/ 目录下,然后使用 chkconfig or inssev 程序来管理配置能够于某个 runlevel 环境开机时是否要启用关闭该服务项目。该 rc script 写法可以自己参考一下 /etc/init.d/ 里面现成的 script 档案,应该很容易就写一个自己的版本。

 

一、创建启动/停止脚本文件

 

通过一下脚本,可以使Tomcat以Service方式运行。

 

#!/bin/bash
# chkconfig:
2345 10 90
# description: Starts and Stops the Tomcat daemon.
TOMCAT_HOME
=/usr/local/tomcat/apache-tomcat-5.5.25
TOMCAT_START
=$TOMCAT_HOME/bin/startup.sh
TOMCAT_STOP
=$TOMCAT_HOME/bin/shutdown.sh
# necessary environment variables export
CATALINA_HOME
=$TOMCAT_HOME
export JAVA_HOME
=/usr/Java/jdk1.6.0_03
# source
function library.
.
/etc/rc.d/init.d/functions
# source networking configuration.
.
/etc/rc.d/network
# check that networking is up.
[
"${NETWORKING}" = "no" ] && exit 0
# check
for tomcat script
if [ ! -f $TOMCAT_HOME/bin/catalina.sh ]
then echo "Tomcat not valilable..."
exit
fi
start(){
echo -n "Starting Tomcat: "
daemon $TOMCAT_START
echo
touch /var/lock/subsys/tomcat
}
stop(){
echo -n $"Shutting down Tomcat: "
daemon $TOMCAT_STOP
rm -f /var/lock/subsys/tomcat.pid echo
}
restart(){
stop
start
}
status(){
ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap start" | awk '{printf $1 " "}' | wc | awk '{print $2}' > /tmp/tomcat_process_count.txt
read line
< /tmp/tomcat_process_count.txt
if [ $line -gt 0 ]; then
echo -n "tomcat ( pid "
ps ax --width=1000 | grep "org.apache.catalina.startup.Bootstrap start" | awk '{printf $1 " "}'
echo -n ") is running..."
echo
else
echo "Tomcat is stopped"
fi
}
case "$1" in
start)
start ;;
stop)
stop ;;
restart)
stop
sleep 3
start ;;
status)
status ;;
*)
echo "Usage: tomcatd {start|stop|restart|status}"
exit
1
esac
exit
0