ソフトウェアセンターでパッケージをインストールしようとしたとき、または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
以前はエラーが発生しました:
dpkg: error: configuration error: /etc/dpkg/dpkg.cfg.d/multiarch:1: unknown option 'foreign-architecture'
しかし、私はそれを削除しました:Sudo rm /etc/dpkg/dpkg.cfg.d/multiarch
、私は この投稿 がこの問題を説明していると思います-私はそれに従いましたが、最後のSudo apt-get install dpkg=1.16.0.3ubuntu5
は私のために機能しませんでした-そのようなパッケージはできませんでした見つけられた。おそらく、ubuntu 12.04を使用しているからでしょう。
更新:回答で示唆されているように、正しいバージョンのdpkg 1.16.1.2ubuntu7をインストールしようとすると、次のエラーが表示されます。
$ 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).
ところで、これも役に立つかもしれません:
$ 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
実際に同じことを言っています。
更新:(...)モジュールの内容:
/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
更新:/ var/lib/dpkg/triggers/File
$ 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
そのようなパッケージは見つかりませんでした。おそらく、ubuntu 12.04を使用しているからでしょう。
この時点で、Ubuntu 12.04に対応するバージョンは1.16.1.2ubuntu7
である必要があります。
ia32-libs : Depends: ia32-libs-multiarch but it is not installable
これは、ia32-libs-multiarch
ページへの リンク で、ここで.debファイルをダウンロードできます。 dpkg -i filename.deb
を使用して手動でインストールし、成功したらapt-getを再試行してください。そうでない場合は、dpkgエラーで更新してください。
Ia32をテストx86_64システムにインストールし、トリガーファイルの内容とgiomodule.cacheの内容について次の情報を取得しました。あなたの違いを確認してください:
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 libgiognom eproxy.so:gio-proxy-resolver
私はまったく同じ問題を抱えていました。
行を削除しました
/usr/lib/gio/modules libglib2.0-0
/var/lib/dpkg/triggers/File
から
少し初心者ですが、それが良いアイデアかどうかはわかりませんが、少なくともエラーを取り除いて続行できました。
私は同じ問題を抱えており、ユーザーuser76204の方法は私のために働いたが、ファイルから/usr/lib/gio/modules libglib2.0-0
を削除する代わりに/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
これが将来問題を引き起こすかどうかはわかりませんが、今のところアップグレードに合格しました