我的/ home文件夹有root问题。这是我的剧本:
home = os.path.expanduser("~")
print home # home is good: /home/guillaume
# gksudo
euid = os.geteuid()
if euid != 0:
print "Running sudo.."
args = ['gksudo', sys.executable] + sys.argv + [os.environ]
os.execlpe('gksudo', *args)
print home # home has changed: /root
gksudo运行后如何获得好/家?感谢
编辑:我已经尝试了
subprocess.call(['gksudo', 'script.py'])
脚本已启动,但脚本内的操作不在root
中答案 0 :(得分:3)
sudo
为进程设置了许多环境变量;请参阅man sudo
以获取列表。在这种情况下,您可以使用SUDO_USER
:
# from under sudo
home = os.path.expanduser(os.environ["SUDO_USER"])