`

在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


二、保存并设置脚本文件

将以上的脚本文件保存在/etc/init.d中,命名为tomcat;
设置tomcat的文件属性
    #chmod a+x tomcat

三、设置服务运行级别
最后用chkconfig设置服务运行
    #chkconfig --add tomcat

服务就添加成功了。

然后你就可以用 chkconfig --list 查看,在服务列表里就会出现自定义的服务了。



注意:
在tomcat文件的头两行的注释语句中,需要包含chkconfig和description两部分内容(确认不要拼写错误,),否则在执行“chkconfig --add tomcat”时,会出现“tomcat服务不支持chkconfig”的错误提示。

chkconfig这行表示缺省启动的运行级别以及启动和停止的优先级,如该服务缺省不再任何运行级启动,则以 - 代替运行级别。在tomcat中表示脚本在运行级2、3、4、5启动,启动优先权为10,停止优先权为90。

description行对服务进行描述,可以用 “\” 跨行注释。
分享到:
评论
2 楼 liuxinhongxin 2008-12-19  
suse 11。0 没有发现 /etc/rc.d/init.d/functions 这个目录 阿
1 楼 tillzhang 2008-09-09  
以上的正在测试,不知哪的原因一直未成功实现自动重启。

相关推荐

    SUSE Linux下开机自动运行脚本命令的方法

    在SUSE Linux(如openSUSE)中,为了实现系统启动时自动执行某些脚本或命令,需要了解和利用特定的启动脚本机制。本文将详细介绍openSUSE 11和10 SP2中的启动文件设置方法,并通过一个具体的例子来展示如何实现开机...

    SUSE Linux Enterprise 12 SP5安装包ISO镜像

    SUSE Linux Enterprise 12 SP5-Server-DVD-x86_64-GM-DVD1.iso SUSE Linux Enterprise 12 SP5-Server-DVD-x86_64-GM-DVD2.iso Raj Meel宣布了适用于SUSE Linux Enterprise 12的第五个服务包,这是该公司商业,企业...

    SUSE Linux 11 Bible

    《SUSE Linux 11 Bible》是一本深入探讨SUSE Linux发行版的全面指南,主要聚焦于OpenSUSE 11.0和SUSE Linux Enterprise Server。本书由Roger Whittaker和Justin Davies合著,由Wiley Publishing, Inc.出版。这本书...

    基于SUSE Linux下的oracle10g数据库和tomcat应用系统安装配置参考手册

    自己编写的文档《基于SUSE Linux下的oracle10g数据库和tomcat应用系统安装配置参考手册》 目 录 1. 引言 4 1.1 目的 4 1.2 适用范围 4 1.3 参考资料 4 2. 虚拟机中安装SUSE LINUX系统 5 2.1 新建虚拟机 5 2.2 安装...

    suse linux常用命令

    在Suse Linux中,目录管理是非常重要的。通过学习以下命令,用户可以轻松地管理目录,提高工作效率。 1. 配置默认网关 在Suse Linux中,配置默认网关可以通过以下命令实现: `sudo route add default gw &lt;网关IP&gt;...

    SUSELINUX管理指南

    在学习SUSE Linux的管理时,你需要掌握以下几个关键知识点: 1. **安装与配置**:了解如何通过YaST(Yet another Setup Tool)进行系统安装,包括分区、网络设置、软件选择等。 YaST是SUSE Linux的集成管理工具,...

    suse linux安装图文教程

    如果您想在虚拟机中安装 SUSE Linux,可以使用虚拟机软件,例如 VMware 或 VirtualBox,创建一个虚拟机,安装 SUSE Linux。虚拟机安装可以帮助您更好地测试和体验 SUSE Linux。 总结 SUSE Linux 安装图文教程详细...

    suse linux 10.0新手指南

    《SUSE Linux 10.0 新手指南》是一份专为初学者设计的详尽教程,旨在帮助那些刚刚接触Linux系统,特别是SUSE Linux 10.0的用户快速上手。SUSE Linux是由德国SUSE公司开发的一款知名的开源操作系统,以其稳定性和企业...

    Suse Linux Enterprise 12 SP3下载资源

    日常进行开发安装虚拟机,需要Suse Linux操作系统,官网下载速度忒慢,特上传网盘资源,需要的伙伴可以下载

    Suse Linux 11 SP3+LVM

    在本篇文章中,我们将详细介绍如何使用逻辑卷方式安装 SuSE Linux 11 SP3,实现后期分区空间灵活调整。 什么是 LVM? LVM(Logical Volume Manager,逻辑卷管理器)是 Linux 中的一种存储管理系统,它允许用户在...

    Suselinux基础及系统管理.pdf

    在安装SUSE Linux前,需要了解一些基础知识,如硬盘分区和SWAP分区的设置。SWAP分区用于当物理内存不足时,作为临时存储空间。分区格式可以选择传统的EXT4,或者更现代的XFS或Btrfs。安装过程中,用户需选择启动...

    suselinux详细安装介绍

    本文提供了 SuSE Linux 的详细安装介绍,涵盖了 Linux 安装前的准备、目录结构、文件系统概念、磁盘分区等多个方面的知识点。通过本文,读者可以系统地了解 SuSE Linux 的安装过程,并且对 Linux 操作系统的基本概念...

    SUSE Linux Enterprise 11 SP4 系统安装.pdf

    在本文中,我们将详细讲解如何进行SUSE Linux Enterprise 11 SP4的系统安装。 ### 1. 引导安装介质 首先,你需要将安装光盘或DVD插入计算机的光驱,并重新启动电脑。启动过程中,系统会自动从安装介质引导并显示...

    SuseLinux11 64位 系统镜像

    SLES-11-SP4-DVD-x86_64-GM-DVD1.iso 已安装成功 suselinux 64位

    SUSE Linux Enterprise Server 11 SP4 下载使用

    SUSE Linux Enterprise Server 11 SP4下载,请放心使用

    he Definitive Guide to SUSE Linux Enterprise Server 12

    the Definitive Guide to SUSE Linux Enterprise Server 12 is a task-oriented book designed for self-study as well as classroom environments, which will also serve you as a reference guide. The book ...

    SuseLinux简易教程

    - **启动GRUB**:通过GRUB启动SUSE Linux安装过程。 - **输入命令**: - `grub&gt;find /linux`:确认硬盘中的Linux内核位置。 - `grub&gt;root (hdn,m)`:指定根分区。 - `grub&gt;kernel /linux ramdisk_size=65536`:...

    SuSE Linux Enterprise Server 10 SP4-x86_64下载

    SuSE Linux Enterprise Server 10 SP4-x86_64 百度云下载地址, 可以快速下载,流畅安装

    mysql suse linux安装文档)

    在SUSE Linux上安装MySQL是一项基础的系统管理任务,尤其对于需要使用数据库服务的开发者和运维人员来说至关重要。本文档提供了详细的步骤来指导你完成MySQL的安装过程。 首先,你需要下载MySQL的安装文件。在本例...

Global site tag (gtag.js) - Google Analytics