在其他节点上使用 ssh -x -n 终止由父进程产生的所有进程

在其他节点上使用 ssh -x -n 终止由父进程产生的所有进程

名为 G09 的软件使用 Linda 并行工作。它在其他节点上生成并行子节点,如下所示

/usr/bin/ssh -x compute-0-127.local -n /usr/local/g09l/g09/linda-exe/l1002.exel ...other_opts...

但是,当主节点终止此进程时,其他节点上的相应子进程(即 compute-0-127)不会终止,而是继续在后台运行。现在,我手动转到每个具有这些孤立 Linda 进程的节点,并使用 终止它们kill。有没有办法终止这样的子进程?
在终止进程之前查看 pastebin 1 中的 PSTREE,在父进程终止后查看 pastebin 2 中的 PSTREE
pastebin1 -http://pastebin.com/yNXFR28V
pastebin2 - http:// pastebin.com/ApwXrueh
- 声誉点数不足以超链接到第二个 pastebin,抱歉!(

答案1

最好的选择是尝试解决问题本身,并检查为什么当父进程死亡时子进程没有终止。

您可以使用此命令在另一台机器上远程执行命令:

ssh user@remote_machine command

当然,您需要user, remote_machine, and command用适当的值替换这些值:。

例如,你可以这样做:

ssh root@remote_machine "killall compute-0-127"

相关内容