python脚本中的身份验证以root身份运行

我正在使用Python在系统级别的Linux中进行项目。因此,我想知道,如果我以普通用户身份运行代码,并且正在访问系统文件,那么它应该具有root权限,那么我如何提示输入root密码并以超级用户身份运行其他代码。我想知道,如何以超级用户身份以密码提示运行python脚本" title="python脚本">python脚本。

任何帮助将不胜感激。先感谢您..

回答:

您可以做的另一件事是,如果脚本不是以root身份执行的,则脚本会自动调用sudo:

import os

import sys

euid = os.geteuid()

if euid != 0:

print "Script not started as root. Running sudo.."

args = ['sudo', sys.executable] + sys.argv + [os.environ]

# the next line replaces the currently-running process with the sudo

os.execlpe('sudo', *args)

print 'Running. Your euid is', euid

输出:

Script not started as root. Running sudo..

[sudo] password for bob:

Running. Your euid is 0

使用sudo -k进行测试,以清除所以下一次运行该脚本时它会再次需要密码,你的sudo时间戳。

以上是 python脚本中的身份验证以root身份运行 的全部内容, 来源链接: utcz.com/qa/416647.html

回到顶部