dnf是主流rpm发行版默认包管理器,更快更稳更省资源;掌握搜索(search/provides)、精准安装更新(exclude/downgrade/reinstall)、仓库缓存优化(mirror/clean/makecache)及事务回滚(history undo)等技巧可显著提升效率。

dnf 是当前主流 RPM 系发行版(如 Fedora、RHEL 8+、CentOS Stream、openEuler)默认的包管理器,比旧版 yum 更快、更稳、更省资源。掌握几个关键技巧,能明显提升日常操作效率和问题排查能力。
快速定位软件包:搜索与溯源
安装前不确定包名?用 dnf search 按关键词模糊匹配:
-
dnf search nginx—— 列出含 “nginx” 的所有包(名称、简介均参与匹配) -
dnf search "^nginx$"—— 精确匹配包名(加 ^ 和 $ 锚定)
已知某个命令或文件,但不知道属于哪个包?用 dnf provides 反向查源:
-
dnf provides /usr/bin/python3—— 找出提供该路径的包 -
dnf provides "systemd-sysv-generator"—— 支持带引号的子命令名查询
精准控制安装与更新行为
避免误升级或漏依赖,关键在参数选择:
专业级别的大型网站建站产品,JAVA技术的CMS管理系统,ospod提供上百套专业模板供您选择,包括审批工作流,流量统计和流行网络应用,是公司企业建设专业网站的首选产品,也使用于专业建站人士完成复杂网站项目。管理地址cmsadmin登陆用户名:ospod 密码:ospod1234
- 只更新特定软件包:
dnf update vim-enhanced - 跳过已知有问题的包(如内核):
dnf --exclude=kernel\* update - 降级到指定版本(需确认包存在):
dnf downgrade httpd-2.4.53-1.el9 - 重装已损坏包(不触及其他依赖):
dnf reinstall zsh
执行前可加 --assumeno 预览操作,确认无误再执行。
高效管理仓库与缓存
国内用户务必优化源,否则下载慢、失败多:
- 启用阿里云/华为云镜像(以 RHEL/CentOS Stream 为例):
sudo dnf install -y dnf-plugins-core && sudo dnf config-manager --set-enabled crb && sudo dnf config-manager --add-repo https://mirrors.aliyun.com/repo/epel-9.repo - 清理过期元数据和无用包缓存:
dnf clean all && dnf makecache(建议每月执行一次) - 临时禁用某仓库安装(如仅从 baseos 装):
dnf --disablerepo="*" --enablerepo=baseos install httpd
查状态、看历史、做回滚
系统变更后出问题?别急着重装:
- 查看最近 10 条操作记录:
dnf history list recent - 检查某次事务详情(如 ID 123):
dnf history info 123 - 撤销上次安装(还原为之前状态):
dnf history undo last - 列出所有可更新包:
dnf list updates,配合grep筛选关键组件
dnf 的事务历史是原子性的,回滚成功率高,比手动卸载更安全。









