Как остановить DeprecationWarning для Python 2.6?

Мне приходится ежедневно запускать эту команду в 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

Это всегда отправляет мне сообщение об ошибке. Как мне обновить мой питон, чтобы избежать этой ошибки? Я уже побежал yum update но все актуально.

Installed Packages
Name        : python
Arch        : x86_64
Version     : 2.6.6

Ссылка: Certbot: https://certbot.eff.org/

CentOS релиз 6.8 (финал)

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

CentOS 6.x (все выпуски CentOS 6) поставляется с Python 2.6, который, как вы узнали, устарел и больше не поддерживается.

К счастью, вы можете установить Python 2.7 помимо 2.6:

yum -y install centos-release-SCL
yum -y install python27

Затем вам нужно заменить версию Python, используемую Let's Encrypt, на новый 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

Я сам не узнал об этом, поэтому вся заслуга eva2000 сообщества Let's Encrypt.

Вам может понадобиться заменить letsencrypt-auto с cerbot-auto как оригинальный ответ с 2015 года.

Источники:

Изменить: Другие источники упоминают о необходимости установки centos-release-SCL для того, чтобы установить Python 2.7

Другие вопросы по тегам