script1.py:#do somthingos.system('nohup python3 -u script2.py {} {} >> {}.out &'.format(xxx, yyy, zzz))#do somthingscript2.py:這個(gè)腳本總是與loop.run_forever()當(dāng) script1 作為服務(wù)運(yùn)行時(shí),此腳本可以正確運(yùn)行 script2。但如果我用“kill pid”命令殺死 Script1,Script2 也會(huì)被自動(dòng)殺死,這是我不希望的,我希望 Script2 繼續(xù)工作。編輯:我用于systemd跑步script1.py
1 回答

慕運(yùn)維8079593
TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超5個(gè)贊
如果您希望啟動(dòng)的子進(jìn)程不被 systemd 殺死,請(qǐng)更改KillMode
服務(wù)的配置。因此,在您的服務(wù)文件中:
[Service] KillMode=process
默認(rèn)值是KillMode=control-group
,這樣 systemd 就會(huì)殺死它為服務(wù)創(chuàng)建的 cgroup 中的所有內(nèi)容;并且nohup
對(duì)cgroups一無所知。
添加回答
舉報(bào)
0/150
提交
取消