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

在本指南中,我们将讨论使用apt-get和apt-cache管理软件包的基础知识。 apt包装工具提供了一个用户友好的界面来管理包及其依赖关系。需要此工具的工作知识

什么是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”命令后指定软件包名称以卸载软件包及其依赖项。

Common 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的环境中花时间,那么掌握这些工具的工作知识至关重要。

作者:Justin Ellingwood