我正在以root权限运行一个脚本,用户名为userA
,从这个脚本中,我想要使用popen()
函数调用并以userB
身份运行另一个进程。
看起来os.setuid()
无法实现这一点(除非我做错了?),我希望避免使用基于Linux的解决方案,例如su -userB -c <command>
。
是否有一种Pythonic的方法在脚本作为userA
运行时以userB
身份运行进程?
我正在以root权限运行一个脚本,用户名为userA
,从这个脚本中,我想要使用popen()
函数调用并以userB
身份运行另一个进程。
看起来os.setuid()
无法实现这一点(除非我做错了?),我希望避免使用基于Linux的解决方案,例如su -userB -c <command>
。
是否有一种Pythonic的方法在脚本作为userA
运行时以userB
身份运行进程?
subprocess.Popen()
和preexec_fn
来设置子进程的环境,使其以另一个用户身份执行。