java daemon 启动_Tomcat以Daemon的方式启动(CentOS6&7)

1 前言

一直以来都觉得Tomcat以root身份运行非常不安全,故研究Tomcat如何以普通用户身份运行,以下是参考网络上的一些配置实现Tomcat以daemon方式运行于CentOS 6&7系统下面。

2 实践部分

2.1 环境配置

2.1.1 系统环境

ipaddress=10.168.0.157

OS=CentOS 6&7

2.1.2 配置编译环境yum -y install gcc gcc-c++ make expat-devel

2.1.3 下载JDK

1)下载页面:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2)下载选择

请选择“jdk-8u111-linux-x64.tar.gz”下载,命令行如下:wget http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.tar.gz?AuthParam=1479977626_06aed8a715c8fbbc10f72c89ee38910b

2.1.4 下载Tomcat

1)下载页面

http://tomcat.apache.org/

2)下载选择

请选择“Tomcat 9.0.0.M13”下载(注意选择“Binary Distributions”)版本,命令行如下:wget http://apache.fayea.com/tomcat/tomcat-9/v9.0.0.M13/bin/apache-tomcat-9.0.0.M13.tar.gz

2.1.5 配置防火墙

In CentOS 6vim /etc/sysconfig/iptables

增加如下行:-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

重启防火墙使服务生效/etc/init.d/iptables restart

In CentOS 7firewall-cmd --permanent --add-port=8080/tcp

firewall-cmd --reload

firewall-cmd --list-all

2.2 配置JDK

2.2.1 创建java目录mkdir /usr/java

2.2.2 解压tar xf jdk-8u111-linux-x64.tar.gz

mv jdk1.8.0_111 /usr/java/

2.2.3 配置环境变量vim /etc/profile

末尾加入如下内容:export JAVA_HOME=/usr/java/jdk1.8.0_111

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

注:以上配置只是为了下面的daemon环境的编译,编译完可以注释

2.2.4 配置生效source /etc/profile

2.2.5 环境变量测试java -version

2.3 配置Tomcat

2.3.1 创建tomcat目录mkdir /usr/tomcat

2.3.2 解压tar -xf apache-tomcat-9.0.0.M13.tar.gz

mv apache-tomcat-9.0.0.M13 /usr/tomcat/

2.3.3 配置环境变量vim /usr/tomcat/apache-tomcat-9.0.0.M13/bin/setenv.sh

输入如下配置JAVA_HOME=/usr/java/jdk1.8.0_111

JRE_HOME=${JAVA_HOME}/jre

CATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.0.M13

CATALINA_BASE=${CATALINA_HOME}

JAVA_OPTS='-server -Xms2048m -Xmx4096m -Xss512k'

环境变量配置请参考以下命令输出的内容:grep '^#' /usr/tomcat/apache-tomcat-9.0.0.M13/bin/catalina.sh

2.3.4 解压daemon工具包tar -xf /usr/tomcat/apache-tomcat-9.0.0.M13/bin/commons-daemon-native.tar.gz

2.3.5 编译daemon工具包cd /usr/tomcat/apache-tomcat-9.0.0.M13/bin/commons-daemon-1.0.15-native-src/unix/

./configure

make

2.3.6 配置daemon运行环境cp jsvc /usr/tomcat/apache-tomcat-9.0.0.M13/bin/

useradd -M -d /usr/tomcat/apache-tomcat-9.0.0.M13/ -s /sbin/nologin tomcat

chown -R tomcat: /usr/tomcat/apache-tomcat-9.0.0.M13

2.3.7 手动测试服务启停sudo -u tomcat /usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh start

sudo -u tomcat /usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh stop

确认服务正常启动与关闭:netstat -antp

浏览器测试确认:

268612101eb477751c723dae4dbfd9bc.png

2.3.8 启动服务与配置服务开机启动

In CentOS 6ln -s /usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh /etc/init.d/tomcat9

/etc/init.d/tomcat9 start

vim /etc/init.d/tomcat9

第二行加入如下内容:# chkconfig: 2345 55 25

配置服务自启动:chkconfig tomcat9 on

In CentOS 7vim /lib/systemd/system/tomcat9.service

输入如下内容:[Unit]

Description=seafile

After=network.target

[Service]

Type=forking

ExecStart=/usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh start

ExecReload=/usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh restart

ExecStop=/usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh stop

PrivateTmp=true

[Install]

WantedBy=multi-user.target

测试服务运行systemctl start tomcat9.service

systemctl restart tomcat9.service

systemctl stop tomcat9.service

配置服务自启动systemctl enable tomcat9.service

===============================================================

参阅文档:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值