dnf remove 的作用
dnf remove 用于卸载已安装的 RPM 包,并在同一次事务里处理依赖:只被该包需要的组件会一起移除,仍被其他包需要的依赖会保留。它适用于 openEuler、银河麒麟服务器版、统信 UOS 服务器版等 RPM 系发行版,DEB 系对应的是 apt remove。卸载只改包管理数据库的记录,用户在该目录下手工新增的配置文件通常不会跟着删除。
基本信息
| 适用平台 | openEuler / Kylin / UOS 服务器版(RPM 系) |
|---|---|
| 基本语法 | dnf remove <包名>(可一次写多个) |
| 权限要求 | root 或 sudo |
| 常用参数 | -y 免确认;--noautoremove 不动依赖 |
| 回滚手段 | dnf history undo <事务号> |
典型使用场景
- 替换服务实现:先卸掉系统自带版本,再装自编译或第三方包
- 最小化整改:清掉不需要的服务端软件,如 telnet-server、rsh
- 空间回收:卸载占空间大的旧内核与旧驱动包
- 解决依赖冲突:卸载冲突包后再安装正确版本
- 环境清理:移除测试机上临时安装的压测与调试工具
卸载与检查
卸载与检查
dnf remove -y nginx # 卸载软件包,自动处理依赖
dnf autoremove -y # 清理不再被依赖的孤儿包
rpm -qa | grep nginx # 确认包记录已消失
dnf history list | head # 出问题可回滚对应事务
ls /etc/nginx 2>/dev/null # 检查配置目录是否残留
dnf list installed | wc -l # 核对已装包数量变化卸载确认页怎么看
| 字段 | 含义 | 要关注什么 |
|---|---|---|
| Removing | 本次要删除的包清单 | 出现 glibc、systemd 等基础包立即中断 |
| Removing dependent packages | 因依赖被连带删除的包 | 确认没有业务组件在内 |
| Transaction Summary | 删除与更新数量汇总 | 数字明显超出预期时重新评估 |
| Is this ok | 等待确认的交互点 | 不要盲敲 -y,先看完清单 |
待删清单里若包含系统基础包(glibc、systemd、内核相关包),立即中断并排查是谁把它们标成了弱依赖。
卸载后服务配置与数据目录常残留(如 /etc/nginx、/var/lib/mysql);复装前先评估旧配置与旧数据的影响,必要时备份后再手工清理。