我在一台共享计算机上使用tmux
via ssh
,并在一个 tmux 会话上完成所有工作。然而,共享机有一个每个进程的时间限制策略,如果超过时间限制,就会杀死进程。服务器tmux
不会占用太多CPU时间,但大约一个月后它达到限制并且进程被终止(也终止了我启动的所有子进程)。
知道了这一点,我可以密切关注进程时间并在达到限制之前启动另一台服务器。但我想知道是否有一种方法可以更改已运行进程的“所有权”(将进程“重新设置为新服务器实例的父级”)。
答案1
没有可移植的方法可以做到这一点。有一个程序https://github.com/nelhage/reptyr可以在 Linux 上执行此操作(它使用 ptrace 并插入所有系统调用),但我不知道它有多可靠或是否仍在维护。 YMMV。