在 Linux 中,yum 本身没有像 dnf history rollback 那样完整的自动回滚机制,但仍有几种常见方式可以“回滚/降级”软件版本。下面按推荐程度给你说明(适用于 CentOS 7 / RHEL 7 等使用 yum 的系统)。
yum history
示例输出:
ID | Command line | Date and time | Action(s)
-------+--------------------------+------------------+-----------
12 | install nginx | 2024-01-01 10:00 | Install
11 | update | 2023-12-30 09:00 | Update
yum history undo(推荐)如果升级或安装是最近一次 yum 操作,可以直接撤销:
yum history undo 12
✅ 优点
❌ 限制
yum --showduplicates list 软件名
例如:
yum --showduplicates list nginx
yum downgrade 软件名-版本
示例:
yum downgrade nginx-1.20.2-1.el7
✅ 优点
如果 downgrade 失败(依赖冲突):
yum remove 软件名
yum install 软件名-版本
⚠️ 注意:
如果你使用的是:
dnf history rollback 10
⚠️ yum(CentOS 7)不支持 rollback,只支持 undo
rpm -qa | grep kernel
grub2-set-default 1
reboot
或:
grubby --set-default-index=1
yum history info 12
确认:
| 场景 | 推荐方式 |
|---|---|
| 刚升级/安装 | yum history undo |
| 指定版本回退 | yum downgrade |
| 历史复杂 | 手动重装旧版本 |
| CentOS 8+ | dnf history rollback |
| 内核回滚 | 修改 GRUB |
如果你愿意,可以告诉我:
我可以给你精确命令,避免翻车。