一个80后
程序员的笔记

解决 Ubuntu apt-get install 错误:未满足的依赖关系

1. 问题原因

  • 安装的软件依赖于某一软件的旧版本,但是系统中已经安装了所依赖软件的新版本
  • 要装A,依赖于B,但是已经安装的C也依赖于B,且AC依赖的B版本不一致

2. 更新软件源

apt-get update
apt-get -f install # 即 --fix-broken,会针对当前不满足的依赖关系,下载正确版本的依赖库
apt-get install [YOUR_PACKAGE_NAME]

3. 使用 aptitude

apt show aptitude # 或 apt-cache show aptitude

Package: aptitude
Version: 0.8.10-6ubuntu1
Priority: optional
Section: admin
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Aptitude Development Team <aptitude-devel@lists.alioth.debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 4,414 kB
Depends: aptitude-common (= 0.8.10-6ubuntu1), libapt-pkg5.0 (>= 1.1), libboost-filesystem1.65.1, libboost-iostreams1.65.1, libboost-system1.65.1, libc6 (>= 2.14), libcwidget3v5, libgcc1 (>= 1:3.0), libncursesw5 (>= 6), libsigc++-2.0-0v5 (>= 2.8.0), libsqlite3-0 (>= 3.6.5), libstdc++6 (>= 5.2), libtinfo5 (>= 6), libxapian30
Recommends: libparse-debianchangelog-perl, sensible-utils
Suggests: aptitude-doc-en | aptitude-doc, apt-xapian-index, debtags, tasksel
Homepage: https://aptitude.alioth.debian.org/
Supported: 5y
Download-Size: 1,269 kB
APT-Manual-Installed: yes
APT-Sources: http://cn.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
Description: 基于终端的软件包管理器
 aptitude 是一个功能丰富的包管理器,包括:使用类似 mutt 的语法灵活地 检索软件包,类似 dselect
 的持续用户操作,获取并显示大多数软件包的 Debian changelog 的功能,一个类似 apt-get 的命令行模式。
 .
 aptitude 还是个 Y2K 兼容,轻便,自清洁以及友好的程序

apt install aptitude

运行后,不接受未安装方案,选择降级方案

aptitude install [YOUR_PACKAGE_NAME]

4. apt 与 apt-get 之间的区别

apt命令的引入就是为了解决命令过于分散的问题,它包括了apt-get命令出现以来使用最广泛的功能选项,以及apt-cacheapt-config命令中很少用到的功能。

简单来说就是:apt = apt-getapt-cacheapt-config最常用命令选项的集合

apt list --insalled
apt list --upgradable
apt search htop
apt show htop

可以使用apt替换部分apt-get命令

apt 命令取代的命令命令的功能
apt installapt-get install安装软件包
apt removeapt-get remove移除软件包
apt purgeapt-get purge移除软件包及配置文件
apt updateapt-get update刷新数据库索引
apt upgradeapt-get upgrade升级所有可升级的软件包
apt autoremoveapt-get autoremove自动删除不需要的包
apt full-upgradeapt-get dist-upgrade升级软件包时自动处理依赖关系
apt searchapt-cache search搜索软件包
apt showapt-cache show显示软件包详情

另外还有一些apt自己的命令

新的 apt 命令命令的功能
apt list根据条件列出软件包(已安装、可升级等)
apt edit-sources编辑源列表
  • apt list --installed
  • apt list --upgradeable
  • apt list --all-versions
赞(24) 打赏
未经允许不得转载:笨笨天地 » 解决 Ubuntu apt-get install 错误:未满足的依赖关系
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