Red Hat Training

A Red Hat training course is available for RHEL 8

7.8. 处理软件包管理历史记录

yum history 命令允许您查看有关 yum 事务的时间线、所发生的日期和时间、受影响的软件包数量、这些事务是成功还是被中止,以及是否在事务间更改了 RPM 数据库的信息。yum history 命令也可用于撤销或重做事务。

下面的部分描述了如何使用 yum:

  • 列出事务。
  • 恢复事务。
  • 重复事务。
  • 在 yum 输入中指定全局表达式。

7.8.1. 使用 YUM 列出事务

使用以下流程列出最新的事务、对所选软件包的最新操作以及特定事务的详情。

流程

  • 要显示所有最新的 yum 事务列表,请使用:

    # yum history
  • 要显示所选软件包的最新操作列表,请使用:

    # yum history list package-name

    使用软件包名称替换 package-name。您可以通过附加全局表达式来过滤命令输出。如需了解更多详细信息,请参阅 在 yum 输入中指定全局表达式

  • 要检查特定的事务,请使用:

    # yum history info transactionID

    用事务的 ID 替换 transactionID

7.8.2. 使用 YUM 恢复事务

以下流程描述了如何使用 yum 恢复所选事务或最后一个事务。

流程

  • 要恢复特定的事务,请使用:

    # yum history undo transactionID

    用事务的 ID 替换 transactionID

  • 要恢复到最后的事务,请使用:

    # yum history undo last

请注意,yum history undo 命令只恢复事务期间执行的操作步骤。如果事务安装了一个新的软件包,yum history undo 命令会卸载它。如果事务卸载了一个软件包,则 yum history undo 命令会重新安装它。yum history undo 还会尝试将所有更新的软件包降级到它们之前的版本(如果旧包仍然可用)。

7.8.3. 使用 YUM 重复事务

使用以下流程,通过 yum 重复所选事务或最后的事务。

流程

  • 要重复特定的事务,请使用:

    # yum history redo transactionID

    用事务的 ID 替换 transactionID

  • 要重复最后的事务,请使用:

    # yum history redo last

请注意, yum history redo 命令只重复事务期间执行的步骤。

7.8.4. 在 YUM 输入中指定全局表达式

yum 命令允许您将一个或多个 glob 表达式 作为参数过滤。当将全局表达式作为参数传递给 yum 命令时,您必须退出全局表达式。

流程

To ensure global expressions are passed to yum as intended, use one of the following methods:

  • 使用双引号或单引号包括整个全局表达式。

    # yum provides "*/file-name"

    用文件名替换 file-name

  • 在它们前面使用反斜杠(\)符号转义通配符字符。

    # yum provides \*/file-name

    用文件名替换 file-name