如何在 Linux 中使用 apt 命令管理包

本文通过示例向您展示如何在 Ubuntu、Debain、Linux Mint 或任何其他基于 Debian 或 Ubuntu 的发行版中使用 apt 命令,以便您可以轻松管理软件包。
apt 是一款功能强大的包管理工具,可用于在 Linux 操作系统中搜索、安装、更新、升级和管理包,它会自动管理软件包依赖项,根据需要安装所需的软件,并在不再需要时将其删除。
Linux 中的 apt 命令是什么?
apt(高级打包工具)是一个命令行工具,用于与 Debian 和基于 Debian 的 Linux 发行版(如 Ubuntu)中的 dpkg 打包系统进行轻松交互,它是分布在名为 的包中的工具集合,旨在简化管理软件的过程。apt
dpkg 负责将软件打包成易于安装的软件包,它是 Debian 软件包管理器。事实上,当 apt 使用它时 ,它会调用 dpkg 程序来安装或删除应用程序,同时包括附加功能作为依赖项解析。
换句话说,apt 充当与 dpkg 包装系统交互的用户友好层。
如何在 Linux 中使用 apt 命令
请记住,大多数 apt 命令必须以具有 sudo 特权的用户身份运行 。
获取更新
在使用 进行任何操作之前 apt,我们需要确保包数据库的本地副本是最新的,如果没有这个,系统将不知道是否有更新的软件包可用。
该 apt update 命令下载有关可用软件包的最新信息:

这将下载最新的最新软件包及其元数据——软件包名称、版本号等。
列出可用更新
您可以查看具有准备升级的较新版本的软件包列表。为此,请运行以下命令:

事实上,apt list --upgradeable 是一个提示,总是显示在 apt update 输出的最后。
升级包
运行 apt upgrade 将更新所有具有可用新版本的软件包。请记住,您需要执行 apt updatebefore apt upgrade,以便 apt 知道新版本的软件包可用。

全面系统升级
apt upgrade 和之间的共同区别在于,如果需要升级整个系统 apt full-upgrade,afull-ugrade 将删除已安装的包。
例如,当您想从 Debian 版本 10 升级到 11 时,这很有用。

带命令 full-upgrade 需要特别小心才能安全使用,即使是有经验的用户也没有充分的理由定期运行它们。
安装新包
更新包数据库后,您可以使用该 apt install 命令安装任何包,例如,让我们安装 Nginx Web 服务器:

如果要一次安装多个包,例如 nginxand firewalld,请将它们指定为空格分隔的列表:

删除包
要删除(卸载)已安装的软件包,请使用该 apt remove 命令,例如,要删除名为 的包 nginx,请输入:

您还可以指定多个包,以空格分隔:

我们还可以使用该 apt purge 命令轻松删除包,主要区别在于该 apt remove 命令将卸载给定的软件包,但会保留其配置文件。
而 apt purge 不仅会删除包,还会删除主目录之外的所有配置文件。

此外,您还可以使用以下命令删除所有不需要的包:

该 autoremove 选项用于删除自动安装以满足其他包的依赖项但现在不再需要作为依赖项的包。
搜索包裹
该 apt search 命令允许您在可用包列表中搜索给定的包,例如,要搜索 nginx 包,请输入:

搜索已安装的软件包
该 apt list 命令显示已安装和可供安装的软件包,如果您只想列出当前安装的特定软件包怎么办?只需将--installed 选项传递给 apt list 命令,您可以*在搜索中使用通配符 ( )。
例如,要查找系统上当前安装的所有包,其中包含 nginx 其名称中的运行:

获取有关套餐的详细信息
该 apt search 命令的输出为您简要介绍了这些包,如果需要更多详细信息,请使用该 apt show 命令。

请务必注意,您需要为 apt show 命令提供确切的包名称。否则 apt show 将无法工作。
版权声明: 本文为 InfoQ 作者【Ethereal】的原创文章。
原文链接:【http://xie.infoq.cn/article/04cd14758411eeaa46b238471】。未经作者许可,禁止转载。
评论