You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Rundeck 4.10在远程节点执行脚本时进程自动终止问题求助

Rundeck应用启动后自动终止问题解决
  • 核心原因:Rundeck通过SSH执行完启动脚本后,SSH会话会立即关闭,此时启动的应用进程属于该SSH会话的进程组,会被系统发送的SIGHUP信号终止,这是Linux的默认行为,和Rundeck本身配置无关。

  • 常用解决办法:

    1. 调整启动脚本,让进程脱离当前会话:
      • 在启动命令后追加& disown,示例:./start-myapp.sh & disown
      • 用nohup包裹启动命令,将输出重定向到空设备避免日志占用:nohup ./start-myapp.sh > /dev/null 2>&1 &
    2. 借助终端复用工具后台启动(需目标节点提前安装):
      • 用screen:screen -dmS app_runner ./start-myapp.sh
      • 用tmux:tmux new-session -d -s app_runner ./start-myapp.sh
    3. 把应用配置成系统服务(推荐):
      • 将应用注册为systemd服务,Rundeck只需执行systemctl start myapp.service命令,这种方式进程由系统托管,不会受SSH会话影响,还能方便管理启停、自启等。
  • 关于Rundeck配置修改:不需要调整Rundeck的任何核心配置文件,问题不在Rundeck配置本身。

  • 同类问题情况:社区里很多用户碰到过这个问题,本质都是SSH会话结束导致子进程被回收,上面的方法是社区公认的有效解决方案。

内容的提问来源于stack exchange,提问作者Vanaan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 12:13:11