我必须在 cron 中每天运行此命令来刷新认证。
# /root/certbot-auto renew --quiet
/root/.local/share/letsencrypt/lib/python2.6/site-packages/cryptography/__init__.py:26: DeprecationWarning: Python 2.6 is no longer supported by the Python core team, please upgrade your Python. A future version of cryptography will drop support for Python 2.6
DeprecationWarning
它总是给我发送错误。我该如何升级我的 Python 以避免此错误?我已经运行过了,yum update
但一切都是最新的。
Installed Packages
Name : python
Arch : x86_64
Version : 2.6.6
参考:Certbot:https://certbot.eff.org/#centos6-apache
CentOS 版本 6.8(最终版)
答案1
CentOS 6.x(CentOS 6 的所有版本)附带 Python 2.6,正如您所发现的,它已经过时并且不再受支持。
幸运的是,除了 2.6 之外,你还可以安装 Python 2.7:
yum -y install centos-release-SCL
yum -y install python27
然后您需要将 Let's Encrypt 使用的 Python 版本替换为新的 Python 2.7,如下所示:
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
sed -i "s|--python python2|--python python2.7|" letsencrypt-auto
./letsencrypt-auto --verbose
我自己没有发现这一点,所以所有的功劳都归功于伊娃2000让我们加密社区。
您可能需要替换letsencrypt-auto
,cerbot-auto
因为原始答案来自 2015 年。
资料来源:
- https://community.letsencrypt.org/t/redhat-centos-6-x-users-need-python-2-7/2190
- https://github.com/h2oai/h2o-2/wiki/installing-python-2.7-on-centos-6.3.-follow-this-sequence-exactly-for-centos-machine-only
- https://wiki.centos.org/AdditionalResources/Repositories/SCL
编辑:其他来源提到需要安装centos-release-SCL
才能安装 Python 2.7
答案2
我通过scl
在 crontab 中安装和使用它来修复它
@daily scl enable python27 "/root/certbot-auto renew --quiet"
[root@server ~]# python --version
Python 2.6.6
[root@server ~]# python2 --version
Python 2.6.6
[root@server ~]# scl enable python27 "python --version"
Python 2.7.13