Назад | Перейти на главную страницу

Let's Encrypt ошибка версии certbot-auto setuptools при запуске из cron

CentOS 6, certbot 0.16.0. Когда я запускаю его вручную как root (не sudo), все работает. Когда я настраиваю / etc / crontab для автоматического запуска, он возвращает ошибку:

Error: couldn't get currently installed version for //.local/share/letsencrypt/bin/letsencrypt: 
//.local/share/letsencrypt/lib64/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
An unexpected error occurred:
ContextualVersionConflict: (setuptools 0.9.8 (/.local/share/letsencrypt/lib/python2.6/site-packages), Requirement.parse('setuptools>=1.0'), set(['certbot']))
Please see the logfile '/tmp/tmp5jOtY3' for more details.`

cat / tmp / tmp5jOtY3

2017-07-31 11:37:02,325:DEBUG:certbot.log:Exiting abnormally:
Traceback (most recent call last):
  File "//.local/share/letsencrypt/bin/letsencrypt", line 11, in <module>
sys.exit(main())
  File "//.local/share/letsencrypt/lib64/python2.6/site-packages/certbot/main.py", line 723, in main
plugins = plugins_disco.PluginsRegistry.find_all()
  File "//.local/share/letsencrypt/lib64/python2.6/site-packages/certbot/plugins/disco.py", line 203, in find_all
plugin_ep = PluginEntryPoint(entry_point)
  File "//.local/share/letsencrypt/lib64/python2.6/site-packages/certbot/plugins/disco.py", line 50, in __init__
self.plugin_cls = entry_point.load()
  File "//.local/share/letsencrypt/lib64/python2.6/site-packages/pkg_resources/__init__.py", line 2201, in load
self.require(*args, **kwargs)
  File "//.local/share/letsencrypt/lib64/python2.6/site-packages/pkg_resources/__init__.py", line 2218, in require
items = working_set.resolve(reqs, env, installer)
  File "//.local/share/letsencrypt/lib64/python2.6/site-packages/pkg_resources/__init__.py", line 835, in resolve
raise VersionConflict(dist, req).with_context(dependent_req)
ContextualVersionConflict: (setuptools 0.9.8 (/.local/share/letsencrypt/lib/python2.6/site-packages), Requirement.parse('setuptools>=1.0'), set(['certbot']))

кошка / и т. д. / crontab

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

27  18  *  *  * root /opt/certbot-auto renew --quiet --no-self-upgrade

Я попробовал сообщество Let's Encrypt и нашел кого-то, у кого была точно такая же проблема, но единственная помощь, которую я предложил, - это переход на сценарий bash. Вместо этого я бы предпочел исправить официальный сценарий.

Сообщение на форуме Let's Encrypt

Вот в чем проблема:

HOME=/

Чтобы исправить это, в скрипт необходимо передать переменную HOME со значением / root:

env HOME=/root /path/to/certbot-auto