为了账号安全,请及时绑定邮箱和手机立即绑定

如何使子进程在服务关闭后继续存在?

如何使子进程在服务关闭后继续存在?

慕勒3428872 2023-09-19 14:36:54
script1.py:#do somthingos.system('nohup python3 -u script2.py {} {} >> {}.out &'.format(xxx, yyy, zzz))#do somthingscript2.py:这个脚本总是与loop.run_forever()当 script1 作为服务运行时,此脚本可以正确运行 script2。但如果我用“kill pid”命令杀死 Script1,Script2 也会被自动杀死,这是我不希望的,我希望 Script2 继续工作。编辑:我用于systemd跑步script1.py
查看完整描述

1 回答

?
慕运维8079593

TA贡献1876条经验 获得超5个赞

如果您希望启动的子进程不被 systemd 杀死,请更改KillMode服务的配置。因此,在您的服务文件中:

[Service]
KillMode=process

默认值是KillMode=control-group,这样 systemd 就会杀死它为服务创建的 cgroup 中的所有内容;并且nohup对cgroups一无所知。


查看完整回答
反对 回复 2023-09-19
  • 1 回答
  • 0 关注
  • 68 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信