运行 在后台使用 Fabric 命令

Run command in background with Fabric

我想 运行 使用 Bash 的“&”运算符的 Fabric 后台脚本。是否有以下原因不起作用?我在服务器本身上执行了这个命令,它 运行 没问题。

@task
def run_script():
    sudo('sh /home/ubuntu/wlmngcntl.sh start &', user='myuser')

我不想用像Celery 这样繁重的东西来做这个简单的事情。我根本不需要捕获输出,我想要的只是让任务执行这个和 return 之后。

这不是 Fabric 的东西,而是 Linux 的东西。当您关闭会话时,连接到该会话的进程将终止。

这个问题信息量很大...https://askubuntu.com/questions/8653/how-to-keep-processes-running-after-ending-ssh-session

您可以使用以下内容(来自那个答案)

sudo('nohup sh /home/ubuntu/wlmngcntl.sh start &', user='myuser')