Linux7 非root 使用tomcat8
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux7 非root 使用tomcat8相关的知识,希望对你有一定的参考价值。
Linux7 非root 使用tomcat8
- 系统环境
cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core) - tomcat安装部署
参考文档:
(1)基于Centos6的tomcat部署
(2)想更深了解tomcat启动原理,请参考Tomcat启动脚本catalina.sh---解读
(3)配置tomcat - 为什么使用非root账户
root用户启动tomcat有一个严重的问题,那就是tomcat具有root权限。
这意味着你的任何一个页面脚本(html/js)都具有root权限,所以可以轻易地用页面脚本 修改整个硬盘里的文件!所以最好不要使用root启动tomcat。 - 非root账户运行tomcat
#创建一个普通账户 useradd -d /data/tuser -m tuser
#编译安装tomcat服务守护程序 cd /usr/local/tomcat8/bin
#解压 tar vzxf commons-daemon-native.tar.gz cd commons-daemon-1.1.0-native-src/unix/
#安装前的配置及校验 ./configure #指定JDK目录 ##说明:我这里已经定义了JDK的目录了,信息如下: cat /etc/profile ##java path export JAVA_HOME=/usr/local/java export PATH=$JAVA_HOME/bin:$PATH ##tomcat path export CATALINA_HOME=/usr/local/tomcat8 export PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH
#如果出现如下错误提示,说明未设置JAVA_HOME变量 *** Java compilation tools *** checking for JDK location... configure: error: Java Home not defined. Rerun with --with-java=... parameter
#如果看到以下信息,就可以编译/安装了 *** All done *** Now you can issue "make"
#编译和安装 make #执行make后会生成一个jsvc文件,将其复制到tomcat的bin目录 cp jsvc /usr/local/tomcat8/bin
#修改启动脚本 vim /usr/local/tomcat8/bin/daemon.sh 找到如下内容 test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat #Set JAVA_HOME to working JDK or JRE #JAVA_HOME=/opt/jdk-1.6.0.22 修改TOMCAT_USER=tomcat,"tomcat"为运行tomcat的用户,本文创建的用户为tuser,即tomcat更改为tuser。 去除JAVA_HOME前的注释(即“#”号),并设置为JDK的所在目录(JAVA_HOME=/usr/local/java)。
#更改文件所有者 chown -R tuser:tuser /usr/local/tomcat8
#赋予用户执行权 chmod a+x /usr/loacl/tomcat8/bin/daemon.sh
- tomcat启动命令
#后台运行 /usr/local/tomcat8/bin/daemon.sh start 或daemon.sh start #前台运行 /usr/local/tomcat8/bin/daemon.sh run 或daemon.sh run #停止 /usr/local/tomcat8/bin/daemon.sh stop 或daemon.sh stop
以上是关于Linux7 非root 使用tomcat8的主要内容,如果未能解决你的问题,请参考以下文章