普通身份运行Tomcat

转载1   权限分配问题

su - username -c “command”这样的形式可以使用任意一个有执行权限的用户执行 -c后边的命令。

注意,- username中间有一个空格,而-c中间是没有空格的。

添加tomcat用户组

/usr/sbin/groupadd tomcat

添加tomcat用户,并限制登录

#/usr/sbin/useradd -s /sbin/nologin -g tomcat tomcat#此命令待审核,使用后tomcat用户实际无法使用的

#/usr/sbin/useradd -s /bin/bash -g tomcat tomcat

/usr/sbin/usermod -L tomcat #锁定密码,使密码无效

修改目录所有者:

sudo chmod a+rwx -R logs

#chown -R tomcat:tomcat /usr/local/tomcat7

给web目录附上权限:

#chown -R tomcat:tomcat /alidata/wwwroot/default

cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" '{ print $1"|"$3"|"$4 }'|more

#vi /etc/init.d/tomcat

  1. #!/bin/bash
  2. # chkconfig:
  3. # description: Startup Script for tomcat
  4. # /etc/rc.d/init.d/tomcat
  5. #JDK Settings
  6. export JAVA_HOME=/usr/java/jdk1.6.0  ###根据需要修改此处
  7. export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/toos.jar
  8. export PATH=$PATH:$JAVA_HOME/bin
  9. case "$1" in
  10. start)
  11. echo "Starting tomcat: "
  12. #以ordperson用户身份运行  根据需要修改此处
  13. su -c /usr/local/tomcat/bin/./startup.sh ordperson
  14. echo "OK......tomcat started"
  15. ;;
  16. stop)
  17. echo "Shutdown tomcat: "
  18. /usr/local/tomcat/bin/./shutdown.sh
  19. echo "OK.....tomcat stoped"
  20. ;;
  21. *)
  22. echo "Usage: 'basename $0' start|stop"
  23. exit
  24. esac
  25. exit

然后,将tomcat目录的权限给ordperson

chown -R ordperson:ordperson tomcat

给启动命令执行权限

chmod 777 /etc/init.d/tomcat

启动tomcat

/etc/init.d/tomcat start

关闭tomcat

/etc/init.d/tomcat stop

如果你经常关注我的博客,会发现每篇博客温故后会有新的知识点。

sudo -u zxredis ./redis-server  /usr/local/redis/etc/redis6380.conf

普通身份运行Tomcat的更多相关文章

  1. Tomcat非root身份运行制作Linux系统服务管理

    理论知识怱略,马上开始实战 一.首先准备好tomcat 启动.关闭.重启Shell脚本: 以下Shell脚本主要修改值 tomcatPath:tomcat目录 runUser:以哪个身份运行 此处测试 ...

  2. Centos7下配置Tomcat7以指定(非root)身份运行

    通常情况下,在配置Tomcat生产环境时,通常会配置Tomcat以特定的身份运行(非root),这样有利于提高安全性,防止网站被黑后的进一步权限提升. 本文依赖的环境: Ubuntu(其实大部分同样适 ...

  3. win7 64位下vs不能以管理员身份运行的问题解决

    开发机上安装了VS6.0/2008/2010/2013,之前一直是正常的,突然莫名其妙不能以管理员身份运行(除了VS6),报"application cannot start.", ...

  4. npm不是以管理身份运行遇到的问题

    环境:win10+npm3.10.5 问题:在npm install lodash时,出现下列错误("npm-debug.log"文件内容) 0 info it worked if ...

  5. WinForm 代码实现以管理员身份运行

    [STAThread] static void Main(string[] Args) { //获得当前登录的Windows用户标示 System.Security.Principal.Windows ...

  6. C# 管理员身份运行程序

    在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理员身份运行才会执行成功,否则无效果或提示错误. 比如在通过winform程序执行cmd命令时,某些情况 ...

  7. Win8下Visual Studio编译报“无法注册程序集***dll- 拒绝访问。请确保您正在以管理员身份运行应用程序。对注册表项”***“的访问被拒绝。”问题修正(转)

    原来在Win7下Visual Studio跑的好好的程序,现在在Win8下编译报“无法注册程序集***dll- 拒绝访问.请确保您正在以管理员身份运行应用程序.对注册表项”***“的访问被拒绝.”的错 ...

  8. [原创]Win7、Win8、Win10始终以管理员身份运行程序。

    在Win7.Win8.Win10系统中,以管理员身份运行程序很麻烦,一般有以下几种方式: 1.在可执行程序或快捷方式上右键,以管理员身份运行: 2.在可执行程序或快捷方式上右键->属性-> ...

  9. Inno Setup怎样创建一个自动申请管理员身份运行的快捷

    如果你使用的是 Unicode 版本的 Inno Setup,那么以下是更为专业的解决方法.    这是 mlaan 提及的再一种方法. QUOTE(     CodeAutomation3.iss) ...

随机推荐

  1. mysql统计表的大小

    如下是sql语句: SELECT TABLE_NAME as name,DATA_LENGTH+INDEX_LENGTH as len,TABLE_ROWS as rows FROM informat ...

  2. MySQL字符串中数字排序的问题

    1.select * from table where 1   order by id*1 desc; 2.select * from table where 1 order by id+0 desc ...

  3. MINA源码阅读之ACP

    Processor在XXAcceptor以及XXConnector中所扮演的只能就是:作为Acceptor以及Connetor所创建的Session的Processor: IoAcceptor作为他所 ...

  4. asp.net mvc4 Controller与Action执行过程的研究(学习笔记)

    当IIS收到一个http请求,把请求信息发给对应的HttpModel(实际是实现类UrlRoutingModule),在HttpModel中会注册HttpApplication 类中的PostReso ...

  5. sqrt和Hailstone

    求平方根 class SqRoot{ void calcRoot(double z){ double x=1;double y=z/x; while(Math.abs(x-y)>1E-10) { ...

  6. BZOJ 1636: [Usaco2007 Jan]Balanced Lineup

    noip要来了,刷点基础水题. 题意: RMQ,给你N个数,Q个询问,每次查询[l,r]内,最大值减最小值是多少. 写的ST. 代码: #include<iostream> #includ ...

  7. hdu 1875

    题目很简单,我却WA了几十次,找错误找了我一个小时: 蛋都碎了! 后来发现错误的地方竟然是memset: 用一个循环来替代它就A了:╮(╯▽╰)╭ 今晚回去好好的看看memset!!! 发个代码纪念下 ...

  8. java的File类的 delete方法删不掉文件的原因分析

    先举几个可以删除掉文件和删除不掉文件的例子(先在F盘创建test1.txt文件,然后可以直接拷贝代码到IDE执行),最后总结下原因: 例子一:下面的例子毫无疑问是能够删除掉文件的 import jav ...

  9. 李洪强iOS开发Swift篇—10_方法

    李洪强iOS开发Swift篇—10_方法 一.简单说明 跟其他面向对象语言一样,Swift中的方法可以分为2大类: (1)实例方法(Instance Methods) 在OC中,实例方法以减号(-)开 ...

  10. 只看Delphi自带的WnAPI帮助似乎不够

    比如,MessageBox在Delphi自带帮助的参数说明中,对其第四个参数的MB_类型说明只有最常见的6种类型,这么多年搞得我天经地义的以为MessageBox就是这么简单.今天看了一位前辈写的老代 ...