1. 创建tomcat用户

useradd -r -m -d /usr/local/tomcat7 -s /sbin/nologin tomcat

2. 将下面脚本命名为tomcat7 放入/etc/init.d/文件夹下即可

#!/bin/bash
#
# tomcat7 This shell script takes care of starting and stopping Tomcat
#
# chkconfig: -
#
### BEGIN INIT INFO
# Provides: tomcat7
# Required-Start: $network $syslog
# Required-Stop: $network $syslog
# Default-Start:
# Default-Stop:
# Description: Release implementation for Servlet 2.5 and JSP 2.1
# Short-Description: start and stop tomcat
### END INIT INFO #useradd -r -m -d ${TOMCAT_HOME} -s /sbin/nologin tomcat
#useradd -r -m -d /usr/local/tomcat7 -s /sbin/nologin tomcat ## Source function library.
#. /etc/rc.d/init.d/functions
export JAVA_OPTS="-Dfile.encoding=UTF-8 \
-Dcatalina.logbase=/var/log/tomcat7 \
-Dnet.sf.ehcache.skipUpdateCheck=true \
-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.EPollSelectorProvider \
-XX:+DoEscapeAnalysis \
-XX:+UseConcMarkSweepGC \
-XX:+CMSClassUnloadingEnabled \
-XX:+UseParNewGC \
-XX:MaxPermSize=256m \
-XX:PermSize=256m \
-XX:MaxNewSize=512m \
-Xms4096m -Xmx4096m"
TOMCAT_HOME=/usr/local/tomcat7
SHUTDOWN_WAIT=
export JAVA_HOME='/usr/java/jdk1.7.0_67'
export PATH=$JAVA_HOME/bin:$PATH tomcat_pid() {
echo `ps aux | grep org.apache.catalina.startup.Bootstrap | grep -v grep | awk '{ print $2 }'`
} start() {
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Tomcat is already running (pid: $pid)"
else
# Start tomcat
echo "Starting tomcat"
ulimit -n
umask
/bin/su -p -s /bin/sh tomcat $TOMCAT_HOME/bin/startup.sh
fi return
} stop() {
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Stoping Tomcat"
/bin/su -p -s /bin/sh tomcat $TOMCAT_HOME/bin/shutdown.sh let kwait=$SHUTDOWN_WAIT
count=;
until [ `ps -p $pid | grep -c $pid` = '' ] || [ $count -gt $kwait ]
do
echo -n -e "\nwaiting for processes to exit";
sleep
let count=$count+;
done if [ $count -gt $kwait ]; then
echo -n -e "\nkilling processes which didn't stop after $SHUTDOWN_WAIT seconds"
kill - $pid
fi
else
echo "Tomcat is not running"
fi return
} log(){
/bin/su -p -s /bin/sh tomcat -c "/usr/bin/tail -f $TOMCAT_HOME/logs/catalina.out"
} case $ in
log)
log
;;
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
pid=$(tomcat_pid)
if [ -n "$pid" ]
then
echo "Tomcat is running with pid: $pid"
else
echo "Tomcat is not running"
fi
;;
esac
exit

tomcat7 linux service的更多相关文章

  1. linux service

    有些东西真是难得搞懂,一旦懂了就容易记住了. 说到service 就不能不说 daemon, 他们两者看起来不相关.其实是紧密相连的两个概念. —— 就像两个同心的正五边形和正六边形放在一起时候的样子 ...

  2. linux service命令常见使用方法

    service命令,顾名思义,就是用于管理Linux操作系统中服务的命令. 1. 声明:这个命令不是在所有的linux发行版本中都有.主要是在redhat.fedora.mandriva和centos ...

  3. (转)linux service理解

    能够使用service命令进行操作的,就是已经注册成为linux的系统服务了.window中也可以注册成为系统服务的办法. service命令用的次数真不少,就是比较多的关联点,用了很多次了,还是有些 ...

  4. linux service 简单易懂贴

    service用于管理Linux操作系统中服务的命令 1.不是在所有linux发行版本中都有.主要是在redhat.fedora.mandriva和centos中. 2. 命令位于/sbin目录下,用 ...

  5. linux service命令解析(重要)

    我们平时都会用service xxx start来启动某个进程,那么它背后究竟执行了什么? 其实service的绝对路径为/sbin/service ,打开这个文件cat /sbin/service, ...

  6. Linux service进程管理

    Linux进程基本介绍: 1)在Linux中,每个执行的程序(代码)都称为一个进程.每一个进程都分配一个ID号. 2)每一个进程,都对应一个父进程,而这个父进程可以复制多个子进程.例如www服务器. ...

  7. Linux service命令

    service命令(其实与其说是命令,不如说是脚本),因为service本身就是一个脚本,这个脚本在/sbin路径下,待后续shell脚本功底好了将去认真去看看这个脚本的内容(可不能被人忽悠了.) s ...

  8. linux service命令解析

      我们平时都会用service xxx start来启动某个进程,那么它背后究竟执行了什么? 其实service的绝对路径为/sbin/service ,打开这个文件cat /sbin/servic ...

  9. [Linux]Service mysql start出错(mysql: unrecognized service)解决方法

    service mysql start出错,mysql启动不了,解决mysql: unrecognized service错误的方法如下: [hitony ~]# service mysql star ...

随机推荐

  1. 杭电多校第一场-M-Code

    题目描述 After returning with honour from ICPC(International Cat Programming Contest) World Finals, Tom ...

  2. composer 的安装以及一些插件的下载等

    安装composer: 下载composer: curl -sS https://getcomposer.org/installer | php 将composer.phar文件移动到bin目录以便全 ...

  3. 论文阅读笔记:《Interconnected Question Generation with Coreference Alignment and Conversion Flow Modeling》

    论文阅读:<Interconnected Question Generation with Coreference Alignment and Conversion Flow Modeling& ...

  4. CentOS提示::unknown filesystem type 'ntfs'自动挂载NTFS分区的U盘或者移动硬盘

    CentOS默认源里没有NTFS-3G,想要添加ntfs支持,无非是自己下载编译安装或者加源yum安装.重新安装了一个CentOS7,用的是添加aliyun的epel源来yum安装的方式,简单易行. ...

  5. vue生态系统之vuex

    一.webpack生成项目 1.webpack 在需要建立项目的目录中进行初始化项目 E:\vueProject>vue init webpack vuexpj ? Project name v ...

  6. Centos Apache 80 代理Tomcat 8080端口

    运行环境:Centos 6.5 Apache: 2.2.5 开启apache proxy的相应模块 编辑 /etc/httpd/conf/httpd.conf文件 sudo vim /etc/http ...

  7. leetcood学习笔记-160*-相交链表

    题目描述: 方法一: class Solution(object): def getIntersectionNode(self, headA, headB): """ : ...

  8. 【luoguP3701】「伪模板」主席树

    description byx和诗乃酱都非常都非常喜欢种树.有一天,他们得到了两颗奇怪的树种,于是各自取了一颗回家种树,并约定几年后比一比谁种出来的树更加牛x. 很快,这棵树就开花结果了.byx和诗乃 ...

  9. 暑期集训日志(Day6~Day17)

    章·十七:2019-07-28:为谁辛苦为谁甜 ·昨日小结 颓爆了QAQ,昨天又垫底了. 最简单一道题弃疗的我直接被甩倒了总榜垫底…… 我……不想说啥…… 我是渣比. 我不能颓废了. 醒来啊麦克白! ...

  10. NX二次开发-UFUN求两个对象最短距离UF_MODL_ask_minimum_dist

    NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> UF_initialize() ...