升级一时爽,一直升级一直爽
1. 问题原因
- 安装的软件依赖于某一软件的旧版本,但是系统中已经安装了所依赖软件的新版本
- 要装
A
,依赖于B
,但是已经安装的C
也依赖于B
,且A
和C
依赖的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-cache
和apt-config
命令中很少用到的功能。
简单来说就是:
apt
=apt-get
、apt-cache
、apt-config
中最常用命令选项的集合
> apt list --insalled
> apt list --upgradable
> apt search htop
> apt show htop
可以使用apt
替换部分apt-get
命令:
apt 命令 | 取代的命令 | 命令的功能 |
---|---|---|
apt install |
apt-get install |
安装软件包 |
apt remove |
apt-get remove |
移除软件包 |
apt purge |
apt-get purge |
移除软件包及配置文件 |
apt update |
apt-get update |
刷新数据库索引 |
apt upgrade |
apt-get upgrade |
升级所有可升级的软件包 |
apt autoremove |
apt-get autoremove |
自动删除不需要的包 |
apt full-upgrade |
apt-get dist-upgrade |
升级软件包时自动处理依赖关系 |
apt search |
apt-cache search |
搜索软件包 |
apt show |
apt-cache show |
显示软件包详情 |
另外还有一些apt
自己的命令:
新的 apt 命令 | 命令的功能 |
---|---|
apt list |
根据条件列出软件包(已安装、可升级等) |
apt edit-sources |
编辑源列表 |
apt list --installed
apt list --upgradeable
apt list --all-versions