我一直在分阶段升级我的操作系统,以达到最新的 LTS 版本。昨天,我按照此处帖子中的建议,在运行“sudo apt-get update; sudo apt-get upgrade; sudo apt-get dist-upgrade”后,运行了“do-release-upgrade”。升级后,出现了许多损坏的依赖关系。
现在,突触,apt-get, 和软件属性-gtk并且许多其他重要程序将无法运行,并产生此错误:
synaptic:符号查找错误:/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0:未定义符号:hb_font_funcs_set_variation_glyph_func
apt --fix-broken install
或等命令sudo apt-get install -f
以及其他常用建议均未解决问题。还有其他策略可以尝试吗?
$ which synaptic
/usr/sbin/synaptic
$ dpkg -S $(which synaptic)
synaptic: /usr/bin/synaptic
$ ldd $(which synaptic) | grep local
# produces no result.
$ dpkg -S /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0
libpangoft2-1.0-0:amd64: /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0
$ apt-cache policy synaptic libpangoft2-1.0-0
synaptic:
Installed: 0.83
Candidate: 0.84.3ubuntu1
Version table:
0.84.3ubuntu1 500
500 http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
*** 0.83 100
100 /var/lib/dpkg/status
libpangoft2-1.0-0:
Installed: 1.40.14-1ubuntu0.1
Candidate: 1.40.14-1ubuntu0.1
Version table:
*** 1.40.14-1ubuntu0.1 500
500 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages
100 /var/lib/dpkg/status
1.40.14-1 500
500 http://us.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
spowell@raven:/etc/apt$ apt-cache policy synaptic libpangoft2-1.0-0
synaptic:
Installed: 0.83
Candidate: 0.84.3ubuntu1
Version table:
0.84.3ubuntu1 500
500 http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
*** 0.83 100
100 /var/lib/dpkg/status
libpangoft2-1.0-0:
Installed: 1.40.14-1ubuntu0.1
Candidate: 1.40.14-1ubuntu0.1
Version table:
*** 1.40.14-1ubuntu0.1 500
500 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages
100 /var/lib/dpkg/status
1.40.14-1 500
500 http://us.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
The output of 'dpkg -l | grep ^ii -v' is available at pastebin https://pastebin.com/HhJu3mZu
The output of 'sudo aptitude safe-upgrade' is:
> The following packages will be REMOVED:
groff-base{u} libgdbm5{u} libpipeline1{u} man-db{u}
The following partially installed packages will be configured:
bsdmainutils libbsd0 liblocale-gettext-perl libsmartcols1 libtinfo5 libuuid1
0 packages upgraded, 0 newly installed, 4 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 6,017 kB will be freed.
Do you want to continue? [Y/n/?] Y
dpkg: error: duplicate file trigger interest for filename '/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders' and package 'libgdk-pixbuf2.0-0:i386'
E: Sub-process /usr/bin/dpkg returned an error code (2)
dpkg: error: duplicate file trigger interest for filename '/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders' and package 'libgdk-pixbuf2.0-0:i386'
答案1
该问题的解决分为多个步骤:
安装所有升级,无需删除软件包
sudo aptitude safe-upgrade
删除重复的
/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders
触发器/var/lib/dpkg/triggers/File
要安装所有升级,我建议运行
sudo apt-get update
sudo apt-get dist-upgrade