两个用户如何启动/停止服务?例如:Tomcat

两个用户如何启动/停止服务?例如:Tomcat

发现tomcat服务器共享管理存在很大的问题。

例如:有 2 个 Linux 帐户(ua 和 ub)分别负责启动/停止某个 tomcat 服务器。

ua:启动tomcat服务器并生成pid文件。

ub:尝试通过 停止 tomcat shutdown.sh -force,但是它不起作用,因为 ub 无法终止由 ua 启动的进程。

除了共享单个 Linux 帐户之外,有没有其他好方法来处理这种情况?

答案1

为该服务创建一个帐户。设置 sudoers 以授予 ua ub 作为服务帐户运行的能力。就像这样。

# /etc/sudoers
ua,ub ALL= (service-account) /usr/sbin/daemon-programme,/bin/kill

其中 service-account 是帐户名。然后用户可以运行它,反之亦然。

ua $ sudo -u service-account /usr/bin/daemon-programme --pid-file /run/programme.pid
ub $ sudo -u service-account /bin/kill $(cat /run/programme.pid)

相关内容