在生产中,tomcat应该以daemon的模式运行,并且若是须要以普通用户的身份启动tomcat,那么就不能使用1024如下的端口,这是Liunx系统的限制,只有root用户才能使用小于1024的端口。那么该如何将tomcat配置成服务呢?咱们经过 jsvc 能够很简单的 封装咱们本身的 启动脚本,还能够 随意制定 tomcat 运行用户和组,还能够指定 jvm 的运行参数例如内存控制,语言,字符编码。咱们还能够指定 tomcat 启动是的 pidfile 总之咱们能够更精细的控制tomcat的运行方式。比原始脚本拥有没法比拟的优点。html
好了!吹了这么多,这篇只想操做一下怎么去使用普通用户运行,其余的我还没学!java
建立tomcat用户(默认连带也建立tomcat组) useradd tomcatc++
将tomcat目录的属主用户设置为tomcat,属组设置为tomcat组 chown -R tomcat:tomcat /usr/local/tomcat/ web
这时显示的tomcat root权限 实际上是指这条软连接是归属root 咱们所连接的tomcat目录已经属主为tomcat 而且-R递归传递权限。tomcat
对组内用户开放tomcat下全部文件的可读权限,以避免启动时报错。如,不能读取sever.xml文件 chmod -R g+r tomcat/app
对组内用户开放tomcat下webapps,logs,work,temp目录的可写权限 chmod -R g+w logs/ temp/ webapps/ work/webapp
上次已经讲过部署Java+Tomcat环境,此篇是上次的后续。jvm
附上前篇文章:https://www.cnblogs.com/cany/p/10823091.html编码
jsvc是绑定到tomcat二进制发行版,找到源代码包,准备编译成二进制文件。spa
进入tomcat下面的bin目录 找到commons-daemon-native.tar.gz
解压源代码包 tar -zxvf commons-daemon-native.tar.gz
进入解压的目录,进行编译 cd commons-daemon-1.0.15-native-src/unix ./configure --with-java=$JAVA_HOME
出现以上错误为没有安装gcc 编译环境 yum install gcc-c++ -y
再次运行出现如下内容就能够啦
进行编译 make
编译完成后,会在当前文件夹生成一个jsvc的文件
将它拷贝到tomcat bin目录下 cp jsvc /usr/local/tomcat/bin/
这时咱们用daemon.sh 去运行咱们的tomcat ./daemon.sh start
其余命令: ./daemon.sh stop