如何使用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 的环境中,那么了解这些工具的工作知识是必不可少的。