linux 自启动方法
参考文章:http://vod.sjtu.edu.cn/help/Article_Print.asp?ArticleID=626
http://hiandroidstudio.blog.51cto.com/5902332/1308341
http://blog.csdn.net/fireroll/article/details/15503463
查看服务是否自启动
查看服务的当前状态
#service servicename status
查看服务的开机自动启动状态
#chkconfig --list servicename
一. 在/etc/rc.local中添加
如果不想将脚本粘来粘去,或创建链接什么的,则:
step1. 先修改好脚本,使其所有模块都能在任意目录启动时正常执行;
step2. 再在/etc/rc.local的末尾添加一行以绝对路径启动脚本的行;
以Tomcat为例,在/etc/rc.d/rc.local 中增加启动脚本路径,例如:
export JDK_HOME=/usr/local/jdk
export JAVA_HOME=/usr/local/jdk
/apache/tomcat/bin/start.sh
若系统中已经配置JDK_HOME和JAVA_HOME,则只需要最后一行的tomcat命令
二. chkconfig 命令(redhat 操作系统下)
chkconfig 有五项功能:
添加服务,删除服务,列表服务,改变启动信息以及检查特定服务的启动状态。
语法为:
chkconfig --list [name]
chkconfig --add name
chkconfig --del name
chkconfig [--level levels] name
chkconfig [--level levels] name
例如:
1. 进入/etc/init.d;
2. 新建文件tomcat,内容如下:
#!/bin/sh
# chkconfig: 345 99 10
# description: Auto-starts tomcat
# /etc/init.d/tomcat
# Tomcat auto-start
# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/network
RETVAL=0
export JRE_HOME=/usr/java/jdk1.6.0_29
export CATALINA_HOME=/usr/local/tomcat
export CATALINA_BASE=/usr/local/tomcat
start()
{
if [ -f $CATALINA_HOME/bin/startup.sh ];
then
echo $"Starting Tomcat"
$CATALINA_HOME/bin/startup.sh
RETVAL=$?
echo " OK"
return $RETVAL
fi
}
stop()
{
if [ -f $CATALINA_HOME/bin/shutdown.sh ];
then
echo $"Stopping Tomcat"
$CATALINA_HOME/bin/shutdown.sh
RETVAL=$?
sleep 1
ps aux | grep /usr/local/tomcat | awk '!/awk/ && !/grep/ {print $2}'|xargs kill -9
echo " OK"
# [ $RETVAL -eq 0 ] && rm -f /var/lock/...
return $RETVAL
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
echo $"Restaring Tomcat"
$0 stop
sleep 1
$0 start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit $RETVAL
3. 添加执行权限
chmod +x /etc/init.d/tomcat
4. 随系统启动
chkconfig --add tomcat
5. 重启系统