web-dev-qa-db-ja.com

Letsencrypt ImportError:更新中にAmazonlinuxにinterfaceという名前のモジュールがありません

今日、このコマンドを使用して証明書を更新しようとすると、エラーが発生します

/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

私は多くの調査を行いましたが解決策は見つかりませんでした。

14
O-mkar

たくさんの調査をした後、私はそれを見つけました。

設定を解除する必要がありますPythonインストールレイアウト

 unset PYTHON_INSTALL_LAYOUT

次に、letsencryptを更新します

 /opt/letsencrypt/letsencrypt-auto -v

詳細については、このブログを参照してください https://o-mkar.com/faceing-problem-while-renewing-letsencrypt-certificates-importerror-no-module-named-interface-Amazon-linux

19
O-mkar

Sudo pip uninstall zope.interfaceそしてzope.interfaceを再インストールします

Sudo pip install zope.interface

4
baocheng liao

私はこれで指示されたのと同じ問題に直面し、pipとvirtualenvをアップグレードしました post 私のために働きました。

Sudo pip install --upgrade pip
Sudo pip install --upgrade virtualenv
rm -rf ~/.local/share/letsencrypt
/opt/letsencrypt/letsencrypt-auto --debug
1
Yohan Liyanage

私にとっての問題の一部は、64ビットパッケージのインストールに関する奇妙なデフォルトの動作に関連していましたが、Pythonによって検出されませんでした。この問題が発生した後[この時点でほとんどインストールされています]、次のコマンドを実行します[/root/.local/share/letsencrypt/にインストールしようとしていると仮定します]

cd /root/.local/share/letsencrypt
\cp -r ./venv/lib64/* ./venv/lib/

その後、コマンドを再試行してください。 python仮想環境のインストール場所は、バージョンやオペレーティングシステムによって異なりますが、一般的な原則により、2つの異なるインストールをデバッグすることができました。

0
Jeremy Freeman