У меня есть cron для обновления Certbot. Он отправляет предупреждение об устаревании каждый день. Как отключить предупреждение об устаревании?
Cron <root@ip-99-99-99-99> /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
Я пытался отправить отчет об ошибке, но они закрыли его. https://github.com/certbot/certbot/issues/3984
Я попытался установить Python2.7, но не могу заставить certbot работать с Python2.7.
[root@kizbit ~]# scl enable python27 "python --version"
Python 2.7.8
[root@kizbit ~]# scl enable python27 "/root/certbot-auto renew"
/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 2.6 и выдает предупреждение. Я также пробовал:
[root@kizbit ~]# scl enable python27 "python /root/certbot-auto renew"
File "/root/certbot-auto", line 18
if [ -z "$XDG_DATA_HOME" ]; then
^
SyntaxError: invalid syntax
С 2.6 РАБОТАЕТ, НО ДАЕТ УДАЛЕНИЕ:
[root@kizbit ~]# /root/certbot-auto renew
/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
Centos 6.8, certbot 0.12.0
В качестве грязного временного обходного пути вы можете попробовать что-то вроде этого в своей записи cron:
certbot renew ... 2>&1 | grep -v DeprecationWarning
Сообщество Let's Encrypt примерно в 2015 году придумало несколько способов получить 2.7, коллекции программного обеспечения CentOS или сторонние репозитории. Пользователям Redhat / CentOS 6.x нужен python 2.7
Это сводится к установке пакетов python27 и замене python2 на python27 в клиенте. Может быть, это и не обязательно, поскольку certbot работает с 2.6, но это хорошее упражнение для получения нового программного обеспечения.
В долгосрочной перспективе вы захотите перейти на более новые версии CentOS.
Ваша проблема закрыта, так как это дубликат из вон тот, со ссылками на дальнейшие объяснения.
Обойти это невозможно: версия Python, доступная в вашей системе, устаревает. Спам "это все еще происходит" не поможет, участник попросил помогите уже. Если эта проблема важна для вас, не стесняйтесь вносить свой PR.
В противном случае я бы не рекомендовал сбрасывать вывод certbot в /dev/null
, ... но если эти предупреждения действительно вызывают проблемы, вы можете просто отказаться от них.
Я установил Python2.7 на CentOS 6 с SCL.
yum install -y centos-release-scl
yum install -y python27
# scl enable python27 "python -V"
Python 2.7.8
Тогда вам также нужно удалить
rm -r ~/.local/share/letsencrypt
И переустановите что-то связанное с Python 2.7 (библиотеки? Config?), Просто запустив его.
scl enable python27 "./certbot-auto"
Внутри crontab:
@daily scl enable python27 "/root/certbot-auto renew --quiet"