Answers:
在stackoverflow上有两种不同的Q&A回答您的问题:here和here。
这两个答案都使用命令gksudo
(@khamer已经提到过)。如果您运行gksudo command
(也没有python),则基本上可以执行此sudo
操作,但是会使用图形界面-即,要求用户输入密码,然后如果用户在sudoers文件中,则以root用户身份运行命令。
要从python中的链接答案中实现建议的解决方案,可以使用以下示例所示的内容:
创建一个文件run.py
:
#!/usr/bin/python
import subprocess
subprocess.call(['gksudo','python create.py'])
和一个文件create.py
:
#!/usr/bin/python
# Create test file..
f = file("mytestfile", "w")
然后运行python run.py
,输入密码后,将创建root拥有的文件。如果运行python create.py
,它将归您所有(运行脚本之前,该文件不应存在)。