8.2. 恢复 DNF 事务


要撤消在 Red Hat Enterprise Linux (RHEL) 10 上 DNF 事务过程中执行的操作,请使用 DNF 工具恢复这些事务。通过恢复事务,您可以快速将系统恢复到以前的状态。例如,如果您使用 dnf install 命令安装多个软件包,您可以通过恢复安装事务来一次卸载这些软件包。

您可以使用以下方法恢复 DNF 交易:

  • 使用 dnf history undo 命令恢复单个 DNF 交易。
  • 使用 dnf history rollback 命令恢复指定交易和最后一个交易之间执行的所有 DNF 交易。
重要

不支持使用 dnf history undodnf history rollback 命令降级 RHEL 系统软件包到旧版本。这尤其涉及 selinuxselinux-policy-*kernelglibc 软件包,以及 glibc 的依赖项,如 gcc。因此,不建议将系统降级到次版本(例如,从 RHEL 10.1 升级到 RHEL 10.0),因为它可能会使系统处于不正确的状态。

8.2.1. 撤销单个 DNF 交易

要撤消在 Red Hat Enterprise Linux (RHEL) 10 上的单个 DNF 事务过程中执行的操作,请使用 DNF 工具恢复这个事务。通过将环境恢复到软件包管理历史记录中的特定点,您可以从意外更改和错误中恢复。在 DNF 历史记录中恢复单个事务不会撤消或修改最新的事务。

您可以使用 dnf history undo 命令恢复事务的步骤:

  • 如果交易安装了一个新软件包,则 dnf history undo 会卸载该软件包。
  • 如果交易卸载了一个软件包,则 dnf history undo 会重新安装该软件包。
  • 如果旧的软件包可用,dnf history undo 命令还会尝试将所有更新的软件包降级到之前的版本。

    注意

    如果旧的软件包版本不可用,则使用 dnf history undo 命令降级会失败。

流程

  1. 确定您要恢复的事务的 ID:

    # dnf history
    ID | Command line     | Date and time     | Action(s)      | Altered
    --------------------------------------------------------------------
    13 | install zip      | 2022-11-03 10:49  | Install        |    1
    12 | install unzip    | 2022-11-03 10:49  | Install        |    1
  2. 可选:通过显示其详情来验证您要恢复的事务:

    # dnf history info <transaction_ID>
  3. 恢复事务:

    # dnf history undo <transaction_ID>

    例如,如果要卸载之前安装的 unzip 软件包,请输入:

    # dnf history undo 12
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部