Aptitude-Debian GNU/Linux软件包管理工具
对于使用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文件中