2015-10-09 82 views
4

在Linux服务器上:AWS cli今天开始随机失败......?

File "/usr/local/bin/aws", line 19, in <module> 
    import awscli.clidriver 
ImportError: No module named awscli.clidriver 

任何想法,为什么这可能已经开始发生?

+1

看2最后的意见,https://github.com/aws/aws-cli/issues/1255,我也陷入了这种情况。 – stanjer

+0

如果它是相关的:我安装了“sudo pip install --upgrade --user awscli”的awscli。如果我尝试了“aws --version”,我会得到:ImportError:没有名为'awscli'的模块。现在它的工作方式是,如果我用完整路径和sudo调用它,如:“sudo /home/username/.local/bin//aws --version – Nagev

回答

0

当前执行上下文不知道Python的环境首选项。

您只需在执行awscli命令之前指定PYTHONPATH环境变量即可。

例子:

export PYTHONPATH=$PYTHONPATH:/home/ubuntu/.local/lib/python2.7/site-packages 

# For example list files from your bucket 
aws s3 ls s3://mybucket --recursive 

为了设置正确的路径PYTHONPATH你需要检查哪里都是包安装在计算机/服务器上的蟒蛇。 上面的例子是从我的ubuntu 16.04服务器上通过编译python的源代码来安装python2.7的。

根据python的安装方式,您应搜索其中一个文件夹site-packagsdist-packages,其中包含已安装的python软件包列表。

此外,另一台服务器上我发现,所需的程序包都在以下位置:

export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/dist-packages 

这里是位于我site-packages文件夹中的例子。 view image