Certbot

certbot 設置 ssl,錯誤“沒有名為 ‘ConfigParser’ 的模組”

  • March 12, 2018

我正在設置我的網站以通過 certbot 使用 https。

我按照這裡的指示

我執行wgetandchmod沒有問題,但是當我執行時:

./certbot-auto

我收到以下錯誤:

Setting up gyp (0.1+20150913git1f374df9-1ubuntu1) ...
Traceback (most recent call last):
File "/usr/bin/pycompile", line 35, in
from debpython.version import SUPPORTED, debsorted, vrepr, \
File "/usr/share/python/debpython/version.py", line 24, in
from ConfigParser import SafeConfigParser
ImportError: No module named 'ConfigParser'
dpkg: error processing package gyp (--configure):
subprocess installed post-installation script returned error exit status 1
Setting up python-virtualenv (15.0.1+ds-3) ...
Traceback (most recent call last):
File "/usr/bin/pycompile", line 35, in
from debpython.version import SUPPORTED, debsorted, vrepr, \
File "/usr/share/python/debpython/version.py", line 24, in
from ConfigParser import SafeConfigParser
ImportError: No module named 'ConfigParser'
dpkg: error processing package python-virtualenv (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of node-gyp:
node-gyp depends on gyp (>= 0.1+20150913git1f374df9); however:
Package gyp is not configured yet.

dpkg: error processing package node-gyp (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of npm:
npm depends on node-gyp (>= 0.10.9); however:
Package node-gyp is not configured yet.

dpkg: error processing package npm (--configure):
dependency problems - leaving unconfigured
Setting up trash-cli (0.12.9.14-2) ...

我主要關注的是錯誤:

ImportError:沒有名為“ConfigParser”的模組

但找不到任何解決方案。

如何修復此錯誤?

ps 我想知道這是否與不同的預設 python 設置有關,但我使用 ln -sf /usr/bin/python2.7 /usr/local/bin/python 嘗試了 2.7 和 3.5 都無濟於事。

首先,按照先前答案中的建議刪除 Python 3 是一個糟糕的主意,雖然它有很小的機會解決您的特定問題,但它更有可能創建更多,因為任何依賴它的程序都會崩潰。

其次,您的問題源於對您的系統進行的本不應該進行的修改。python旨在python2預設連結到(請參閱PEP 394)以實現向後兼容性,並由python-minimalUbuntu 提供(請參閱文件列表)。

我建議刪除損壞的軟體包,重新安裝,python並執行以下內容:python-minimal``python3``python3-minimal

sudo apt update     # Get an up-to-date list of available packages
sudo apt autoclean  # Remove partial packages
sudo apt clean      # Remove package cache to force redownload
sudo apt install --reinstall python python-minimal python3 python3-minimal

如果任何損壞的包拒絕通過 刪除apt,您可以使用sudo dpkg --remove -force --force-remove-reinstreq $BROKEN_PACKAGE_NAMES(您當然應該用實際損壞的包替換變數)。請注意,這幾乎會解除安裝任何東西,因此不要嘗試解除安裝您認為對您的系統至關重要的軟體包。

修復系統 Python 後,certbot-auto再次執行。

引用自:https://serverfault.com/questions/810099