unix类系统的root用户具有极大的权利,所以很多时候我们不希望程序以root身份启动,这也就是配置Tomcat以指定身份(非root)启动的初衷,虽然也没人来攻击我的服务器,但本着学习学习的目的,也来玩一下。

  1.首先进入Tomcat官网(http://tomcat.apache.org/)下载Tomcat9的以.tar.gz打包压缩方式的二进制压缩包。

  

  2.在Ubuntu中使用wget命令下载到本地

  3.Ubuntu下一般将第三方程序安装到/usr/local目录下,所以将下载好的tomcat安装包移动到/usr/local目录下执行tar -zvxf apache-tomcat-9.0.0.M4.tar.gz

  4.解压完成后进入Tomcat安装目录的bin文件夹找到commons-daemon-native.tar.gz,同样执行tar -zvxf commons-daemon-native.tar.gz

  5.解压完成后会在bin目录下生成一个commons-daemon-1.0.15-native-src目录,进入./commons-daemon-1.0.15-native-src/unix目录

  6.执行目录下./configure文件(注:执行此命令需配置java环境变量,如果未配置需以--with-java= 指定java安装目录)

  

  7.上一步成功后执行make命令

  8.执行成功后会在当前目录生成一个jsvc的目录,将其复制到tomcat的bin目录下,cp jsvc ../../

  9.为Tomcat添加一个指定的用户,本例中以tomcat为用户名:useradd tomcat -M -d / -s /usr/sbin/nologin。(-M不创建用户主目录  -d指定用户主目录  -s指定用户shell)

  10.回到Tomcat安装目录的bin目录中:cd ../../

  11.使用vi或者vim修改bin目录下的daemon.sh文件,设置TOMCAT_USER=tomcat,JAVA_HOME=/usr/lib/jdk1.8.0_91,保存退出

  

  12.设置tomcat安装目录下所有文件的所有者和所属组为tomcat(由于tomcat是由root解压的,所有文件所属权为root,如果不进行移权其他用户将无法启动tomcat服务):chown -R tomcat:tomcat /usr/local/Tomcat9

  13.然后在Tomcat安装目录的bin目录下就可以使用daemon.sh start命令启动Tomcat服务

  14.为了方便我们将Tomcat设置为服务(在init.d下创建软连接):ln -s /usr/local/Tomcat9/bin/daemon.sh /etc/init.d/Tomcat9

  15.这样就可以使用service Tomcat9 start进行启动了

  16.设置Tomcat为开机自启动服务,需先将tomcat设置为服务:update-rc.d Tomcat9 defaults

  17.如果想移除Tomcat开机自启动,执行以下命令:update-rc.d Tomcat9 remove

  以上内容是在http://www.2cto.com/os/201405/297777.html指导下,根据实际情况进行的配置

Ubuntu配置Tomcat9非root用户启动的更多相关文章

  1. 二进制方式安装docker(非root用户启动docker)

    二进制方式安装docker(非root用户启动docker) 一.下载安装包: 地址:https://download.docker.com/linux/static/stable/x86_64/ 这 ...

  2. 【出错记录】Tomcat非root用户启动无法拥有权限读写文件

    简单记录下,如有必要,将深入补充: 一.非root用户运行Tomcat及原因 由于项目中,为了安全需要,Tomcat将禁止以root形式启动,原因很简单,举个例子,一旦有人恶意将jsp文件透过某个别的 ...

  3. Ubuntu环境下非root用户指定版本Python的安装及虚拟环境virtualenv的使用

    Ubuntu环境下非root用户指定版本Python的安装及虚拟环境virtualenv的使用 参考博客: https://blog.csdn.net/leviopku/article/details ...

  4. centos7新增用户并授权root权限、非root用户启动tomcat程序

    一.centos7新增用户并授权root权限 cat /etc/redhat-release查看centos版本号 1.禁用root账户登录 vim /etc/ssh/sshd_config 找到这一 ...

  5. 使用非root用户启动tomcat

    以下操作均为以root用户运行1.添加tomcat用户组 /usr/sbin/groupadd tomcat 2.添加tomcat用户,并限制登录 /usr/sbin/useradd -s /bin/ ...

  6. 短网址资料-nginx非root用户启动-systemctl启动脚本-分割root权限

    https://www.cnblogs.com/aspnethot/articles/3492191.htmlhttps://www.cnblogs.com/aspnethot/articles/34 ...

  7. Centos6.4 设置开机自动以某个非root用户启动脚本

    开机自动运行脚本,可以将脚本的执行命令放在 /etc/rc.d/rc.local 文件中,但是这样开机自动运行这个脚本的用户默认为root. 如果想以某个非root用户运行脚本,可以使用如下命令: s ...

  8. zzw原创_非root用户启动apache的问题解决(非root用户启动apache的1024以下端口)

    场景:普通用户编译的apache,要在该用户下启动1024端口以下的apache端口 1.假设普通用户为sims20,用该用户编译 安装了一个apache,安装路径为/opt/aspire/produ ...

  9. 非ROOT用户启动Tomcat

    [root@Z ~]# adduser tomcat [root@Z ~]# chown -R tomcat:tomcat /usr/local/tomcat/ [root@Z ~]# chown - ...

随机推荐

  1. my97中文乱码问题

    在使用my97日期插件后页面显示中文乱码问题: 解决方法: 把下面这段代码复盖到你的ZH-CN.js就解决了 var $lang={ errAlertMsg: "\u4E0D\u5408\u ...

  2. pic

  3. 2. 上传Android代码到github

    1. 建立git仓库     cd到本地项目根目录,执行git命令     git init          同时会在项目根目录下生成一个.git的隐藏文件          windows下先禁用 ...

  4. Authorization in Cloud Applications using AD Groups

    If you're a developer of a SaaS application that allows business users to create and share content – ...

  5. C#多线程 线程的启动

    在实例化Thread的实例,需要提供一个委托,在实例化这个委托时所用到的参数是线程将来启动时要运行的方法.在.net中提供了两种启动线程的方式,一种是不带参数的启动方式,另一种是带参数的启动的方式. ...

  6. 最新Mac OS X 10.12.1 安装cocoapods及使用详解

    cocoapods官网:https://cocoapods.org 一.什么是CocoaPods 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs ...

  7. 使用java读取文件夹中文件的行数

    使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...

  8. Spring学习(一)

    1.既然是学习Spring,我们首先要搞清楚Spring是什么? Spring是分层的.JavaSE/EE一站式的.轻量级的开源框架. 2.Spring的核心 百度百科:Spring是基于IOC和AO ...

  9. MFC 滑动条的重绘

    MFC自带的滑动条的样子是这样的. 比较难看,所以需要重绘下,重绘后的样子是这样的. 代码如下: CustomSliderCtr.h #pragma once // CCustomSliderCtr ...

  10. 【转】arm 开发工具比较(ADS vs RealviewMDK vs RVDS)

      ADS REALVIEW MDK RVDS 公司 ARM Keil(后被ARM收购) ARM 版本 最新1.2 ,被RVDS取代 最新4.0 是否免费 破解情况 有 有 工程管理 CodeWarr ...