在解压发行版升级到 14.10 的过程中,我在终端中看到一个错误,提示请执行以下操作来修复:
gdk-pixbuf-query-loaders > /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders.cache
但是,每次我尝试使用sudo
front 时都会收到权限被拒绝的消息。运行时sudo apt-get update
我注意到
The following packages have been kept back:
libgbm1 xorg
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
我如何让它们升级?
答案1
这很简单,这是你的误用sudo
。命令中的重定向
sudo gdk-pixbuf-query-loaders > /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders.cache
由 shell 制定,并且发生在之前该sudo
命令以超级用户权限执行。因此,当尝试覆盖内容时,shell 会告诉您权限被拒绝,/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders.cache
因为这是对于您,在 xyr 非特权 shell 中执行重定向的非特权用户。
执行消息给出的修复的正确方法是:
- 在超级用户 shell 中执行此操作。
引用重定向并将其传递给辅助特权进程 shell:
sudo sh -c 'gdk-pixbuf-query-loaders > /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders.cache'
无论如何,据报道,导致此问题的根本原因是 gdk-pixbuf 软件包的“维护脚本”中存在错误,导致其在升级过程中删除缓存文件。此错误在多个 Ubuntu 版本中一直存在。