
Estou recebendo repetidamente esta mensagem:
Setting up apt-listchanges (3.10) ...
Traceback (most recent call last):
File "/tmp/tmp.aulCeycFHm.aptlc/debconf-helper.py", line 6, in <module>
import debconf
ImportError: No module named 'debconf'
dpkg: error processing package apt-listchanges (--configure):
subprocess installed post-installation script returned error exit status 1
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
apt-listchanges
debconf
~$ dpkg --status debconf
Package: debconf
Status: install ok installed
Priority: required
Section: admin
Installed-Size: 558
Maintainer: Debconf Developers <[email protected]>
Architecture: all
Multi-Arch: foreign
Version: 1.5.60
Replaces: debconf-tiny
Provides: debconf-2.0
Pre-Depends: perl-base (>= 5.6.1-4)
Recommends: apt-utils (>= 0.5.1), debconf-i18n
Suggests: debconf-doc, debconf-utils, whiptail | dialog, libterm-readline-gnu-perl, libgtk2-perl (>= 1:1.130), libnet-ldap-perl, perl, libqtgui4-perl, libqtcore4-perl
Conflicts: apt (<< 0.3.12.1), cdebconf (<< 0.96), debconf-tiny, debconf-utils (<< 1.3.22), dialog (<< 0.9b-20020814-1), menu (<= 2.1.3-1), whiptail (<< 0.51.4-11), whiptail-utf8 (<= 0.50.17-13)
Conffiles:
/etc/apt/apt.conf.d/70debconf 7e9d09d5801a42b4926b736b8eeabb73
/etc/debconf.conf 8c0619be413824f1fc7698cee0f23811
Description: Debian configuration management system
Debconf is a configuration management system for debian packages. Packages
use Debconf to ask questions when they are installed.
ls -l /usr/lib/python*/dist-packages/debconf.py
ls -l /usr/lib/python*/dist-packages/debconf.py
Responder1
Isso pode não ser mais importante para você, mas descobri uma solução alternativa, pelo menos para mim.
O problema é que ele não consegue encontrar debconf.py
no seu caminho. No meu caso, estava usando um python diferente com configurações diferentes do que normalmente estava no meu caminho.
Acabei encontrando um arquivo debconf.py em /usr/lib/python3/dist-packages/debconf.py
. Para mim foi python3.6
o caminho errado, que você pode encontrar fazendo:
$ python3.6
>>> import sys
>>> sys.path
O que me mostrou que não tinha o que estava no meu arquivo $PATH
. Em vez de mexer muito, apenas executei isto:
# ln -s /usr/lib/python3/dist-packages/debconf.py /usr/local/lib/python3.6/site-packages
O destino pode serem qualquer lugarisso aparece nisso sys.path
. Você provavelmente poderia copiar em vez de link simbólico. Independentemente disso, foi o que fiz e funcionou para mim - espero que você tenha a mesma sorte!
Responder2
Comecei a receber esse erro quando atualizei meu servidor de computação de Debian jessie
para Debian stretch
.
Meu problema é que eu tinha (tolamente) instalado manualmente o Python 3.5 em todo o sistema antes da atualização para o stretch
, e essa versão do Python estava 'mascarando' a stretch
instalação padrão do Python 3. Em particular, estes fatores estavam em jogo:
Minha instalação manual v3.5 colocou seu
python3
link simbólico em/usr/local/bin
O pacote do sistema Debian
python3
instalou links simbólicos em/usr/bin
/usr/local/bin
foi mais cedo na minha$PATH
do que era/usr/bin
Então, para corrigir esse problema específico, tudo que tive que fazer foi renomear o /usr/local/bin/python3
link simbólico para, por exemplo /usr/local/bin/python3-local
, e import debconf
funcionou bem após uma python3
invocação.
Uma solução mais completa provavelmente seria uma desinstalação total da versão manual do Python 3.5 para todo o sistema e reinstalá-la na área restrita.