我有一个脚本 ( A.py
) 将B.py
动态生成新进程 () 但这些脚本需要创建为root
. 如果我跑
$ python A.py
作为普通用户,然后当我运行
>>> subprocess.Popen('sudo nohup python B.py &')
我需要输入root
密码才能开始。我真的不想那样做。
现在如果我运行第一个脚本root
$ sudo python A.py
然后我就可以跑了
>>> subprocess.Popen('nohup python B.py &')
像平常一样。我担心的是 sudo 的超时时间,它会降到正常权限,然后当A.py
想要生成/杀死一个进程时,它会要求输入密码并停止按预期工作。
- 运行会在脚本的生命周期内保持 root 权限,还是会像普通终端一样
sudo python A.py
失去它(我相信默认为 15 分钟)?sudo timeout
- 有没有更好的方法来做到这一点?