如何使用Apt-Get和Apt-Cache在Ubuntu和Debian中管理软件包

来自菜鸟教程
跳转至:导航、​搜索

什么是 Apt-Get?

Apt 是 dpkg 打包系统的命令行前端,是许多发行版从命令行管理软件的首选方式。 它是 Debian 和基于 Debian 的 Linux 发行版(如 Ubuntu)中的主要包管理系统。

虽然名为“dpkg”的工具构成了底层打包层,但 apt-get 和 apt-cache 提供了用户友好的界面并实现了依赖关系处理。 这使用户可以轻松高效地管理大量软件。

在本指南中,我们将讨论 apt-get 和 apt-cache 的基本用法以及它们如何管理您的软件。 我们将在 Ubuntu 12.04 云服务器上进行练习,但相同的步骤和技术应该适用于任何基于 Debian 的发行版。

如何使用 Apt-Get 更新包数据库

Apt-get 在已知可用软件的数据库上运行。 它通过引用此数据库来执行安装、包搜索和许多其他操作。

由于这个事实,在使用 apt-get 开始任何打包操作之前,我们需要确保我们的本地数据库副本是最新的。

使用以下命令更新数据库。 apt-get 需要管理权限才能进行大多数操作:

sudo apt-get update

您将看到我们从中检索信息的服务器列表。 在此之后,您的数据库应该是最新的。

如何使用 Apt-Get 升级已安装的软件包

我们可以通过发出以下命令来升级系统上的软件包:

sudo apt-get upgrade

要进行更完整的升级,您可以使用“dist-upgrade”参数,它会尝试对新软件包进行智能依赖解析,并会以牺牲不太重要的程序为代价来升级基本程序:

sudo apt-get dist-upgrade

如何使用 Apt-Get 安装新软件包

如果您知道要安装的软件包的名称,则可以使用以下语法安装它:

sudo apt-get install package1 package2 package3 ...

您可以看到可以一次安装多个软件包,这对于一步获取项目所需的所有软件很有用。

重要的是要了解 apt-get 不仅安装请求的软件,而且安装或运行它所需的任何软件。

我们可以通过键入以下命令来安装完整的“vim”文本编辑器包:

sudo apt-get install vim

如何使用 Apt-Get 删除包

要从系统中删除软件包,您可以发出以下命令:

sudo apt-get remove package_name

此命令删除包,但保留配置文件,以防您以后再次安装包。 这样,即使未安装程序,您的设置也将保持不变。

如果这不是想要的结果,并且您想清除配置文件和程序,请使用以下语法:

sudo apt-get purge package_name

这将卸载包并删除与包关联的所有配置文件。

要删除自动安装以支持另一个程序的任何不再需要的软件包,请键入以下命令:

sudo apt-get autoremove

您还可以在“autoremove”命令后指定包名来卸载包及其依赖项。

常见的 Apt-Get 选项标志

有许多不同的选项可以通过使用标志来指定。 我们将介绍一些常见的。

要对程序进行“试运行”以了解操作将执行的操作,您可以将“-s”标志传递给“模拟”:

sudo apt-get install -s htop
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  strace ltrace
The following NEW packages will be installed:
  htop
0 upgraded, 1 newly installed, 0 to remove and 118 not upgraded.
Inst htop (1.0.1-1 Ubuntu:12.04/precise [amd64])
Conf htop (1.0.1-1 Ubuntu:12.04/precise [amd64])

代替实际操作,您可以看到“Inst”和“Conf”部分,指定如果删除“-s”,将安装和配置包的位置。

如果您不想被提示确认您的选择,您还可以传递“-y”标志以自动假设问题为“是”。

sudo apt-get remove -y htop

如果您想下载一个包,但不安装它,您可以发出以下命令:

sudo apt-get install -d packagename

这些文件将位于“/var/cache/apt/archives”中。

如果您想抑制输出,可以将“-qq”标志传递给命令:

sudo apt-get remove -qq packagename

如何使用 Apt-Cache 查找包

apt 打包工具实际上是一套相关的、免费的工具,用于管理您的系统软件。

“apt-get”用于升级、安装和删除软件包,“apt-cache”用于查询软件包数据库以获取软件包信息。

您可以使用以下命令搜索适合您需求的包。 请注意,apt-cache 通常不需要管理权限:

apt-cache search what_you_are_looking_for

例如,如果我们想找到“htop”,它是“top”系统监视器的改进版本,我们可以输入以下内容:

apt-cache search htop
aha - ANSI color to HTML converter
htop - interactive processes viewer

我们也可以搜索更通用的术语。 在本例中,我们将寻找 mp3 转换软件:

apt-cache search mp3 convert
abcde - A Better CD Encoder
cue2toc - converts CUE files to cdrdao's TOC format
dir2ogg - audio file converter into ogg-vorbis format
easytag - viewing, editing and writing ID3 tags
hpodder - Tool to scan and download podcasts (podcatcher)
id3v2 - A command line id3v2 tag editor
kid3 - KDE MP3 ID3 tag editor
kid3-qt - Audio tag editor
. . .

如何使用 Apt-Cache 查看包信息

要查看有关包的信息(包括扩展描述),请使用以下语法:

apt-cache show package_name

这还将提供下载的大小和包所需的依赖项。

要查看一个包是否已安装并检查它属于哪个存储库,我们可以发出:

apt-cache policy package_name

结论

您现在应该足够了解 apt-get 和 apt-cache 来管理服务器上的大部分软件。

虽然有时需要超越这些工具和存储库中可用的软件,但大多数软件操作都可以通过这些工具进行管理。

如果您打算花时间在基于 Debian 的环境中,那么了解这些工具的工作知识是必不可少的。

贾斯汀·艾林伍德