如何通过ssh连接启动python守护进程?

如何通过ssh连接启动python守护进程?,python,ssh,daemon,paramiko,python-daemon,Python,Ssh,Daemon,Paramiko,Python Daemon,我想使用python库paramiko登录到远程计算机, 然后使用python守护程序库启动一个守护程序进程 程序终止,仍作为某种作业队列工作。 这是我目前的代码: 在本例中,守护进程只需打开一个文件并向其中打印一些随机数字 #client.py import paramiko def main(): ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

我想使用python库paramiko登录到远程计算机, 然后使用python守护程序库启动一个守护程序进程 程序终止,仍作为某种作业队列工作。 这是我目前的代码: 在本例中,守护进程只需打开一个文件并向其中打印一些随机数字

#client.py
import paramiko

def main():
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh.connect('machine1', username='user1')

    command = 'python server_daemon.py'

    stdin,stdout,stderr = ssh.exec_command(command)
    ssh.close()


if __name__=="__main__":
    main()
"

不幸的是,这似乎不起作用, 如果我从脚本中删除守护上下文,它似乎可以工作,但我必须等待服务器完成。 我还试图将输出重定向到/dev/null,但没有成功,
感谢您的建议。

将命令更改为“nohup python server_daemon.py”有帮助吗?尝试了这个命令,也使用了screen,但不知何故两个选项都不起作用。不起作用到底意味着什么?没有启动守护进程,至少我看不到任何文件输出。
#server_daemon.py
import time
import daemon

def main():
    with daemon.DaemonContext():
        s = [str(x)+"\n" for x in range(1000)]
        for i in s:
            with open("test.txt", "a") as f:
                f.write(i)
                time.sleep(0.4)

        while True:
            pass

if __name__=="__main__":
    main()