我在装有 nVidia 显卡的 PC 上使用 Ubuntu 12.04 和 XFCE 桌面。我遇到了Ubuntu 更新过程中出现分段错误。一个非常不方便的后果是 .png 文件无法再被识别,因此许多程序无法启动(例如 gnome-commander、stardict)。此外,许多图标以及最小/最大/关闭按钮图标都丢失了。我尝试使用 eog 打开 .png,但出现“无法识别的图像文件格式”的错误。我尝试重新安装libgdk-pixbuf2.0-0
,librsvg
但总是出现分段错误。
...
Setting up libgdk-pixbuf2.0-0 (2.26.1-1) ...
Segmentation fault (core dumped)
Setting up libgdk-pixbuf2.0-0:i386 (2.26.1-1) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
运行gdk-pixbuf-query-loaders
也会出现段错误(但不会出现gdk-pixbuf-pixdata
或gdk-pixbuf-csource
):
>gdk-pixbuf-query-loaders --update-cache
Segmentation fault (core dumped)
我尝试登录 gnome 并看到了同样的效果。我尝试下载 libgdk-pixbuf2.0-0 软件包文件 .deb 并从命令行安装,也出现了段错误。有什么关于如何修复它的建议吗?
更新:我仔细检查了所有依赖项的版本精确更新数据库,并且都没有问题。
答案1
经过大量的 Google 和 Bing 搜索,我终于找到了解决方案。我在 x86_64 机器上运行基于 Ubuntu 14.04 LTS 的 BackBox 4.4,但我遇到了同样的问题,xfce 启动并正常工作,但图像、菜单和图标无法加载。所以我的桌面背景是空白的,菜单中的大多数图标都丢失了。然而,我记得在“apt-get upgrade”期间也遇到了同样的错误,如上所述。简而言之,这是我的修复方法:
sudo dpkg-reconfigure libgdk-pixbuf-2.0-0
sudo dpkg-reconfigure libglib-2.0-0
然后注销并登录,瞧!(无需重新启动)。
感谢您为我指明了正确的方向。其他帖子没有涉及这一点。
答案2
自从我昨天发帖以来,我无法对您的其他问题发表评论,但这是我在启动板上的回答:
是的,我找回了我的笔记本电脑!(我公司的一位专家做到了)
我不知道这有什么关系,但他的步骤如下:
- 删除了我之前添加的 ppa (/etc/apt/sources.list.d/webupd8team-gvfs-libmtp-precise.list)
- 重新安装了一些相应的软件包(gvfs、libglib2.0-0)
- 重新配置 libgdk-pixbuf2.0-0
似乎 libglib2.0-0 导致了这个问题。我不知道这对大多数人来说是否没问题,但它至少应该有助于调试 :-)
答案3
去除ppa: sudo rm /etc/apt/sources.list.d/webupd8team-gvfs-libmtp-precise.list
然后:sudo apt-get update
之后使用以下命令强制卸载 libglib 库:
sudo dpkg -P --force-all --force-remove-reinstreq libglib2.0-0
然后您可以从常规 ubuntu ppas 重新安装它:sudo apt-get install libglib2.0-0
最后,您需要降级 glib-networking-common 和 gvfs-common:
sudo apt-get install glib-networking-common=2.32.1-1ubuntu2
sudo apt-get install gvfs-common=1.12.1-0ubuntu1.2ppa8~precise3
库版本应为:
libglib2.0-0:2.32.4-0ubuntu
gvfs-通用:1.12.1-0ubuntu
libgdk-pixbuf2:2.26.1-1
但显然您已经拥有所有正确的库版本,这真的很奇怪......