gpt4 book ai didi

linux - 如何防止通过 SSH 启动的守护进程在注销时终止?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:23:19 24 4
gpt4 key购买 nike

编辑这是固定的。请参阅下面我的回答。


我有一个在 Angstrom Linux 上运行传输守护进程的 headless 服务器。我能够通过 SSH 连接到机器并通过 this init script 调用传输守护进程;但是,该过程在我注销后立即终止。

脚本中发出的命令是:

start-stop-daemon --chuid transmission --start --pidfile /var/run/transmission-daemon.pid --make-pidfile --exec /usr/local/bin/transmission-daemon --background -- -f

通过 # /etc/init.d/transmission-daemon start 启动守护程序后,我可以使用 ps 进行验证该进程归用户所有 transmission (这不是我通过 SSH 登录的用户)。

我已经尝试了上述命令的所有变体,包括:

  • 有和没有 --background启动停止守护进程的选项
  • 附加> /dev/null 2>&1 &到 start-stop-daemon 命令(source——尽管关于这是否是正确的方法,该线程中似乎有不同的结果)
  • 附加> /dev/null 2>&1 & </dev/null & ( source )
  • 正在添加 &到命令结束
  • 使用 nohup

这些似乎都不起作用——结果总是一样的:进程在我关闭 SSH session 后立即退出。

在断开 SSH session 后,我可以/应该做什么来保持守护程序运行?

最佳答案

您尝试过使用 GNU Screen 吗?

它允许您保持 session 打开,即使您断开连接(但如果您退出则不会)。

这是一个简单的例子:

apt-get install screen

yum install screen

关于linux - 如何防止通过 SSH 启动的守护进程在注销时终止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24643451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com