解决LINUX系统sudo下PYTHONPATH或PATH配置失效的问题

版权声明:转载请注明出处。我的GitHub是:https://github.com/YaokaiYang-assaultmaster,欢迎来访。 https://blog.csdn.net/Yaokai_AssultMaster/article/details/80447809

有时候我们需要使用root权限来执行某些python程序。同时即使我们自己在.bashrc或其他类似的配置文件中定义了PYTHONPATH或者PATH路径的话,也会出现import路径不存在的错误。这是因为在使用sudo模式执行程序的时候,系统会自动重置PATH环境变量。我们可以查看/etc/sudoers文件,如果其中存在如下所示的这行:

Defaults env_reset

则说明sudo模式下会默认重置环境变量。那么为了能够在sudo下继续使用我们定义的环境变量,我们需要删掉上面这行,并添加如下内容即可。注意/etc/sudoers文件必须在root权限下才能编辑。

Defaults env_keep += "PYTHONPATH"
Defaults env_keep += "Any other env variable you want to keep"

当然如果我们只想在某个特定路径下执行一次代码,则可以在sudo命令中指定环境变量。指定环境变量的格式为ENV=/path/to/env

sudo PATH=/path/to/your/env python /path/to/your/script.py

猜你喜欢

转载自blog.csdn.net/Yaokai_AssultMaster/article/details/80447809
今日推荐