我无法从 sudoed python 脚本运行 firefox,该脚本将权限授予普通用户。如果我写
$须藤蟒蛇 >>> 导入操作系统 >>> 导入密码,grp >>> uid = pwd.getpwnam('norby')[2] >>> gid = grp.getgrnam('norby')[2] >>> os.setegid(gid) >>> os.seteuid(uid) >>> 导入浏览器 >>> webbrowser.get('firefox').open('www.google.it') 真的 >>> # 它返回 true 但不起作用 >>> 从子流程导入 Popen,PIPE >>> p = Popen('firefox www.google.it', shell=True,stdout=PIPE,stderr=PIPE) >>> # 不执行命令 >>> 你不应该在没有 -H 选项的情况下通过 sudo 运行 Iceweasel。 继续,就好像您使用了 -H 选项一样。 未指定协议 错误:无法打开显示::0
我认为这不是 python 问题,而是 firefox/iceweasel/debian 配置问题。也许firefox只读取UID而不是EUID,并且不执行进程,因为UID等于0。你怎么看?