情景
我在使用Linux deepin的应用商店想要重新安装“酷狗音乐”,可能卸载和安装间隔时间过短,包管理崩掉了,导致酷狗音乐重新安装不了,卡在“安装失败”字样。
我尝试使用如下几种命令来修复apt,但均以失败告终:
sudo dpkg --configure -a
- 重新配置 dpkg 数据库
- 此命令重新配置已解压但不一定安装的包。如果您正在运行安装并且过程被中断,这将特别有用。
sudo apt-get install -f
-f
选项表示 fix-broken。它会修复包管理器中任何损坏的依赖项,例如当下载中断或缓存下载出现问题。
sudo apt autoremove
- 清除未使用的软件包
还有其它几种指定包名的修复方式,但我不知道酷狗的包名。万幸我找到了这篇博客(英文),Sub-process /usr/bin/dpkg returned an error code (1),最终磕磕绊绊的解决了问题。
解决方案
- 打开终端,执行
sudo mv /var/lib/dpkg/info /var/lib/dpkg/info_silent
重命名info为info_silent。 - 执行
sudo mkdir /var/lib/dpkg/info
,创建新info目录。 - 执行
sudo apt-get update
从所配置的源下载包信息 - 执行
sudo apt-get -f install
来修复依赖关系 - 执行
sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info_silent
,将info里的所有文件移动到info_silent。 - 删除info
sudo rm -rf /var/lib/dpkg/info
,注意不要删错了! - 执行
sudo mv /var/lib/dpkg/info_silent /var/lib/dpkg/info
将info_silent重命名为info - 再次更新包信息
sudo apt-get update
- 最后你可以更新所有软件版本
sudo apt-get upgrade
后话
我在弄完后,遇到了deepin应用商店“管理”页面一片空,其它页面显示没有网络的情况,重启解决了问题。