如何在Ubuntu和Debian中使用Apt-Get和Apt-Cache来管理软件包
介绍
Apt是dpkg包装系统的命令行前端,也是许多发行版中首选的命令行软件管理方式。在Debian及类似Ubuntu的基于Debian的Linux发行版中,Apt是主要的软件包管理系统。
尽管有一个名为“dpkg”的工具形成了底层的软件打包层,apt和apt-cache提供了用户友好的界面,并实现了依赖处理。这使得用户能够轻松高效地管理大量的软件。
在本指南中,我们将讨论apt和apt-cache的基本用法以及它们如何管理您的软件。我们将在Ubuntu 22.04云服务器上进行实践,但是相同的步骤和技巧应该适用于任何其他基于Ubuntu或Debian的发行版。
如何使用apt更新软件包数据库
Apt运行在一个已知可用软件的数据库上。通过引用该数据库,它进行安装、软件包搜索和许多其他操作。
因此,在使用apt进行任何打包操作之前,我们需要确保我们本地数据库的副本是最新的。
使用apt update更新本地数据库。大多数操作需要apt具有管理员权限。
- sudo apt update
您将会看到一个我们正在检索信息的服务器列表。在此之后,您的数据库应该是最新的。
如何使用 Apt 升级已安装的软件包。
你可以使用 apt upgrade 命令来升级系统上的软件包。系统会提示你确认升级,并重新启动所有已更新的系统服务。
- sudo apt upgrade
如何使用Apt安装新的软件包
如果你知道需要安装的软件包的名称,你可以使用apt install来进行安装。
- sudo apt install package1 package2 …
你可以看到一次安装多个软件包是可能的,这对于一步获取项目所需的所有软件非常有用。
Apt 不仅安装请求的软件,还会安装或运行所需的其他软件。
你可以通过键入指令安装一个叫做sl的程序。
- sudo apt install sl
之后,你将能够在命令行上运行 sl。
如何使用apt删除一个包
从你的系统中移除一个软件包,运行 apt remove 命令。
- sudo apt remove package_name
这个命令会移除软件包,但会保留任何配置文件,以便以后重新安装软件包时使用。这样,即使程序没有安装,您的设置也会保持完好。
如果您需要清除配置文件和程序,使用apt-purge。
- sudo apt purge package_name
这将卸载该软件包并删除与该软件包相关的所有配置文件。
要删除不再需要的自动安装的支持其他程序的软件包,输入以下命令:
- sudo apt autoremove
您还可以在autoremove命令后指定软件包名称,以卸载该软件包及其依赖项。
常见的apt选项标记
使用标志可以指定许多其他选项。我们将介绍一些常见的选项。
为了对一个操作的结果有一个大致的了解,可以使用“模拟”选项-s来进行一个“试运行”。
- sudo apt install -s htop
Reading package lists… Done Building dependency tree… Done Reading state information… Done Suggested packages: lm-sensors The following NEW packages will be installed: htop 0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. Inst htop (3.0.5-7build2 Ubuntu:22.04/jammy [amd64]) Conf htop (3.0.5-7build2 Ubuntu:22.04/jammy [amd64])
取而代之,您可以查看一个“Inst”和“Conf”部分,指定如果删除“-s”,软件包将被安装和配置的位置。
如果你不想被询问确认你的选择,你还可以使用”-y”标志来自动假设“是”回答问题。
- sudo apt remove -y htop
如果您想下载一个软件包而不安装它,您可以输入以下命令:
- sudo apt install -d packagename
文件将会被保留在/var/cache/apt/archives目录中。
如果你想要抑制输出,可以在命令中添加“-qq”标志。
- sudo apt remove -qq packagename
如何使用 Apt-Cache 寻找软件包。
apt包管理工具实际上是一套相关的、互补的工具,用于管理您的系统软件。
虽然apt用于升级、安装和移除软件包,但apt-cache用于查询软件包数据库以获取软件包信息。
您可以使用apt-cache search来搜索适合您需求的软件包。请注意,apt-cache通常不需要管理员权限。
- apt-cache search what_you_are_looking_for
例如,要找到htop,一个改进版的系统监视器top,可以使用以下方法:
- apt-cache search htop
htop – interactive processes viewer aha – ANSI color to HTML converter bashtop – Resource monitor that shows usage and stats bpytop – Resource monitor that shows usage and stats btop – Modern and colorful command line resource monitor that shows usage and stats libauthen-oath-perl – Perl module for OATH One Time Passwords pftools – build and search protein and DNA generalized profiles
您也可以搜索更通用的术语。在此示例中,我们将搜索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 – GTK+ editor for audio file tags ebook2cw – convert ebooks to Morse MP3s/OGGs ebook2cwgui – GUI for ebook2cw ffcvt – ffmpeg convert wrapper tool . . .
如何使用Apt-Cache查看软件包信息
要查看有关软件包的信息,包括扩展描述,请使用以下语法:
- apt-cache show package_name
这还将提供下载大小以及包所需的依赖项。
要查看一个软件包是否已安装并检查它属于哪个软件源,你可以使用apt-cache policy命令。
- apt-cache policy package_name
结论
你现在应该已经对apt-get和apt-cache有足够的了解,可以管理服务器上的大部分软件了。
虽然有时候需要超出这些工具和软件库里所提供的范围,但大多数软件操作仍然可以通过这些工具来管理。
接下来,你可以详细阅读有关Ubuntu和Debian包管理的内容。