apt-get broken: debian.deb822 adında bir modül yok


21

sys.path:

['/ usr / lib / update-notifier', '/usr/local/lib/python26.zip', '/usr/local/lib/python2.6', '/usr/local/lib/python2.6/ plat-linux3 ',' /usr/local/lib/python2.6/lib-tk ',' /usr/local/lib/python2.6/lib-old ',' /usr/local/lib/python2.6 / lib-dynload ',' /usr/local/lib/python2.6/site-packages ']
terry@terrylaptop:/usr/lib$ sudo apt-get install python-debian
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python-debian is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 239 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
Setting up update-notifier-common (0.119ubuntu8.6) ...
Traceback (most recent call last):
  File "/usr/lib/update-notifier/package-data-downloader", line 26, in <module>
    import debian.deb822
ImportError: No module named debian.deb822
dpkg: error processing update-notifier-common (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of flashplugin-installer:
 flashplugin-installer depends on update-notifier-common (>= 0.119ubuntu2); however:
  Package update-notifier-common is not configured yet.
dpkg: error processing flashplugin-installer (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
   Errors were encountered while processing:
 update-notifier-common
 flashplugin-installer
E: Sub-process /usr/bin/dpkg returned an error code (1)

Ubuntu'umu güncellemek için apt-get install komutunu kullanmaya çalıştığımda her zaman bu sorun oluşuyor. 12.04.01 LTS'deyim.

Ayrıca bu bağlantıdan python-debian'ı kurdum: http://pkgs.org/ubuntu-12.04/ubuntu-main-i386/python-debian_0.1.21ubuntu1_all.deb.html Ama işe yaramadı.

Birisi bana yardım edebilir mi? Çok teşekkür ederim. Googled ama bu eski sürümde zaten sabit olması gerektiği görünüyor.

terry@terrylaptop:/usr/lib$ sudo apt-get install dolphin
Reading package lists... Done
Building dependency tree       
Reading state information... Done
dolphin is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 239 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
Setting up update-notifier-common (0.119ubuntu8.6) ...
['/usr/lib/update-notifier', '/usr/local/lib/python26.zip', '/usr/local/lib/python2.6', '/usr/local/lib/python2.6/plat-linux3', '/usr/local/lib/python2.6/lib-tk', '/usr/local/lib/python2.6/lib-old', '/usr/local/lib/python2.6/lib-dynload', '/usr/local/lib/python2.6/site-packages']
Traceback (most recent call last):
  File "/usr/lib/update-notifier/package-data-downloader", line 29, in <module>
    import debian.deb822
ImportError: No module named debian.deb822
dpkg: error processing update-notifier-common (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of flashplugin-installer:
 flashplugin-installer depends on update-notifier-common (>= 0.119ubuntu2); however:
  Package update-notifier-common is not configured yet.
dpkg: error processing flashplugin-installer (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error   from a previous failure.
                                                                                                          Errors were encountered while processing:
 update-notifier-common
 flashplugin-installer
E: Sub-process /usr/bin/dpkg returned an error code (1)
terry@terrylaptop:/usr/lib$ ls /usr/local/lib/python2.6/debian.deb822.py 
/usr/local/lib/python2.6/debian.deb822.py

terry@terrylaptop:/usr/lib$ cat /usr/local/lib/python2.6/debian.deb822.py
import warnings

warnings.warn("please use 'debian.deb822' instead", DeprecationWarning,
              stacklevel=2)

from debian.deb822 import *

Debian.deb822 dosyasını /usr/local/lib/python2.6 adresinde görebilirsiniz, ancak yine de bulamıyorsunuz.

------ 2/20 tarihinde en son güncelleme ----------------

terry@terrylaptop:/usr/local/bin$ ls -l /usr/bin/py*
-rwxr-xr-x 1 root root  3752 May  2  2012 /usr/bin/py3_compilefiles
-rwxr-xr-x 1 root root 97759 May  2  2012 /usr/bin/pycentral
-rwxr-xr-x 1 root root  4124 Apr 18  2012 /usr/bin/pyclean
-rwxr-xr-x 1 root root 11933 Apr 18  2012 /usr/bin/pycompile
-rwxr-xr-x 1 root root  3723 May  2  2012 /usr/bin/py_compilefiles
lrwxrwxrwx 1 root root     8 Apr 27  2012 /usr/bin/pydoc -> pydoc2.7
-rwxr-xr-x 1 root root    79 Aug  1  2012 /usr/bin/pydoc2.7
lrwxrwxrwx 1 root root    12 Apr 27  2012 /usr/bin/pygettext -> pygettext2.7
-rwxr-xr-x 1 root root 22103 Aug  1  2012 /usr/bin/pygettext2.7
-rwxr-xr-x 1 root root   217 Mar  9  2012 /usr/bin/pyhtmlizer
lrwxrwxrwx 1 root root    24 Feb 20 07:24 /usr/bin/python -> /usr/loca/bin/python2.7
lrwxrwxrwx 1 root root    24 Jun 14  2012 /usr/bin/python2 -> /usr/local/bin/python2.6
lrwxrwxrwx 1 root root    24 Jun 14  2012 /usr/bin/python2.6 -> /usr/local/bin/python2.6
lrwxrwxrwx 1 root root    29 Apr 27  2012 /usr/bin/pyversions -> ../share/python/pyversions.py

terry@terrylaptop:/usr/local/bin$ ls -l /usr/local/bin/py*
-rwxrwxr-x 1 root root      84 Feb 20 07:21 /usr/local/bin/pydoc
lrwxrwxrwx 1 root root      24 Feb 20 07:31 /usr/local/bin/python -> /usr/local/bin/python2.7
lrwxrwxrwx 1 root root       9 Feb 20 07:23 /usr/local/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 4610075 Jun 14  2012 /usr/local/bin/python2.6
-rwxr-xr-x 1 root root    1424 Jun 14  2012 /usr/local/bin/python2.6-config
-rwxr-xr-x 1 root root 4917197 Feb 20 07:22 /usr/local/bin/python2.7
-rwxr-xr-x 1 root root    1624 Feb 20 07:23 /usr/local/bin/python2.7-config
lrwxrwxrwx 1 root root      16 Feb 20 07:23 /usr/local/bin/python2-config -> python2.7-config
lrwxrwxrwx 1 root root      14 Feb 20 07:23 /usr/local/bin/python-config -> python2-config

Hala kuramıyorum. Sys.path:

['/usr/lib/update-notifier', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']

------ 2013/2/22 güncellemesi ---------------

terry@terrylaptop:/data$ sudo apt-get install python2.7
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python2.7 is already the newest version.
The following packages were automatically installed and are no longer required:
  libnepomukdatamanagement4 libkexiv2-10 libkdegames5a libboost-program-options1.46.1 libkdecorations4 libkwinglutils1 libnepomuksync4  libokularcore1abi1 libssl0.9.8 libattica0.3 liblastfm0 libkwineffects1abi3
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.
5 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.

Neden bunu yaptınız: "0 yükseltildi, 0 yeni yüklendi, kaldırılacak 0 ve 239 yükseltilmedi ."?

@ vasa1, Zaten yüklü olduğundan veya paket yöneticisi bozuk olduğundan. Birkaç satır daha görün, paket yöneticisinin bozuk olduğunu görüyoruz. Paket yöneticisini yükseltme işlemimi paket yöneticisi aracılığıyla düzeltemeyeceğiz. Bir düzeltme indirmeli ve manuel olarak düzeltmeliyiz.
ctrl-alt-delor

debian paketleri kurarken aynı şeyi yapar mı? Eğer öyleyse, soruyu güncelleyebilir, daha genel hale getirmek için. (Daha fazla cevap alabilirsiniz).
ctrl-alt-delor

Tam olarak 9.10 -> 10.04 ve şimdi 12.04'e yükselttiğimiz bir sunucuda aynı problemi yaşadık ve bu sorunu çözdük. Nerede kırdığını bilmediğim için yükseltme yapmadım, eksik olan bir python modülü olduğundan manuel olarak düzeltilmesi kolay olmalı (Referans 12.04 sistemi "/usr/lib/python2.7/dist-packages/debian" a sahipti. "/ usr / share / pyshared" deki çeşitli modüllere bağlantılar içeren deb822, diğerleri arasında deb8 klasöründe debian klasörü ise
abscent

Merhaba, daha iyisini yapmak için daha fazla hata ayıklama bilgisi ekledim:
Terry

Yanıtlar:


16

Debian.deb822 içermesi gereken paketi tekrar yüklemeyi deneyin:

sudo apt-get --reinstall install python-debian

14

Benim durumumda ben gibi tüm çelişen paketleri kaldırmak zorunda kaldı update-notifier, update-notifier-commonvb sonra ben koştum:

sudo apt install --reinstall python-debian python3-debian python-chardet python3-chardet

2
Diğerlerini denedikten sonra benim için çalışan tek çözüm buydu (ve bunun da dahil olduğu: askubuntu.com/questions/812375/… )
slhck

Bu cevap benim için de işe yaradı. Python3'ü yükledikten kısa bir süre sonra bu hatayı almaya başladım ... update-notifier python3'ün varlığını aldı, ancak gerekli bağımlılıkları eksik olduğu için tamamlanamadı. Koşmam gerekiyordu sudo apt install python3-debian python3-chardet python3-sixve her şey yolunda.
JoeBiz

8

Update-notifier-common , flashplugin-installer'ı ve ardından sorunu geçici olarak kaldırmak için apt-get remove komutunu kullanıyorum .

İşte komut:

sudo apt-get remove  update-notifier-common flashplugin-installer

evet, fakat bu daha çok geçici bir çözüm gibi, ve daha sonra flaş güncelleme
Huafu,

çok iyi yapılmış. Bu hala çalışıyor.
Akash Kandpal

5

Hem python 2.6 hem de 2.7 kurdum, bu yüzden debian.deb822 olan 2.7'ye geri dönmem gerekiyordu.

sudo update-alternatives --config python

bu benim için de işe yaradı ve ben 14.04
Huafu

3

Muhtemelen python debian paketini kaldırdınız, python-debian'ı yeniden yüklemek için bu komutları çalıştırın ve ardından güncelleme bildirim paketini kurun.

sudo apt-get remove  update-notifier-common
sudo apt-get autoremove
sudo apt-get --reinstall install python-debian
sudo apt-get install  update-notifier

3

Benim durumumda ubuntu 16.04'te neyin düzelttiği (sorun, asıl gönderiden bu yana yıllar sonra hala ısırıyor) python sembollerini düzeltmektir:

cd /usr/bin
sudo ln -sf python3.6 python3
sudo ln -sf python3 python

Yani şimdi var:

/usr/bin# ls -l python python3
lrwxrwxrwx 1 root root 7 Jun 29 15:33 python -> python3
lrwxrwxrwx 1 root root 9 Jun 29 15:38 python3 -> python3.6

Daha python3önce işaret ediyordu python3.5. Bir kez daha python3.6 aptişe yaradım.

Şu anda yan yana yüklü python 2.7, 3.5 ve 3.6 var.


Benim için çözdü. Yükledikten sonra sorun yaşadımpython3.7 vardı python3gelin python3.7yerinepython3.6
Emonadeo

2

Çözümüm

apt-get --reinstall install python-chardet

Konunun anatomisi

platformumda bu dosyaların kullanılacağını dpkg -L python-chardetiddia etti python-chardet:

# dpkg -L python-chardet
/.
/usr
/usr/share
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/chardet.1.gz
/usr/share/doc
/usr/share/doc/python-chardet
/usr/share/doc/python-chardet/history.html
/usr/share/doc/python-chardet/css
/usr/share/doc/python-chardet/css/chardet.css
/usr/share/doc/python-chardet/faq.html
/usr/share/doc/python-chardet/images
/usr/share/doc/python-chardet/images/tip.png
/usr/share/doc/python-chardet/images/note.png
/usr/share/doc/python-chardet/images/permalink.gif
/usr/share/doc/python-chardet/images/warning.png
/usr/share/doc/python-chardet/images/caution.png
/usr/share/doc/python-chardet/images/important.png
/usr/share/doc/python-chardet/index.html
/usr/share/doc/python-chardet/how-it-works.html
/usr/share/doc/python-chardet/usage.html
/usr/share/doc/python-chardet/license.html
/usr/share/doc/python-chardet/changelog.Debian.gz
/usr/share/doc/python-chardet/copyright
/usr/share/doc/python-chardet/supported-encodings.html
/usr/bin
/usr/bin/chardet
/usr/lib
/usr/lib/python2.7
/usr/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages/chardet
/usr/lib/python2.7/dist-packages/chardet/langcyrillicmodel.py
/usr/lib/python2.7/dist-packages/chardet/mbcharsetprober.py
/usr/lib/python2.7/dist-packages/chardet/test.py
/usr/lib/python2.7/dist-packages/chardet/charsetgroupprober.py
/usr/lib/python2.7/dist-packages/chardet/utf8prober.py
/usr/lib/python2.7/dist-packages/chardet/langgreekmodel.py
/usr/lib/python2.7/dist-packages/chardet/hebrewprober.py
/usr/lib/python2.7/dist-packages/chardet/langhebrewmodel.py
/usr/lib/python2.7/dist-packages/chardet/escprober.py
/usr/lib/python2.7/dist-packages/chardet/mbcssm.py
/usr/lib/python2.7/dist-packages/chardet/jpcntx.py
/usr/lib/python2.7/dist-packages/chardet/codingstatemachine.py
/usr/lib/python2.7/dist-packages/chardet/gb2312prober.py
/usr/lib/python2.7/dist-packages/chardet/latin1prober.py
/usr/lib/python2.7/dist-packages/chardet/euctwprober.py
/usr/lib/python2.7/dist-packages/chardet/escsm.py
/usr/lib/python2.7/dist-packages/chardet/universaldetector.py
/usr/lib/python2.7/dist-packages/chardet/langbulgarianmodel.py
/usr/lib/python2.7/dist-packages/chardet/gb2312freq.py
/usr/lib/python2.7/dist-packages/chardet/langthaimodel.py
/usr/lib/python2.7/dist-packages/chardet/constants.py
/usr/lib/python2.7/dist-packages/chardet/eucjpprober.py
/usr/lib/python2.7/dist-packages/chardet/euctwfreq.py
/usr/lib/python2.7/dist-packages/chardet/jisfreq.py
/usr/lib/python2.7/dist-packages/chardet/sbcharsetprober.py
/usr/lib/python2.7/dist-packages/chardet/mbcsgroupprober.py
/usr/lib/python2.7/dist-packages/chardet/__init__.py
/usr/lib/python2.7/dist-packages/chardet/sjisprober.py
/usr/lib/python2.7/dist-packages/chardet/euckrprober.py
/usr/lib/python2.7/dist-packages/chardet/langhungarianmodel.py
/usr/lib/python2.7/dist-packages/chardet/charsetprober.py
/usr/lib/python2.7/dist-packages/chardet/chardistribution.py
/usr/lib/python2.7/dist-packages/chardet/sbcsgroupprober.py
/usr/lib/python2.7/dist-packages/chardet/big5freq.py
/usr/lib/python2.7/dist-packages/chardet/big5prober.py
/usr/lib/python2.7/dist-packages/chardet/euckrfreq.py
/usr/lib/python2.7/dist-packages/chardet-2.0.1.egg-info

fakat sorun şu ki bunların hiçbiri yoktu:

# ls /usr/lib/python2.7/dist-packages/chardet
ls: cannot access /usr/lib/python2.7/dist-packages/chardet: No such file or directory

Yapabileceğiniz başka bir test

İkiliyi kullanarak da chardet'i kontrol edebilirsiniz:

/usr/bin/chardet

Böyle bir şey çıktılarsa, lib kırılır :

# /usr/bin/chardet 
Traceback (most recent call last):
  File "/usr/bin/chardet", line 26, in <module>
    import chardet
ImportError: No module named chardet

Orijinal hata mesajım:

root@odroid:/etc/nagios# apt-get install  update-notifier             
Reading package lists... Done Building dependency tree        Reading
state information... Done update-notifier is already the newest
version. 0 upgraded, 0 newly installed, 0 to remove and 5 not
upgraded. 4 not fully installed or removed. After this operation, 0 B
of additional disk space will be used. Do you want to continue? [Y/n] 
Setting up update-notifier-common (0.154.1ubuntu1) ... Traceback (most
recent call last):   File
"/usr/lib/update-notifier/package-data-downloader", line 26, in
<module>
    import debian.deb822   File "/usr/lib/python2.7/dist-packages/debian/deb822.py", line 39
    import chardet
         ^ SyntaxError: invalid syntax dpkg: error processing package update-notifier-common (--configure):  subprocess installed
post-installation script returned error exit status 1 dpkg: dependency
problems prevent configuration of update-notifier:  update-notifier
depends on update-notifier-common (= 0.154.1ubuntu1); however:  
Package update-notifier-common is not configured yet.

dpkg: error processing package update-notifier (--configure): 
dependency problems - leaving unconfigured dpkg: dependency problems
prevent configuration of update-manager:  update-manager depends on
update-notifier; however:   Package update-notifier is not configured
yet.

dpkg: error processing package update-manager (--configure): 
dependency problems - leaving unconfigured dpkg: dependency problems
prevent configuration of ubuntu-release-upgrader-gtk: 
ubuntu-release-upgrader-gtk depends on update-manager; however:  
Package update-manager is not configured yet.

dpkg: error processing package ubuntu-release-upgrader-gtk
(--configure):  depenNo apport report written because the error
message indicates its a followup error from a previous failure.
                                                                                                                No apport report written because the error message indicates its a
followup error from a previous failure.
                                                                   No apport report written because MaxReports is reached already
                                                                                                                                 dency problems - leaving unconfigured Errors were encountered while
processing:  update-notifier-common  update-notifier  update-manager 
ubuntu-release-upgrader-gtk E: Sub-process /usr/bin/dpkg returned an
error code (1)

yukarıda söylediğim gibi, sadece chardet'i yeniden takın:

apt-get --reinstall install python-chardet

Aslında Volker Siegel'in düzenlemesini beğenmedim. kasten küçük harf kullanıyorum.
qknight

0

Benim için python-debianpaketi yükleyerek çözüldü python3:

sudo apt install python3-debian
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.