Python Letsencrypt ImportError:更新时amazon linux上没有名为interface的模块
今天,当我尝试使用此命令续订证书时,我遇到了错误Python Letsencrypt ImportError:更新时amazon linux上没有名为interface的模块,python,linux,lets-encrypt,Python,Linux,Lets Encrypt,今天,当我尝试使用此命令续订证书时,我遇到了错误 /opt/letsencrypt/letsencrypt-auto renew --config /etc/letsencrypt/config.ini --agree-tos && apachectl graceful 还尝试了此命令 /opt/letsencrypt/letsencrypt-auto renew 错误: Traceback (most recent call last): File "/root/.lo
/opt/letsencrypt/letsencrypt-auto renew --config /etc/letsencrypt/config.ini --agree-tos && apachectl graceful
还尝试了此命令
/opt/letsencrypt/letsencrypt-auto renew
错误:
Traceback (most recent call last):
File "/root/.local/share/letsencrypt/bin/letsencrypt", line 7, in <module>
from certbot.main import main
File "/root/.local/share/letsencrypt/local/lib/python2.7/dist-packages/certbot/main.py", line 12, in <module>
import zope.component
File "/root/.local/share/letsencrypt/local/lib/python2.7/dist-packages/zope/component/__init__.py", line 16, in <module>
from zope.interface import Interface
ImportError: No module named interface
回溯(最近一次呼叫最后一次):
文件“/root/.local/share/letsencrypt/bin/letsencrypt”,第7行,在
从certbot.main导入main
文件“/root/.local/share/letsencrypt/local/lib/python2.7/dist-packages/certbot/main.py”,第12行,在
导入zope.component
文件“/root/.local/share/letsencrypt/local/lib/python2.7/dist-packages/zope/component/_-init___.py”,第16行,在
从zope.interface导入接口
ImportError:没有名为interface的模块
我做了大量研究,但没有找到解决方案。在做了大量研究后,我找到了解决方案。 您必须取消设置Python安装布局
unset PYTHON_INSTALL_LAYOUT
然后更新letsencrypt
/opt/letsencrypt/letsencrypt-auto -v
有关更多信息,请参阅本博客
sudopip卸载zope.interface
并重新安装zope.interface
sudo-pip-install-zope.interface
我遇到了同样的问题,按照本文的说明升级pip和virtualenv对我来说很有效
sudo pip install --upgrade pip
sudo pip install --upgrade virtualenv
rm -rf ~/.local/share/letsencrypt
/opt/letsencrypt/letsencrypt-auto --debug
对我来说,问题的一部分与64位软件包安装时的一些奇怪的默认行为有关,但python并没有注意到这一点。在获得此问题[目前主要安装了它]后,运行以下[假设它尝试安装在/root/.local/share/letsencrypt/]中]
cd /root/.local/share/letsencrypt
\cp -r ./venv/lib64/* ./venv/lib/
然后重试该命令。python虚拟环境的安装位置随版本和操作系统的不同而变化,但一般原则帮助我调试了两种不同的安装。这对我来说很有效,否则zope和cryptography会不断显示安装的相互依赖性,导致死锁。看
? 可能您可以猜到,使用哪种python-[??]。也就是说,有很多带有
interface.py
的软件包,我还必须卸载zope.interface并重新安装它,以及加密。如果在取消设置环境变量后仍然出现错误,另一种方法是删除在.local中的主文件夹下创建的python virtualenv。清除该文件夹后,“重新安装到最新版本”进行得很顺利,但取消设置该环境变量意味着什么?你应该重新设置吗?对我来说,zope.interface
没有安装,但是安装并没有什么不同。我的系统报告的要求已经是最新的:pip in/usr/lib/python2.7/dist packages”
sudo /opt/eff.org/certbot/venv/local/bin/pip install cryptography interface zope