Linux下如何确认AWS CLI依赖库路径及修复aws-okta-processor缺失问题
解决aws-okta-processor找不到的问题
确认AWS CLI的依赖库路径
- 查看AWS CLI安装位置:执行
which aws,输出路径如果是/usr/bin/aws说明是系统级安装,若是./venv/bin/aws则属于虚拟环境内的版本 - 查找AWS CLI关联的Python环境:执行
aws --info,在输出里定位Python location字段,即可知道它使用的Python解释器路径 - 检查虚拟环境中aws-okta-processor的安装路径:激活虚拟环境后,执行
pip show aws-okta-processor,查看Location字段对应的路径
解决方法
- 避免用sudo运行aws命令:sudo会切换到root用户,默认不继承当前用户的虚拟环境PATH,因此找不到虚拟环境内安装的工具。直接执行
aws sts get-caller-identity即可 - 若必须用sudo,保留当前环境变量:执行
sudo -E aws sts get-caller-identity,-E参数可让sudo继承当前用户的环境变量,包括虚拟环境的PATH - 让AWS CLI与虚拟环境绑定:激活虚拟环境后,执行
pip install awscli重新安装AWS CLI,此时虚拟环境内的aws命令会直接调用虚拟环境的Python,自然能找到aws-okta-processor - (不推荐)系统级安装:执行
sudo pip install aws-okta-processor,将工具安装到系统Python环境中,但可能会污染系统依赖
内容的提问来源于stack exchange,提问作者Katsuya Obara
相关产品推荐
相关产品推荐

