我有一个需要以超级用户身份运行的脚本:
$ sudo ./python-script.py
在这个脚本中,我做了一些不需要超级用户权限的事情。
$ os.mkdir('somefolder')
以非root用户身份创建目录的最佳/最有效方法是什么?我应该让脚本以root用户身份创建目录,然后更改权限吗?
答案 0 :(得分:3)
os.mkdir
允许您明确指定权限:
os.mkdir(path [, mode=0777])
您还可以选择运行os.chown
来设置用户和群组
os.chown(path, uid, gid)
你可能会得到这样的原始用户(但它可能是特定于平台的吗?)
import os
original_user = os.environ.get('SUDO_USER')
original_uid = os.environ.get('SUDO_UID')
original_gid = os.environ.get('SUDO_GID')