Por que esse erro do dpkg: nome do pacote ambíguo 'libglib2.0-0'…?

4

Eu tenho alguns erros estranhos ao tentar instalar pacotes com o software center ou mesmo quando tento atualizar pacotes com o 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

Anteriormente, eu tinha erro:

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

mas acabei de removê-lo com: sudo rm /etc/dpkg/dpkg.cfg.d/multiarch , acho que esta postagem descreve esse problema - Eu o segui, mas a última parte sudo apt-get install dpkg=1.16.0.3ubuntu5 não funcionou para mim - nenhum pacote desse tipo pôde ser encontrado. Provavelmente é porque eu estou usando o Ubuntu 12.04.

ATUALIZAÇÃO: adter tentando instalar a versão correta do dpkg 1.16.1.2ubuntu7 como sugerido na resposta, agora recebo os seguintes erros:

$ 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).

A propósito, isso também pode ser útil:

$ 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

que está realmente dizendo a mesma coisa.

UPDATE: conteúdo dos módulos (...):

/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 / Arquivo

$ 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
    
por mkk 09.05.2012 / 09:58

3 respostas

3

  

não foi encontrado nenhum pacote desse tipo. Provavelmente é porque eu estou usando o Ubuntu 12.04.

A versão correspondente para o Ubuntu 12.04, a partir desta data, deve ser 1.16.1.2ubuntu7 .

  

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

Este é um link para a página ia32-libs-multiarch , onde você pode fazer o download o arquivo .deb. Por favor, use dpkg -i filename.deb para instalá-lo manualmente e, se for bem-sucedido, tente o apt-get novamente. Se não, por favor atualize com o erro dpkg.

Instalei o ia32 em um sistema de teste x86_64 e obtive o seguinte para o conteúdo do arquivo de acionadores e o conteúdo do giomodule.cache. Por favor, verifique se o seu é diferente:

izx@myprecise:~$ 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

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
libgiognomeproxy.so: gio-proxy-resolver
    
por ish 09.05.2012 / 10:10
1

Eu tive exatamente os mesmos problemas.

Eu removi a linha

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

de /var/lib/dpkg/triggers/File

Apesar de ser um pouco novato, não sei se foi uma boa ideia ou não, mas pelo menos removi o erro para poder continuar.

    
por cjb 22.08.2012 / 12:49
0

Eu tive o mesmo problema e o método do usuário user76204 funcionou para mim, mas em vez de excluir apenas /usr/lib/gio/modules libglib2.0-0 do arquivo /var/lib/dpkg/triggers/File Eu tive que deletar todos os 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           

Eu não sei se isso vai causar problemas no futuro, mas eu consegui passar a atualização por enquanto

    
por user242858 02.02.2014 / 19:10