请尝试不指明软件包的名字来运行“apt --fix-broken install”


开发环境

Deepin 20.1

问题描述

因为其他安装包问题, 导致apt --fix-broken install也无法修复安装

itaken@itaken-home:~$ sudo apt install docker-compose
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
 docker-compose : 依赖: python3-cached-property (>= 1.2.0) 但是它将不会被安装
                  依赖: python3-docker (>= 3.2.1) 但是它将不会被安装
                  依赖: python3-dockerpty (>= 0.4.1) 但是它将不会被安装
                  依赖: python3-docopt (>= 0.6.1) 但是它将不会被安装
                  依赖: python3-jsonschema 但是它将不会被安装
                  依赖: python3-texttable (>= 0.9.0) 但是它将不会被安装
                  依赖: python3-websocket (>= 0.32.0) 但是它将不会被安装
                  依赖: python3-yaml (>= 3.10) 但是它将不会被安装
                  推荐: docker.io (>= 1.9.0) 但是它将不会被安装
 freerdp2-x11 : 依赖: libfreerdp-client2-2 (>= 2.0.0~git20190204.1.2693389a+dfsg1) 但是它将不会被安装
                依赖: libfreerdp2-2 (>= 2.0.0~git20181120.1.e21b72c95+dfsg1) 但是它将不会被安装
                依赖: libwinpr2-2 (>= 2.0.0~git20170725.1.1648deb+dfsg1) 但是它将不会被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。
itaken@itaken-home:~$ sudo apt --fix-broken install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
正在修复依赖关系... 完成
将会同时安装下列软件:
  libfreerdp-client2-2 libfreerdp2-2 libwinpr2-2
下列【新】软件包将被安装:
  libfreerdp-client2-2 libfreerdp2-2 libwinpr2-2
升级了 0 个软件包,新安装了 3 个软件包,要卸载 0 个软件包,有 1 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
需要下载 0 B/2,279 kB 的归档。
解压缩后会消耗 4,736 kB 的额外空间。
您希望继续执行吗? [Y/n] y
(正在读取数据库 ... 系统当前共安装有 454386 个文件和目录。)
准备解压 .../libwinpr2-2_2.0.0.4-1+dde_amd64.deb  ...
正在解压 libwinpr2-2:amd64 (2.0.0.4-1+dde) ...
dpkg: 处理归档 /var/cache/apt/archives/libwinpr2-2_2.0.0.4-1+dde_amd64.deb (--unpack)时出错:
 正试图覆盖 /usr/lib/x86_64-linux-gnu/libwinpr2.so.2.0.0,它同时被包含于软件包 remmina 1.4.8+dfsg-2
dpkg-deb: 错误: 粘贴 子进程被信号(断开的管道) 终止了
准备解压 .../libfreerdp2-2_2.0.0.4-1+dde_amd64.deb  ...
正在解压 libfreerdp2-2:amd64 (2.0.0.4-1+dde) ...
dpkg: 处理归档 /var/cache/apt/archives/libfreerdp2-2_2.0.0.4-1+dde_amd64.deb (--unpack)时出错:
 正试图覆盖 /usr/lib/x86_64-linux-gnu/libfreerdp2.so.2.0.0,它同时被包含于软件包 remmina 1.4.8+dfsg-2
dpkg-deb: 错误: 粘贴 子进程被信号(断开的管道) 终止了
准备解压 .../libfreerdp-client2-2_2.0.0.4-1+dde_amd64.deb  ...
正在解压 libfreerdp-client2-2:amd64 (2.0.0.4-1+dde) ...
dpkg: 处理归档 /var/cache/apt/archives/libfreerdp-client2-2_2.0.0.4-1+dde_amd64.deb (--unpack)时出错:
 正试图覆盖 /usr/lib/x86_64-linux-gnu/libfreerdp-client2.so.2.0.0,它同时被包含于软件包 remmina 1.4.8+dfsg-2
