Gau*_*wal 26 init.d scripts tomcat
我已经在 Ubuntu 12.04 LTS 上安装了 Tomcat 7,它在 Amzon EC2 实例上运行。现在我希望 tomcat 应该在系统重启时自动重启。
我阅读了这篇博客,其中建议将以下脚本添加到/etc/init.d/tomcat7
:
# Tomcat auto-start
#
# description: Auto-starts tomcat
# processname: tomcat
# pidfile: /var/run/tomcat.pid
case $1 in
start)
sh /usr/share/tomcat7/bin/startup.sh
;;
stop)
sh /usr/share/tomcat7/bin/shutdown.sh
;;
restart)
sh /usr/share/tomcat7/bin/shutdown.sh
sh /usr/share/tomcat7/bin/startup.sh
;;
esac
exit 0
Run Code Online (Sandbox Code Playgroud)
并发出以下命令:
sudo chmod 755 /etc/init.d/tomcat7
sudo ln -s /etc/init.d/tomcat7 /etc/rc1.d/K99tomcat
sudo ln -s /etc/init.d/tomcat7 /etc/rc2.d/S99tomcat
sudo /etc/init.d/tomcat7 restart
Run Code Online (Sandbox Code Playgroud)
我的问题
Mar*_*ski 52
在 /etc/init.d/tomcat7 中创建 init 脚本,内容如下(你的脚本也应该可以工作,但我认为这个更符合标准)。
这样 Tomcat 只会在配置网络接口后启动。
初始化脚本内容:
#!/bin/bash
### BEGIN INIT INFO
# Provides: tomcat7
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start/Stop Tomcat server
### END INIT INFO
PATH=/sbin:/bin:/usr/sbin:/usr/bin
start() {
sh /usr/share/tomcat7/bin/startup.sh
}
stop() {
sh /usr/share/tomcat7/bin/shutdown.sh
}
case $1 in
start|stop) $1;;
restart) stop; start;;
*) echo "Run as $0 <start|stop|restart>"; exit 1;;
esac
Run Code Online (Sandbox Code Playgroud)
更改其权限并自动添加正确的符号链接:
chmod 755 /etc/init.d/tomcat7
update-rc.d tomcat7 defaults
Run Code Online (Sandbox Code Playgroud)
从现在开始,它会在进入适当的运行级别后自动启动和关闭。你也可以控制它service tomcat7 <stop|start|restart>
归档时间: |
|
查看次数: |
117876 次 |
最近记录: |