加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

超实用的Tomcat启动脚本实现

发布时间:2019-05-23 22:39:59 所属栏目:业界 来源:今日头条
导读:有这样一个场景,公司为了安详起见,必要对全部登录Linux处事器做安详限定,要求除了打点员其他要登录linux处事器的员工不能用最高权限账号登录,要建设新的用户,对目次及文件权限做出节制,只能对必要操纵的目次应承读,写,执行权限,其他目次只有读的
副问题[/!--empirenews.page--]

有这样一个场景,公司为了安详起见,必要对全部登录Linux处事器做安详限定,要求除了打点员其他要登录linux处事器的员工不能用最高权限账号登录,要建设新的用户,对目次及文件权限做出节制,只能对必要操纵的目次应承读,写,执行权限,其他目次只有读的权限,而且全部tomcat不能直接在bin顶用startup.sh,shutdown.sh举办启动和遏制,要通过写shell剧本举办此操纵,也就是说有两个步调,建设用户并配置权限,写tomcat启动剧本,下面我们就完成这两个步调。

超适用的Tomcat启动剧本实现

1.起首我们就来建设一个平凡用户。

  1. groupadd tomcat #加组 
  2. useradd -g tomcat -s /usr/sbin/nologin tomcat #向组加用户 
  3. usermod -L tomcat #锁定暗码,使暗码无效 
  4. passwd tomcat # 配置暗码 

通过这四步,我们就把平凡用户建设好了,在建设用户时,我们是先建设的组,组建设完成后建设用户并插手该组。

用户建设完成后,就开始给用户配置权限

  1. chown -R tomcat:tomcat /data #分派权限给用户 

这就是给tomcat这个用户配置了可以操纵data目次及其子目次下的权限,-R就代表该目次及其级联子目次。

  1. [root@localhost data]# ls -l 
  2. total 0 
  3. drwxr-xr-x. 4 tomcat tomcat 79 May 20 08:03 tomcat 
  4. [root@localhost data]#  

此时我们通过ls -l 呼吁就可以看到data目次已经属于tomcat用户,且拥有查察,写入,执行权限

2.完成了用户建设后,我们就要开始完成tomcat启动剧本。

如代码所示:

  1. #!/bin/bash 
  2. tomcat_home=/data/tomcat/tomcat-8484 
  3. SHUTDOWN=$tomcat_home/bin/shutdown.sh 
  4. STARTTOMCAT=$tomcat_home/bin/startup.sh 
  5. case $1 in 
  6. start) 
  7. echo "启动$tomcat_home" 
  8. $STARTTOMCAT 
  9. cd /data/tomcat/tomcat-8484/logs 
  10. tail -f catalina.out 
  11. ;; 
  12. stop) 
  13. echo "封锁$tomcat_home" 
  14. #$SHUTDOWN 
  15. netstat -anp | grep 8484| grep -v grep | awk '{print $7}' | sed -e 's//java//g' | sed -e 's/^/kill -9 /g' | sh 
  16. #pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'` 
  17. #kill -9 $pidlist 
  18. #删除日记文件,假如你不先删除可以不要下面一行 
  19. #rm $tomcat_home/logs/* -rf 
  20. #删除tomcat的姑且目次 
  21. #rm $tomcat_home/work/* -rf 
  22. ;; 
  23. restart) 
  24. echo "封锁$tomcat_home" 
  25. $SHUTDOWN 
  26. #pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'` 
  27. #pidlist=`netstat -anp |grep 8484 |grep -v "grep"|awk '{print $2}'` 
  28. #netstat -anp | grep 8484| grep -v grep | awk '{print $7}' | sed -e 's//java//g' | sed -e 's/^/kill -9 /g' | sh 
  29. #kill -9 $pidlist 
  30. sleep 5 
  31. echo "启动$tomcat_home" 
  32. $STARTTOMCAT 
  33. #看启动日记 
  34. #tail -f $tomcat_home/logs/catalina.out 
  35. ;; 
  36. logs) 
  37. cd /data/tomcat/tomcat-8484/logs 
  38. tail -f catalina.out 
  39. ;; 
  40. esac 

上面代码就是tomcat启动剧本,起首我们要建设一个文本文件,然后将后缀名酿成.sh,这里我是用端标语为8484的tomcat作为例子,从剧本文件中可以看到,总共只需对本身tomcat位置和日记位置举办自界说窜改后就可以行使,总共有四个呼吁,start,stop,restart,logs。

剧本文件建设好后,只需将它放入你的处事器中,位置可以本身随意选择,我这里就把它放在了tomcat下bin目次中。

剧本文件放入处事器后着实还不能行使,会有两个题目待办理,一个是名目题目,一个是权限题目。由于我们是文本文件建设的,其名目是文本名目,我们要改成unix名目,以是要举办如下配置

  1. sed -i "s/ 
  2. //" tomcat-8484.sh #配置剧本文件为unix名目 

完成了名目配置后就要为该剧本文件配置权限,由于linux默认文件的权限是drwxr-xr-x,即全部运行权限赋予文件全部者也就是体系打点员(当前我是用体系打点员登录),把读和运行的权限赋予群组用户,把读的权限赋予其他用户,以是我们要对剧本文件权限举办从头配置。

  1. chmod 777 ./tomcat-8484.sh  

chmod呼吁就是改变权限的呼吁,这个777是什么意思呢?

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读