欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

使用 jsvc 启动tomcat(使用普通用户运行)

程序员文章站 2022-04-11 08:33:59
使用 jsvc 启动tomcat(使用普通用户运行) jsvc简介 在生产中,tomcat应该以daemon的模式运行,而且如果需要以普通用户的身份启动tomcat,那么就不能使用1024以下的端口,这是Liunx系统的限制,只有root用户才能使用小于1024的端口。那么该如何将tomcat配置成 ......

使用 jsvc 启动tomcat(使用普通用户运行)

jsvc简介

在生产中,tomcat应该以daemon的模式运行,而且如果需要以普通用户的身份启动tomcat,那么就不能使用1024以下的端口,这是liunx系统的限制,只有root用户才能使用小于1024的端口。那么该如何将tomcat配置成服务呢?我们通过 jsvc 可以很简单的 封装我们自己的 启动脚本,还可以 随意制定 tomcat 运行用户和组,还可以指定 jvm 的运行参数例如内存控制,语言,字符编码。我们还可以指定 tomcat 启动是的 pidfile 总之我们可以更精细的控制tomcat的运行方式。比原始脚本拥有无法比拟的优势。

好了!吹了这么多,这篇只想操作一下怎么去使用普通用户运行,其他的我还没学!

设置tomcat目录的使用权限

创建tomcat用户(默认连带也创建tomcat组)
useradd tomcat

将tomcat目录的属主用户设置为tomcat,属组设置为tomcat组
chown -r tomcat:tomcat /usr/local/tomcat/
使用 jsvc 启动tomcat(使用普通用户运行)

这时显示的tomcat root权限 其实是指这条软链接是归属root 我们所链接的tomcat目录已经属主为tomcat 并且-r递归传递权限。

对组内用户开放tomcat下所有文件的可读权限,以免启动时报错。如,不能读取sever.xml文件
chmod -r g+r tomcat/

对组内用户开放tomcat下webapps,logs,work,temp目录的可写权限
chmod -r g+w logs/ temp/ webapps/ work/

安装jsvc

上次已经讲过部署java+tomcat环境,此篇是上次的后续。

附上前篇文章:

jsvc是绑定到tomcat二进制发行版,找到源代码包,准备编译成二进制文件。

进入tomcat下面的bin目录 找到commons-daemon-native.tar.gz
使用 jsvc 启动tomcat(使用普通用户运行)

解压源代码包
tar -zxvf commons-daemon-native.tar.gz

进入解压的目录,进行编译
cd commons-daemon-1.0.15-native-src/unix
./configure --with-java=$java_home
使用 jsvc 启动tomcat(使用普通用户运行)

出现以上错误为没有安装gcc 编译环境
yum install gcc-c++ -y

再次运行出现以下内容就可以啦
使用 jsvc 启动tomcat(使用普通用户运行)

进行编译
make

编译完成后,会在当前文件夹生成一个jsvc的文件
使用 jsvc 启动tomcat(使用普通用户运行)

将它拷贝到tomcat bin目录下
cp jsvc /usr/local/tomcat/bin/

这时我们用daemon.sh 去运行我们的tomcat
./daemon.sh start

其他命令:
./daemon.sh stop