Aptitude-Debian GNU/Linux软件包管理工具

时间:2020-03-05 15:25:54  来源:igfitidea点击:

对于使用Debian Linux或者Ubuntu及其衍生版本(例如Linux Mint)的用户,一定会了解Advanced Packaging Tool(APT)系统。
从名称可以猜出,apt被用作软件包管理工具。
最流行的命令可能是apt-get命令。
通常,至少使用apt-get来安装或者删除软件包。

例如,使用apt-get安装mysql-server软件包的命令将类似于以下sudo apt-get install mysql-server。

Apt以命令行形式运行。
对于那些更喜欢使用界面而不是apt系统的用户,可以使用aptitude。
Aptitude在控制台模式或者终端中运行。
对于图形用户界面(GUI)版本,有一个名为Synaptic的类似工具。
我们将向我们展示有关Aptitude的信息。

安装

通常,默认情况下会安装aptitude。
如果不是,则可以使用apt-get命令安装它。

首先,更新索引包文件

sudo apt-get update

然后安装aptitude

sudo apt-get install aptitude

使用Aptitude

我们可以在CLI模式或者Interface模式下运行aptitude。
在不带参数的情况下运行它将在界面模式下显示。
Aptitude需要root特权,因此我们可以通过在控制台中键入sudo aptitude来运行aptitude。

要访问菜单,可以按Ctrl-T。
然后,我们可以使用键盘上的箭头按钮在菜单之间移动。

安装软件包

要安装软件包,我们可以先浏览软件包。
找到软件包后,选择它,然后按+(加号)按钮。
按g按钮预览打包操作的摘要。
要再次提交安装,请再次按g按钮。

我们可能会在包名称的左侧看到包的状态。
以下是软件包状态的列表:

i:已安装的软件包
c:未安装软件包,但配置仍保留在系统上
p:从系统中清除
v:虚拟包
B:破损包
u:解压缩的文件,但尚未配置的文件
C:半配置配置失败,需要修复
H:半安装的移除失败,需要修复

在CLI模式下,我们可以使用install参数安装新软件包。
假设我们要安装GIMP,那么命令将类似于:

sudo aptitude install gimp

删除软件包

要删除软件包,只需选择一个软件包,然后按(减号)按钮。
按g按钮查看活动摘要。
再次按g按钮以提交删除软件包。

在CLI模式下,可以使用remove参数删除软件包。
假设我们要删除gedit应用程序,那么命令将类似于:

sudo aptitude remove gedit

更新包索引

要更新软件包索引,只需按u 按钮。

或者从控制台输入sudo aptitude update

升级包

要升级软件包,请按U按钮。
它将标记所有可升级的软件包。
然后按g按钮查看软件包操作摘要。
再次按g按钮以提交升级过程。

在CLI模式下,有2种不同的方式来升级软件包。
这里有:

安全升级

安全升级意味着aptitude会将安装的软件包升级到最新版本。
除非不再使用已安装的软件包,否则不会删除它们。
如果我们在没有提供软件包名称的情况下运行安全升级,则aptitude将升级每个可以升级的软件包。

我们可以使用

sudo aptitude safe-upgrade

全面升级

完全升级与安全升级类似。
区别在于,完全升级不如安全升级保守。
这可能会导致我们执行不必要的操作。
但是,完全升级可以执行安全升级不能执行的升级。
在apt-get工具中,这称为dist-upgrade参数。

这是语法

sudo aptitude full-upgrade

为什么要使用Aptitude

Apt和Aptitude依赖于称为dpkg的同一系统。
与基于RedHat的Linux上的RPM类似。
但是Apt和Aptitude之间有一些区别。
以下是一些区别:

  • Aptitude执行apt-cache和apt标记的功能。不只是贴切
  • 无论我们在何处删除软件包,Aptitude都会删除所有未使用的依赖项。
  • Aptitude具有解析器功能。当安装,删除或者升级过程引起冲突时,这将为我们提供建议。
  • Aptitude会跟踪过时的软件并将其列出在“过时的和本地创建的软件包”下
  • Aptitude具有下载参数,可将软件包下载到.deb文件中