繁体   English   中英

如何编写init脚本

[英]How to write init script

嗨,我使用的是64位Fedora 10 linux。 我已经创建了一个示例java应用程序。 现在我想为该应用程序编写init脚本。 所以我的应用程序应该在启动时启动。

如何编写init脚本以在启动时启动。

谢谢Sunil Kumar Sahoo

这里有一个很好的指南:

http://www.novell.com/coolsolutions/feature/15380.html

我建议看看tomcat startup.shshutdown.sh脚本,然后修改以下init.d脚本

#!/bin/bash
#
# tomcat
#
# chkconfig:
# description:  Start up the Tomcat servlet engine.

# Source function library.
. /etc/init.d/functions


RETVAL=$?
CATALINA_HOME="/usr/apps/apache/tomcat/jakarta-tomcat-4.0.4"

case "$1" in
 start)
        if [ -f $CATALINA_HOME/bin/startup.sh ];
          then
      echo $"Starting Tomcat"
            /bin/su tomcat $CATALINA_HOME/bin/startup.sh
        fi
  ;;
 stop)
        if [ -f $CATALINA_HOME/bin/shutdown.sh ];
          then
      echo $"Stopping Tomcat"
            /bin/su tomcat $CATALINA_HOME/bin/shutdown.sh
        fi
  ;;
 *)
  echo $"Usage: $0 {start|stop}"
  exit 1
  ;;
esac

上面的脚本缺少很多东西,使其完全符合Linux Standard Base。 您可能希望从发行版复制现有的init.d脚本。 可以在这里找到稍微好一点的脚本: http//blog.valotas.com/2011/05/tomcat-initd-script.html

我通常只从/etc/init.d中获取一个较小的init脚本并进行修改。

编辑

最简单的方法是将程序添加到/etc/rc.local文件中。 这将是最后一个启动脚本执行。 你不必乱用“开始”和“停止”的东西。

但是,如果您对能够随意启动和停止程序感兴趣,则需要编写脚本。

这里的其他一些答案将帮助您入门。

许多发行版附带了一个框架脚本,您可以将其用作自己的init脚本的模板,位于/etc/init.d/skeleton/etc/init.d/skel

我见过的一些最好的java应用程序倾向于使用tanuki包装器

它标准化不同操作系统的启动脚本,即可用于配置* nix守护程序或Windows服务。

它提供了一个标准的命令行界面,用于停止,启动,重新启动和检查状态 - 运行与否。

我很高兴看到它的使用越来越多,因为我不必再学习它,学习一次并一次又一次地重复使用它。

通过使用此服务库,您的应用程序可以从未来的增强功能中受益。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM