linux打开su日志,Linux nologin 用户使用su执行命令(以Tomcat自启动脚本为例)

今日在一台Fedora Server上安装了tomcat 8.0.15。使用脚本设置其自启动。脚本如下:

#!/bin/bash

# description: Tomcat Start Stop Restart

# processname: tomcat

# chkconfig: 234 20 80

JAVA_HOME=/usr/java/jdk1.8.0_25

export JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH

export PATH

CATALINA_HOME=/usr/java/apache-tomcat-8.0.15

case $1 in

start)

sh $CATALINA_HOME/bin/startup.sh

;;

stop)

sh $CATALINA_HOME/bin/shutdown.sh

;;

restart)

sh $CATALINA_HOME/bin/shutdown.sh

sh $CATALINA_HOME/bin/startup.sh

;;

esac

exit 0

但是鉴于使用root用户启动会造成不必要的安全隐患,故而新建了一个用户fsrvweb用于管理tomcat服务器。

groupadd fsrvweb

useradd -g fsrvweb -s /bin/bash fsrvweb

运行脚本改写如下:

#!/bin/bash

# description: Tomcat Start Stop Restart

# processname: tomcat

# chkconfig: 234 20 80

JAVA_HOME=/usr/java/jdk1.8.0_25

export JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH

export PATH

CATALINA_HOME=/usr/java/apache-tomcat-8.0.15

case $1 in

start)

/bin/su fsrvweb -s $CATALINA_HOME/bin/startup.sh

;;

stop)

/bin/su fsrvweb -s $CATALINA_HOME/bin/shutdown.sh

;;

restart)

/bin/su fsrvweb -s $CATALINA_HOME/bin/shutdown.sh

/bin/su fsrvweb -s $CATALINA_HOME/bin/startup.sh

;;

esac

exit 0

可是该用户除了管理各种服务之外并不需要进行登录操作,所以将用户的shell改为nologin:

usermod fsrvweb -s /sbin/nologin

echo “/sbin/nologin” >> /etc/shells

但是这样无法执行上面的脚本,因为nologin不具有执行命令功能,所以将以上代码改为:

#!/bin/bash

# description: Tomcat Start Stop Restart

# processname: tomcat

# chkconfig: 234 20 80

JAVA_HOME=/usr/java/jdk1.8.0_25

export JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH

export PATH

CATALINA_HOME=/usr/java/apache-tomcat-8.0.15

case $1 in

start)

/bin/su fsrvweb -s /bin/bash $CATALINA_HOME/bin/startup.sh

;;

stop)

/bin/su fsrvweb -s /bin/bash $CATALINA_HOME/bin/shutdown.sh

;;

restart)

/bin/su fsrvweb -s /bin/bash $CATALINA_HOME/bin/shutdown.sh

/bin/su fsrvweb -s /bin/bash $CATALINA_HOME/bin/startup.sh

;;

esac

exit 0

这样就可以顺利执行该脚本了。

该方法也可用于其他一些类似服务的设置。

参考:

http://davidghedini.com/pg/entry/install_tomcat_8_on_centos

man su

来源:http://www.omgdba.com/nologin-user-execute-command-by-su-on-linux.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值