web-dev-qa-db-fra.com

Pourquoi cette erreur dpkg: nom du paquetage ambigu 'libglib2.0-0' ...?

J'ai quelques erreurs étranges lorsque j'essaie d'installer des packages avec le logiciel ou même lorsque j'essaie de mettre à niveau des packages avec Sudo apt-get install upgrade:

dpkg: error: file triggers record mentions illegal package name `libglib2.0-0' (for interest in file `/usr/lib/x86_64-linux-gnu/gio/modules'): ambiguous package name 'libglib2.0-0' with more than one installed instance

Auparavant j'avais une erreur:

dpkg: error: configuration error: /etc/dpkg/dpkg.cfg.d/multiarch:1: unknown option 'foreign-architecture'

mais je viens de le supprimer avec: Sudo rm /etc/dpkg/dpkg.cfg.d/multiarch, je suppose cet article décrit ce problème - je l'ai suivi, mais la dernière partie Sudo apt-get install dpkg=1.16.0.3ubuntu5 n'a pas fonctionné pour moi - non un tel paquet pourrait être trouvé. C'est probablement parce que j'utilise Ubuntu 12.04.

UPDATE: après avoir essayé d'installer la version correcte de dpkg 1.16.1.2ubuntu7 comme suggéré dans la réponse, je reçois maintenant les erreurs suivantes:

$ Sudo apt-get install dpkg=1.16.1.2ubuntu7
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 ia32-libs : Depends: ia32-libs-multiarch but it is not installable
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

En passant, cela pourrait aussi être utile:

$ Sudo dpkg --configure -a 
dpkg: error: file triggers record mentions illegal package name `libglib2.0-0' (for interest in file `/usr/lib/x86_64-linux-gnu/gio/modules'): ambiguous package name 'libglib2.0-0' with more than one installed instance

qui dit en fait la même chose.

UPDATE: contenu des modules (...):

/usr/lib/x86_64-linux-gnu/gio/modules$ ls
giomodule.cache      libgiognutls.so                 libgvfsdbus.so
libdconfsettings.so  libgiolibproxy.so
libgiognomeproxy.so  libgioremote-volume-monitor.so

UPDATE:/var/lib/dpkg/triggers/Fichier

$ Sudo grep libglib /var/lib/dpkg/triggers/File 
/usr/lib/x86_64-linux-gnu/gio/modules libglib2.0-0
/usr/lib/gio/modules libglib2.0-0
/usr/share/glib-2.0/schemas libglib2.0-0
/usr/lib/i386-linux-gnu/gio/modules libglib2.0-0:i386
/usr/lib/gio/modules libglib2.0-0:i386
/usr/share/glib-2.0/schemas libglib2.0-0:i386
4
mkk

aucun paquet de ce genre n'a pu être trouvé. C'est probablement parce que j'utilise Ubuntu 12.04.

La version correspondante pour Ubuntu 12.04, à compter de cette date, devrait être 1.16.1.2ubuntu7.

ia32-libs : Depends: ia32-libs-multiarch but it is not installable

Ceci est un lien vers la page ia32-libs-multiarch, où vous pouvez télécharger le fichier .deb. Veuillez utiliser dpkg -i filename.deb pour l'installer manuellement. S'il réussit, essayez à nouveau apt-get. Sinon, veuillez mettre à jour avec l'erreur dpkg.


J'ai installé ia32 sur un système de test x86_64 et obtenu les informations suivantes concernant le contenu du fichier triggers et le contenu de giomodule.cache. S'il vous plaît vérifier pour voir comment le vôtre diffère:

 izx @ myprecise: ~ $ grep libglib/var/lib/dpkg/triggers/Fichier 
/usr/lib/x86_64-linux-gnu/gio/modules libglib2.0-0 
/usr/lib/gio/modules libglib2.0-0 
/usr/share/glib-2.0/schémas libglib2.0-0 
/usr/lib/i386-linux-gnu/gio/modules libglib2.0-0: i386 
/usr/lib/gio/modules libglib2.0-0: i386 
/usr/share/glib-2.0/schemas libglibib2.0- 0: i386 
 
 Izx @ myprecise: ~ $ ls /usr/lib/x86_64-linux-gnu/gio/modules
giomodule.cache libgiognutls.so libgvfsdbus.so 
 libdconfsettings.so libgiolibproxy.so 
 libgiognomeproxy.so libgioremote-volume-monitor.so 
 
 izx @ myprecise: ~ $ cat/usr/lib/x86_64-linux- gnu/gio/modules/giomodule.cache 
 libgiognutls.so: gio-tls-backend 
 libgioremote-volume-monitor.so: gio-native-volume-monitor, gio-volume-monitor 
 libgvfsdbus.so: gio-vfs, gio-volume-monitor 
 libgiolibproxy.so: gio-proxy-resolver 
 libdconfsettings.so: gsettings-backend 
 libgiognom eproxy.so: gio-proxy-resolver 
3
ish

J'ai eu exactement les mêmes problèmes.

J'ai enlevé la ligne

/usr/lib/gio/modules libglib2.0-0

de /var/lib/dpkg/triggers/File

Bien que je sois un peu novice, je ne suis pas sûr que ce fût une bonne idée ou non, mais au moins cela a effacé l'erreur pour que je puisse continuer.

1
cjb

J'ai eu le même problème et la méthode de l'utilisateur user76204 a fonctionné pour moi, mais au lieu de simplement supprimer /usr/lib/gio/modules libglib2.0-0 du fichier /var/lib/dpkg/triggers/File, j'ai dû supprimer tous les 3:

/usr/lib/x86_64-linux-gnu/gio/modules libglib2.0-0                                         
/usr/lib/gio/modules libglib2.0-0                                                          
/usr/share/glib-2.0/schemas libglib2.0-0           

Je ne sais pas si cela posera problème à l'avenir, mais j'ai réussi à passer la mise à niveau pour l'instant.

0
user242858