设为首页 收藏本站
查看: 1243|回复: 0

[经验分享] tomcat以指定用户启动

[复制链接]

尚未签到

发表于 2018-12-2 11:47:02 | 显示全部楼层 |阅读模式
  本文记录如何在linux平台上配置tomcat以指定的身份运行、配置为linux服务,并设置为开机启动运行。
  运行环境描述
  操作系统: Ubuntu14.0.4
  Tomcat版本号: Tomcat 7.0.33
  JDK版本: 1.6以上.
  以下涉及到命令操作的地方,如无特别说明,均表示以root管理员身份运行(或者以普通用户的sudo方式跨权运行)。
  一、编译安装tomcat daemon服务守候程序:
  cd到tomcat的bin目录下,并解压commons-daemon-native.tar.gz:
  cd /opt/tomcat/bin/
  tar xvzf commons-daemon-native.tar.gz
  解压后会生成一个commons-daemon-1.0.10-native-src目录,cd到这个目录的unix子目录:
  cd commons-daemon-1.0.10-native-src/unix
  (1). 执行编译配置:
  ./configure  #(注意:需要先安装好make,gcc等编译工具)
  在执行时可能会出现如下错误提示:
  ...
  *** Java compilation tools ***
  checking for JDK location... configure: error: Java Home not defined. Rerun with --with-java=... parameter
  这是由于没有指定jdk目录所致的,那么按提示指定with-java参数(指向jdk目录)。如下:
  ./configure --with-java=/opt/jdk
  运行完成后会提示如下信息说明操作成功:
  *** All done ***
  Now you can issue "make"
  执行make:
  make
  (2). 执行make后会生成一个jsvc的文件,将其复制到tomcat的bin目录
  在tomcat/bin目录里面有一个daemon.sh 这个文件就是启动和关闭tomcat的服务守候程序。
  注意:之前的一些tomcat版本,例如tomcat 6.0.x, 可能没有这个文件, 其实这个文件就是放在commons-daemon-x.x.x-native-src/unix/samples/Tomcat7.sh这儿的(此目录还有一个Tomcat5.sh),只不过新版本的tomcat把它移动到了bin目录下,并取名为daemon.sh了。所以,如果您使用的是tomcat 6,那就把这个Tomcat7.sh文件复制到bin目录下,并取名为daemon.sh即可。
  (3). 修改daemon环境变量 :
  用文本编辑器(vi或emacs等)编辑它,找到类似下面这样配置段:
  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为您要指定身份运行的linux账号用户名,此处指定用户名为tomcat。并把JAVA_HOME=...前面的注释(即“#”号)去掉,并设置为jdk的安装目录路径,最后,修改好后的配置段变成如下:
  test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
  # Set JAVA_HOME to working JDK or JRE
  JAVA_HOME=/opt/jdk
  现在修改/opt/tomcat目录的所有者为为tomcat(即您要指定身份运行的linux帐号):
  chown -R tomcat:tomcat /opt/tomcat
  为tomcat/bin/目录下的*.sh添加相应的x权限位:
  chmod a+x /opt/tomcat/bin/*.sh
  现在,可以测试一下daemon是否可以启动运行,启动方式如下:
  /opt/tomcat/bin/daemon.sh  start
  (如果出错,重点查验tomcat的bin目录下的*.sh是否有x可执行权限、linux帐号是否有tomcat目录的读写权限,是否有tomcat/logs日志目录的写权限等等。)如无错误,则tomcat的daemon守候程序已经设置成功了,可以访问http://localhost:8080/试一下服务是否启动。
  停止tomcat, 对应的命令为:
  /opt/tomcat/bin/daemon.sh  stop
  二、添加tomcat为debian的服务
  在上面的配置正确后,要将daemon.sh添加成为debian的服务就非常简单了,只需要创建一个软链到/etc/init.d/目录中即可:
  ln  -s  /opt/tomcat/bin/daemon.sh  /etc/init.d/tomcat7
  这样就创建了一个名为tomcat7的服务。
  现在就可以用它启动/关闭tomcat了:
  启动tomcat7服务:
  /etc/init.d/tomcat7  start
  停止tomcat7服务:
  /etc/init.d/tomcat7  stop
  最后,再查看一下进程, 已经可以看到,tomcat是以指定的用户身份运行了。
  三、设置tomcat服务开机启动
  如果您想让Tomcat的daemon守候程序在开机后自动运行,只需运行下面命令,将服务设置为自启动即可:
  update-rc.d tomcat7 defaults
  如果以后想想取消自动启动,则运行:
  update-rc.d tomcat7 remove


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-642345-1-1.html 上篇帖子: cas--tomcat https配置 下篇帖子: 使用JVisualVM远程监控Tomcat
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表