我正在运行一个python脚本,它涉及在远程计算机上运行“burnP6”后台进程。在
我试着用布料:
import fabric.api
fabric.api.execute(run_burnP6_bg, hosts=[remote_machine])
def run_burnP6_bg():
fabric.api.run("burnP6 &")
我还尝试在子进程中使用ssh-f:
^{pr2}$
但他们两个都不起作用。在远程服务器上运行top时,我没有看到任何burnP6进程。在
我有什么遗漏吗?在
Tags:
使用ssh登录并使用
job&
启动任何作业进程。在另一个窗口中使用ssh登录并执行ps
检查作业:您应该看到它正在运行。现在注销您的第一个ssh并再次检查您的作业流程。你会注意到它现在不见了。发生这种情况的原因是作业默认附加到终端,并且在终端关闭时发送SIGHUP。在现在重复这个过程,运行
nohup job&
或disown job&
。这两种方法都可以防止SIGHUP破坏作业过程。在要修复代码,可以使用以下任一方法:
或子流程
^{pr2}$这些可以防止您的作业在ssh会话结束时终止。在
相关问题 更多 >
编程相关推荐