dpkg-deb: 错误: 粘贴 子进程被信号(断开的管道) 终止了
在处理时有错误发生:
 /var/cache/apt/archives/libwinpr2-2_2.0.0.4-1+dde_amd64.deb
 /var/cache/apt/archives/libfreerdp2-2_2.0.0.4-1+dde_amd64.deb
 /var/cache/apt/archives/libfreerdp-client2-2_2.0.0.4-1+dde_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
itaken@itaken-home:~$ sudo apt purge libfreerdp-client2-2
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
软件包 libfreerdp-client2-2 未安装,所以不会被卸载
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
 freerdp2-x11 : 依赖: libfreerdp-client2-2 (>= 2.0.0~git20190204.1.2693389a+dfsg1) 但是它将不会被安装
                依赖: libfreerdp2-2 (>= 2.0.0~git20181120.1.e21b72c95+dfsg1) 但是它将不会被安装
                依赖: libwinpr2-2 (>= 2.0.0~git20170725.1.1648deb+dfsg1) 但是它将不会被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。

解决方案

通过dpkg --configure -a查看什么软件导致的异常,卸载该软件即可.

itaken@itaken-home:~$ sudo dpkg --configure -a
dpkg: 依赖关系问题使得 freerdp2-x11 的配置工作不能继续:
 freerdp2-x11 依赖于 libfreerdp-client2-2 (>= 2.0.0~git20190204.1.2693389a+dfsg1);然而:
  未安装软件包 libfreerdp-client2-2:amd64。
 freerdp2-x11 依赖于 libfreerdp2-2 (>= 2.0.0~git20181120.1.e21b72c95+dfsg1);然而:
  未安装软件包 libfreerdp2-2:amd64。
 freerdp2-x11 依赖于 libwinpr2-2 (>= 2.0.0~git20170725.1.1648deb+dfsg1);然而:
  未安装软件包 libwinpr2-2:amd64。

dpkg: 处理软件包 freerdp2-x11 (--configure)时出错:
 依赖关系问题 - 仍未被配置
正在处理用于 man-db (2.8.5-2) 的触发器 ...
正在处理用于 libc-bin (2.28.8.1-1+dde) 的触发器 ...
在处理时有错误发生:
 freerdp2-x11
itaken@itaken-home:~$ sudo apt purge freerdp2-x11
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包将被【卸载】:
  freerdp2-x11*
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 1 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
解压缩后将会空出 1,194 kB 的空间。
您希望继续执行吗? [Y/n]
(正在读取数据库 ... 系统当前共安装有 454385 个文件和目录。)
正在卸载 freerdp2-x11 (2.0.0.4-1+dde) ...
正在处理用于 man-db (2.8.5-2) 的触发器 ...
itaken@itaken-home:~$ sudo apt install docker-compose
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会同时安装下列软件:
  golang-docker-credential-helpers libintl-perl libmodule-find-perl libmodule-scandeps-perl
  libproc-processtable-perl libsort-naturally-perl needrestart python3-cached-property python3-docker
  python3-dockerpty python3-dockerpycreds python3-docopt python3-jsonschema python3-texttable
  python3-websocket python3-yaml
建议安装:
  python-jsonschema-doc
推荐安装:
  docker.io libintl-xs-perl
下列【新】软件包将被安装:
  docker-compose golang-docker-credential-helpers libintl-perl libmodule-find-perl
  libmodule-scandeps-perl libproc-processtable-perl libsort-naturally-perl needrestart
  python3-cached-property python3-docker python3-dockerpty python3-dockerpycreds python3-docopt
  python3-jsonschema python3-texttable python3-websocket python3-yaml
升级了 0 个软件包,新安装了 17 个软件包,要卸载 0 个软件包,有 1 个软件包未被升级。
需要下载 1,904 kB 的归档。
解压缩后会消耗 9,010 kB 的额外空间。
您希望继续执行吗? [Y/n]
...

参考文档


Author: Itaken
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint polocy. If reproduced, please indicate source Itaken !
  TOC目录