介绍
在本实验中,你将学习如何使用 dnf(Dandified YUM)命令,这是现代基于 Red Hat 的 Linux 发行版(如 Fedora、CentOS 和 RHEL)的默认包管理器。你将了解 dnf 命令的基本用法,安装和更新软件包,以及管理包组和依赖关系。本实验涵盖了基本的包管理任务,并提供实际示例,帮助你熟练掌握在 Linux 系统上管理软件包的技能。
在本实验中,你将学习如何使用 dnf(Dandified YUM)命令,这是现代基于 Red Hat 的 Linux 发行版(如 Fedora、CentOS 和 RHEL)的默认包管理器。你将了解 dnf 命令的基本用法,安装和更新软件包,以及管理包组和依赖关系。本实验涵盖了基本的包管理任务,并提供实际示例,帮助你熟练掌握在 Linux 系统上管理软件包的技能。
在这一步中,你将学习 dnf(Dandified YUM)命令,这是现代基于 Red Hat 的 Linux 发行版(如 Fedora、CentOS 和 RHEL)的默认包管理器。
首先,让我们检查系统中安装的 dnf 当前版本:
sudo dnf --version
示例输出:
dnf version 4.9.0
dnf 命令用于各种包管理任务,例如:
要快速查看可用的 dnf 命令和选项,可以使用内置的帮助功能:
sudo dnf help
这将显示最常见的 dnf 命令列表以及每个命令的简要说明。
你还可以使用 man
命令获取有关特定 dnf 命令的更详细信息:
man dnf
这将打开 dnf 命令的手册页,提供有关其用法和可用选项的全面文档。
在这一步中,你将学习如何使用 dnf 命令在系统上安装新软件包和更新现有软件包。
首先,让我们使用 dnf search
命令搜索一个软件包。例如,搜索 "tree" 软件包:
sudo dnf search tree
示例输出:
Last metadata expiration check: 0:00:36 ago on Fri 14 Apr 2023 05:33:00 PM UTC.
tree.x86_64 : 显示目录结构的树状视图
tree-python3.x86_64 : tree 的 Python3 绑定
tree-qt.x86_64 : 基于 Qt 的树状查看器
要安装 "tree" 软件包,使用 dnf install
命令:
sudo dnf install -y tree
示例输出:
Dependencies resolved.
...
Installed:
tree-1.8.0-10.el8.x86_64
现在,让我们使用 dnf update
命令更新系统上所有已安装的软件包:
sudo dnf update -y
示例输出:
Dependencies resolved.
...
Updated:
...
Complete!
上述命令中的 -y
标志会自动对所有提示回答 "yes",使安装和更新过程无需人工干预。
在这一步中,你将学习如何使用 dnf 命令管理包组和依赖关系。
dnf 中的包组是相关软件包的集合,可以一起安装或删除。要列出所有可用的包组,使用 dnf group list
命令:
sudo dnf group list
示例输出:
可用环境组:
...
带 GUI 的服务器
最小化安装
...
可用组:
创作和发布
C 开发工具和库
...
要安装一个包组,使用 dnf group install
命令。例如,安装 "Development Tools" 组:
sudo dnf group install -y "Development Tools"
示例输出:
依赖关系已解决。
...
已安装:
...
在安装软件包时,dnf 会自动处理软件包的依赖关系。你可以使用 dnf deplist
命令查看将要安装的依赖关系列表:
sudo dnf deplist tree
示例输出:
package: tree-1.8.0-10.el8.x86_64
dependency: libc.so.6()(64bit)
dependency: libm.so.6()(64bit)
dependency: libncurses.so.6()(64bit)
dependency: libpthread.so.0()(64bit)
dependency: rtld(GNU_HASH)
这显示了 "tree" 软件包所需的依赖关系。
要删除一个包组,使用 dnf group remove
命令:
sudo dnf group remove -y "Development Tools"
示例输出:
依赖关系已解决。
...
已移除:
...
在本实验中,你学习了 dnf(Dandified YUM)命令,这是现代基于 Red Hat 的 Linux 发行版的默认包管理器。你探索了如何使用 dnf 安装新软件包、更新现有软件包、搜索软件包以及管理包组和依赖关系。具体来说,你学习了如何检查 dnf 的当前版本、搜索软件包、安装 "tree" 软件包以及更新系统上所有已安装的软件包。