vlambda博客
学习文章列表

啥?Tomcat还能这么安装,厉害了

前言

作为一个Java后端开发者,tomcat想必是最最最熟悉的一个开发组件了,tomcat环境的搭建部署都十分简单。安装部署只需要两步,第一步下载,第二步解压,这样一个基础的tomcat环境就搭建好啦。通常直接执行tomcat目录下的bin/startup.sh脚本进行启动,执行bin/shutdown.sh脚本进行关闭。刚工作那段时间一直都是这么操作的,玩的不亦乐乎,工作几年后忽然发现还能以daemon守护进程的方式进行运行,一下子被这波操作给安利了,简直666,今天就来说说如何操作。


版本

系统:CentOS-6.4 (系统有点老,手头就这一个镜像)

tomcat:8.5.60


安装部署

1.下载

从tomcat库中选择一个最新版本进行下载

https://mirrors.cnnic.cn/apache/tomcat/

https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.60/bin/apache-tomcat-8.5.60.tar.gz

啥?Tomcat还能这么安装,厉害了

cd /usr/local/work/wget --no-check-certificate https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.60/bin/apache-tomcat-8.5.60.tar.gz


啥?Tomcat还能这么安装,厉害了

tar -zxvf apache-tomcat-8.5.60.tar.gz

啥?Tomcat还能这么安装,厉害了

2.创建用户

# 创建用户组groupadd tomcat# 创建用户(无登录权限)并加入tomcat组useradd -g tomcat -s /usr/sbin/nologin tomcat

啥?Tomcat还能这么安装,厉害了

3.安装jsvc

# 进入tomcat bin目录cd tomcat-8.5.60/bin/# 解压 daemontar -zxvf commons-daemon-native.tar.gz

啥?Tomcat还能这么安装,厉害了

cd commons-daemon-1.2.3-native-src/unix/# 调整为jdk安装目录./configure --with-java=/usr/local/work/jdk1.8.0_172

啥?Tomcat还能这么安装,厉害了

makecp jsvc /usr/local/work/tomcat-8.5.60/bincd /usr/local/work/tomcat-8.5.60/bin/

啥?Tomcat还能这么安装,厉害了

4.编辑daemon.sh

在daemon.sh中开头第二行添加如下信息

# chkconfig: 2345 20 80# description: Startup script for the Tomcat 8.5.60 Server


啥?Tomcat还能这么安装,厉害了

在daemon.sh中该行test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat上添加jdk及tomcat信息

这边TOMCAT_USER=tomcat需和上面创建的用户名一致

# jdk安装目录JAVA_HOME=/usr/local/work/jdk1.8.0_172# tomcat目录CATALINA_HOME=/usr/local/work/tomcat-8.5.60test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat


啥?Tomcat还能这么安装,厉害了

4.赋权并添加服务

# 更改文件所有者chown -R tomcat:tomcat /usr/local/work/tomcat-8.5.60# 赋予用户执行权chmod a+x /usr/local/work/tomcat-8.5.60/bin/daemon.sh# 复制至/etc/init.d/cp daemon.sh /etc/init.d/tomcat8# 添加服务chkconfig --add tomcat8# 查看已有服务chkconfig --list

啥?Tomcat还能这么安装,厉害了

# 启动service tomcat8 start# 关闭service tomcat8 stop

至此tomcat已以daemon方式运行了,重启服务器后tomcat服务也会自动启动,nice。

5.日志中文乱码

在daemon方式运行后,在tomcat/logs目录下会出现2个新文件,如下

# 运行pid信息catalina-daemon.pid# 日志输出信息 原先日志输出文件 catalina.outcatalina-daemon.out

让我们查看下日志信息让我们查看下日志信息

tail -f -n 500 /usr/local/work/tomcat-8.5.60/logs/catalina-daemon.out


啥?Tomcat还能这么安装,厉害了

原先都是正常的,现在怎么乱码了呢,操作如下即可

打开/etc/init.d/tomcat8,在$LOGGING_MANAGER行调整如下

test ".$LOGGING_MANAGER" = . && LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"test ".$LOGGING_MANAGER" = . && LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"

追加编码配置“-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8”

按如下配置

test ".$LOGGING_MANAGER" = . && LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8"

调整完后赶紧试一把,OK,搞定。