当我通过 ssh 运行启动命令时,它告诉我它已启动,但事实并非如此。Catalina 日志似乎也没有捕获任何事件。但是它stop
可以status
工作。
ssh -t SERVER1 'sudo /etc/init.d/tomcat7 start'
Starting tomcat
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr/java/default
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Tomcat started.
当我在本地运行该命令时,SERVER1
它会成功启动。
我对这种行为有点困惑。你知道根本原因是什么吗?
答案1
因此,当通过 ssh 选项启用 tty 时,这变成了一个问题-t
。只要 tty 会话处于活动状态,tomcat 进程才会保持活动状态。我修改了启动脚本,在启动命令前加上前缀,从而nohup
解决了这个问题。
nohup - run a command immune to hangups, with output to a non-tty