Ubuntu系统dpkg中断后修复失败、缓存锁占用及字体配置弹窗无法确认的问题求助
大家好,我在Ubuntu系统上遇到了一连串dpkg相关的问题,折腾了好一阵子,想跟大家说说我的情况,也分享下最终解决的过程:
问题起因
我跟着YouTube上的《25 things you must do after installing Ubuntu 22.04 LTS》教程,执行sudo apt install ubuntu-restricted-extras安装多媒体编解码器的时候,过程中出了状况,导致dpgg中断了。
尝试过的操作及遇到的报错
一开始系统反复提示:
E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.
我试了好几种操作,但都没解决问题:
- 执行
sudo apt upgrade,直接弹出上面的报错 - 执行
sudo apt-get install -f,同样触发上述报错 - 想查看apt相关进程,手滑输成
s aux | grep -i apt,系统提示s: command not found,重复几次都犯了同样的错 - 后来又把
sudo打成了udo,执行udo dpkg --configure -a时,系统提示可以安装udo,但我执行sudo apt install udo还是被dpkg的报错拦住 - 终于输对了查看进程的命令
ps aux | grep -i apt,得到以下输出:
root 1062 0.0 0.0 137172 10068 ? Ssl 19:48 0:00 /usr/sbin/thermald --systemd --dbus-enable --adaptive robterri 19313 0.0 0.0 17864 2376 pts/0 S+ 21:00 0:00 grep --color=auto -i apt
尝试杀掉19313进程:sudo kill -9 19313,结果提示kill: (19313): No such process
- 之后再执行
sudo apt upgrade,又遇到新问题:
Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 20726 (apt)
一直卡到150秒都没结束
最终解决
后来我才发现,问题卡在了ttf-mscorefonts-installer的EULA配置弹窗上——我一直找不到怎么激活弹窗里的“OK”按钮,导致dpkg始终没法继续完成配置。参考社区的建议解决了弹窗确认的问题后,再执行系统提示的sudo dpkg --configure -a等命令就一切正常了。
特别感谢Archisman和Ubuntu社区的朋友们耐心帮忙,也抱歉一开始没说清楚系统版本和电脑细节(当时缺觉脑子不太清楚😅)。
备注:内容来源于stack exchange,提问作者user1669092

