如何以root身份执行os.*方法?
发布时间:2020-12-14 00:02:29 所属栏目:Linux 来源:网络整理
导读:是否可以在没有存储在我的脚本内存中并且以root身份运行一些os.*命令的情况下请求root pw? 我的剧本 扫描一些文件夹和文件,以检查它是否可以完成这项工作 在/ etc /中进行一些更改… 创建应由运行脚本的用户拥有的文件夹和文件 (1)可以作为普通用户完成.我
是否可以在没有存储在我的脚本内存中并且以root身份运行一些os.*命令的情况下请求root pw?
我的剧本 >扫描一些文件夹和文件,以检查它是否可以完成这项工作 (1)可以作为普通用户完成.我可以通过sudoing脚本来做(2),但是(3)中的文件夹和文件将是root的. 问题是我使用了很多os.makedirs,os.symlink等,这使我无法让普通用户运行它. 坦克2都是建议 到目前为止的解决方案是: # do all in sudo os.chown(folder,int(os.getenv('SUDO_UID')),int(os.getenv('SUDO_GID'))) 感谢gnibbler提示. 解决方法
也许你可以把(2)放在一个单独的脚本中,比如说script2.py,在主脚本中你用popen调用sudo script2.py?
这样只有(2)将以root身份执行. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |