如何 运行 Anaconda Python on sudo

How to run Anaconda Python on sudo

目前正在使用 AWS 运行 对机器学习项目进行一些测试。我想 运行 Python 没有互联网的脚本(通过 root),因为互联网带宽非常有限。我尝试 运行 convnets.py 脚本

sudo python convnets.py >> output

但这不起作用,因为 Anaconda 不使用 PYTHONPATH,因此 root 无法找到 Anaconda Python 环境。因此会抛出 "cannot import" 和 "module not found" 之类的错误。

我该如何设置才能让 Anaconda 和 sudo 一起公平竞争?

因为使用 sudo 使用与典型环境不同的 PATH,所以您需要确保指定要使用 Anaconda 的 python 解释器而不是系统 python。您可以使用以下命令

检查哪个 运行
sudo which python

要解决此问题,并指向 Anaconda 的 python 解释器,请指定正确解释器的完整路径。

sudo /path/to/anaconda/bin/python convnets.py >> output

如果这样做,您应该能够访问 anaconda 管理的所有模块。

另一方面,如果您创建了 Anaconda 环境

conda create --name $ENVIRONMENT_NAME python

您可以在运行执行您的命令

之前激活它
sudo source activate $ENVIRONMENT_NAME && python convnets.py >> output