关闭所有Python命令的sudo要求

时间:2014-06-16 18:25:43

标签: python macos shell terminal sudo

在使用Python时,我(在Mac OSX上)如何删除对sudo的需求。它可以保留其他所有内容 - 但我更愿意始终处于管理模式,所以我不必总是输入sudo。

2 个答案:

答案 0 :(得分:1)

这不是一个编程问题,但无论如何我都会给它一个旋转。

最安全的方法可能是开始与sudo -s的终端会话,它会为您提供root shell。然后你在那个shell中做的任何事情(包括但不限于运行python或Python脚本)将是root用户,可以完全访问机器上的所有内容。

作为一个大锤方法,您可以setuid Python可执行文件并使其始终以root身份运行。然而,这是一个可怕的,可怕的想法; 任何 Python脚本将具有root权限!如果有人可以将一些粗糙的Python放到你的盒子上并说服你运行它,那么他们就可以完全访问你的机器了。

但是,如果你想生活在边缘,你可以尝试:

sudo chown root `which python`
sudo chmod u+s `which python`

缓解这种情况的一种方法(从未如此轻微)是制作python解释器的副本(将其命名为python-root),在该副本上执行上述操作,并为您调用此方法互动会议。脚本仍将使用stock python可执行文件,而不是以root身份运行。当然,这不仅仅是sudo python的击键次数,尽管至少你不需要输入密码。在脚本中始终需要以root身份运行的#!(shebang)行也很方便。

答案 1 :(得分:0)

如果您不想为每个命令键入密码,则可以像执行任何其他程序一样使用sudo运行python,在shell中键入sudo python。但是如果你的意思是让python一直以root权限运行,那么我对你没有任何帮助,抱歉。