我正在尝试使用 AWS CLI 命令将文件上传到 AWS S3。 我使用的是RedHat 4操作系统的系统。 Python版本是2.7.9 OpenSSL 版本为 0.9.8v,2012 年 4 月 19 日。
我已经安装了 AWS CLI,当我执行以下命令时,我收到了有关 ssl 的错误
[test-user@redhat4 ~]$ aws s3 cp /export/home/test_dir/test_file.txt s3://test-bucket/ --region us-west-2
上传失败:test_file.txt 到 s3://test-bucket/test_file.txt 全局名称“ssl”未定义
我是否需要配置有关 Openssl 的任何内容?谁能帮我解决这个问题,因为最近几天我被这个问题阻止了。
我通过再次安装带有 SSL 支持的 Python 解决了这个问题。 我在旧的 CentOS 5.1 服务器上做到了这一点 - 但对于任何其他 Linux 发行版来说都是一样的。另外,你至少需要 Python 2.7.12。
该示例是将其安装在
opt
文件夹中 - 您可以更改它。感谢谢尔盖的回答。
# install openssl-devel
yum -y install openssl-devel
# re-install python
cd /opt/Python-2.7.13
./configure --with-ssl ### this line is the key
make
make install
# re-install AWS
cd /opt
/usr/local/bin/python2.7 awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
# you can make sure that python was installed with ssl support
# by running this command without error or messages.
python2.7 -c "import ssl"
运行 aws-okta 时出现类似错误:
name 'ssl' is not defined
exit status 255
就我而言,问题是我的 python 版本和 awscli 版本不兼容(请参阅Python 版本支持矩阵)。
升级我的 awscli 解决了我的问题。