我正在尝试在Linux Mint 17.2 Rafaela上使用pip3安装awscli。
我收到错误:
Traceback (most recent call last):
File "/home/jonathan/.local/bin/aws", line 19, in <module>
import awscli.clidriver
ImportError: No module named 'awscli'
这是我正在采取的步骤,遵循aws安装指南:
sudo pip install awscli --upgrade --user
一切似乎安装得很好。
添加到我的.bashrc
export PATH=~/.local/bin:$PATH
然后
source ~/.bashrc
然后我尝试命令
aws --version
我得到了
Traceback (most recent call last):
File "/home/jonathan/.local/bin/aws", line 19, in <module>
import awscli.clidriver
ImportError: No module named 'awscli'
任何人都可以帮忙吗?
编辑:对于访问此问题的任何人。我无法测试任何这些答案,因为我已经删除了这个操作系统并安装了Ubuntu。此外,我不再需要awscli了。
答案 0 :(得分:27)
我有同样的问题。我意识到awscli没有安装在/usr/local/lib/python3.5中,而是安装在/.local/usr中。所以我使用
卸载了awsclisudo pip3 uninstall awscli
刚刚使用了这个
sudo pip3 install awscli
为我解决了这个问题。现在aws --version
工作得很好。
还要确保删除安装在/.local文件夹中的awscli的所有依赖项,您只需卸载所有这些依赖项,然后运行上面的命令。
答案 1 :(得分:6)
我遇到了这个问题,请使用以下命令对其进行修复。
$sudo pip install awscli --force-reinstall --upgrade && sudo chmod 755 /bin/aws
答案 2 :(得分:5)
我创建了相同的情况,先做了pip install awscli,然后做了sudo pip install awscli。运行后
sudo pip uninstall awscli
sudo pip install awscli
我还有问题。我必须手动删除$ HOME / .local目录 与sudo rm -rf .local
答案 3 :(得分:5)
发生这种情况的原因有很多,其中之一是错误安装了AWS
sudo pip install aws
正确的安装方法是(如果您不弄乱它,这应该可以工作):
sudo pip install --upgrade --user awscli
否则,如果出现以下错误: 导入awscli.clidriver
然后执行以下命令对其进行修复:
sudo pip install awscli --force-reinstall --upgrade
,您的awscli将安装在(对于Ubuntu 16)
/ usr / local / bin / aws
设置aws路径:
export PATH=~/.local/bin:$PATH
答案 4 :(得分:3)
在我的情况下,我必须使用我不应该使用的sudo运行pip命令,从而使root成为*
各个子目录的所有者,而这些子目录应该归我所有。运行~/.local/
可以,但是sudo -H aws --version
不能。
运行此命令以更正所有者,可以解决我的许多问题:
aws --version
答案 5 :(得分:2)
I had a similar problem but under Windows 10
I used pip3 install awscli --upgrade --user
like it is recommended by Amazon.
So in my case the problem was that I had 27 and 36 pythons installed:
D:\ff>where python.exe
C:\Users\me\.windows-build-tools\python27\python.exe
C:\Users\me\AppData\Local\Programs\Python\Python36\python.EXE
And I need them both...
Note here that you can just swap the order of entries in the
PATH
global variable like @WStrellis suggested: https://stackoverflow.com/a/55071644/139667 or you can use this trick...
... so what I did is:
In the folder where I needed aws I created
file aws.bat
C:\Users\me\AppData\Local\Programs\Python\Python36\python.EXE aws.py %*
file aws.py
import awscli.clidriver
import sys
def main():
return awscli.clidriver.main()
if __name__ == '__main__':
sys.exit(main())
now I can run the aws console from that folder just like it's real:
aws help
The advantages of doing this is that:
pip3 install awscli --upgrade --user
).答案 6 :(得分:2)
在Windows 10 64bit上,我遇到了相同的错误。
我的PC上安装了Python 2.7和3.7。我尝试使用以下两个命令安装awscli:
pip install --upgrade --user awscli
pip install awscli
在使用第一个命令后,我使用pip卸载了awscli。
运行第二条命令后,错误消息仍然存在。
我通过更改在“系统” PATH变量中搜索路径的顺序来解决了这个问题。
我的“系统” PATH变量如下所示:
C:\Program Files\Python\Python27\
C:\Program Files\Python\Python27\Scripts
C:\Program Files\Python\Python37\
C:\Program Files\Python\Python37\Scripts
因此,我使用了“环境变量控制面板”中的“上移/下移”按钮来更改顺序,如下所示:
C:\Program Files\Python\Python37\
C:\Program Files\Python\Python37\Scripts
C:\Program Files\Python\Python27\
C:\Program Files\Python\Python27\Scripts
现在awscli可以正常运行了。
答案 7 :(得分:1)
首先,卸载您刚刚使用sudo pip uninstall awscli
进行过的操作。
如果安装时带有--user
标志,请确保使用以下方法删除~/.local/
中的所有aws残余物:
sudo rm -f ~/.local/bin/aws*
如果您已按照AWS文档的指示修改了$ PATH和~/.bashrc
,请通过删除添加到~/.bashrc
的行并执行以下操作来撤消操作:
exec -l $SHELL
对于Ubuntu 18.04,这对我有用:
AWS文档中的推荐安装命令:
sudo pip install --upgrade --user awscli
我发现执行此操作之后,aws二进制文件从路径中丢失了,并且按照他们的建议将其添加到$PATH
中是行不通的。
执行以下命令来解决此问题:
sudo pip install awscli --force-reinstall --upgrade
答案 8 :(得分:1)
我尝试了多种安装方式。跟随对我有用的东西。使用aws-cli
卸载pip
。它可以是pip3,也可以只是pip
。确保在安装回来时不要使用 sudo
。请执行以下操作:
sudo pip uninstall awscli
pip install awscli
现在使用以下方法检查aws-cli安装是否成功
aws --version
如果运行良好,则显示以下结果。就我而言,它显示为:
aws-cli / 1.16.60 Python / 2.7.15 + Linux / 4.18.0-11-generic botocore / 1.12.50
答案 9 :(得分:1)
感谢您的帮助。
https://docs.aws.amazon.com/cli/latest/userguide/install-macos.html#awscli-install-osx-path
我按照说明进行操作,在完成所有这些步骤后出现错误:
<soapenv:RootTag xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<childTag someAttribute="colors are nice">
<grandchild>This is a text tag</grandchild>
</childTag>
</soapenv:RootTag>
此帖子可以帮助解决它,也需要解决此问题
$aws
Traceback (most recent call last):
File "/usr/local/bin/aws", line 19, in <module>
import awscli.clidriver
ModuleNotFoundError: No module named 'awscli'
并运行
WARNING: The scripts pyrsa-decrypt, pyrsa-decrypt-bigfile, pyrsa-encrypt, pyrsa-encrypt-bigfile, pyrsa-keygen, pyrsa-priv2pub, pyrsa-sign and pyrsa-verify are installed in '/Users/xxx/Library/Python/3.7/bin' which is not on PATH.
答案 10 :(得分:1)
这不是一个非常可靠的解决方案,但是与上述答案类似,最好检查您的Python版本。我已经通过awscli
(pip
)将pip install awscli
安装到Python 3.5(我的默认Python)上,并能够从Python 3.5 REPL导入它,但是当我运行{{1 }}命令行上的可执行命令,我仍然收到与上面相同的错误。我选择将aws
可执行文件的Python版本从aws
更改为2.7
3.5
chmod 777 /usr/bin/aws # Grants edit access to the aws executable
vi /usr/bin/aws # Opens executable in editor
中更改了以下内容:#!usr/bin/python2.7
-> python2.7
如果出于安全原因需要出于安全目的重新调整文件权限,则建议您也这样做。
希望这会有所帮助!作为参考,我使用CentOS 7作为操作系统。
答案 11 :(得分:0)
我得到了此命令来尝试运行几个月前就已经安装的AWS CLI,因此重新安装对我来说似乎是错误的事情。
我尝试再次安装它,但收到一条消息,说明此操作已完成。
我能够通过使用在我的计算机上安装Python的位置设置此代码来设置“路径变量”来解决此错误。下面的代码对我的编码任务有很大帮助。
setx PATH “C:\Users\user\AppData\Local\Programs\Python\Python35-32
现在我可以运行aws configure了,这还是我想做的。请查看:Install the AWS CLI on Windows,以获取有关此问题的更多指导。
答案 12 :(得分:0)
我遇到了这个问题。首次尝试安装时,我没有使用--upgrade选项。当我使用--upgrade重试安装时,它可以正常工作。另外,如果您使用--user,则无需使用sudo。
答案 13 :(得分:0)
我找到了根本原因。 Mojave在磁盘访问方面设置了一些限制。 http://osxdaily.com/2018/10/09/fix-operation-not-permitted-terminal-error-macos/
然后使用
sudo -H pip3 uninstall awscli
sudo -H pip3 install awscli
答案 14 :(得分:0)
我遇到了同样的问题@ ec2 ubuntu实例。 有用的是升级了pip版本:您最初获得的是pip v 9.0.1。将其升级到当前版本(撰写本文时为18.0)
pip install --upgrade pip
答案 15 :(得分:0)
我遇到了同样的问题。
刚刚写道:
pip3 install --upgrade awscli
我的问题解决了。
答案 16 :(得分:0)
如果您正在使用 pipx
并且遇到此问题,我尝试卸载并重新安装,例如pipx uninstall awscli; pipx install awscli
- 仍然无效。
我最终在 pipx pipx reinstall-all
中重新安装了所有东西,最终成功了 - 不知道为什么 - 共享库更新?
pipx
很棒,但仍然有点神奇,因为我还没有深入研究内部结构。
答案 17 :(得分:0)
如果您专门安装了多个版本的 Python ANACONDA,则路径顺序很重要。在所有 anaconda 中优先考虑新安装的脚本目录路径。