Tomcat 即服务
Tomcat as a Service
我需要编写一个 shell 脚本,我需要在其中反弹 Tomcat 服务器(它可能会在任何人的系统上)。因此,我想知道我应该如何检查 tomcat 是否 运行 作为 "service tomcat6 start" 或脚本“./bin/startup.sh”的服务?
如果这是用于生产服务器:假设它始终作为服务启动。如果您发现不是:找到从 shell 开始的人并解雇他们。
硬话,但在生产系统上:放手,让它们按照标准运行。如果你自动化弹跳(重启):这就是你所做的。
通过 startup.sh 启动时的危险:该进程将在任何用户执行脚本时启动 - 可能缺乏对日志和临时文件的写入权限,或者在下一次启动时破坏它 service tomcat start
,当服务无法再访问这些文件时。
考虑一下:检查(至少)startup.sh(或setenv.sh)中当前用户的身份可能是个好主意,如果不是预期的则终止。因此有效地禁止 运行 startup.sh 作为普通用户,包括 root。
我需要编写一个 shell 脚本,我需要在其中反弹 Tomcat 服务器(它可能会在任何人的系统上)。因此,我想知道我应该如何检查 tomcat 是否 运行 作为 "service tomcat6 start" 或脚本“./bin/startup.sh”的服务?
如果这是用于生产服务器:假设它始终作为服务启动。如果您发现不是:找到从 shell 开始的人并解雇他们。
硬话,但在生产系统上:放手,让它们按照标准运行。如果你自动化弹跳(重启):这就是你所做的。
通过 startup.sh 启动时的危险:该进程将在任何用户执行脚本时启动 - 可能缺乏对日志和临时文件的写入权限,或者在下一次启动时破坏它 service tomcat start
,当服务无法再访问这些文件时。
考虑一下:检查(至少)startup.sh(或setenv.sh)中当前用户的身份可能是个好主意,如果不是预期的则终止。因此有效地禁止 运行 startup.sh 作为普通用户,包括 root。