yum history 命令示例: 显示、回滚、重做、撤消 yum 事务

yum history 命令示例: 显示、回滚、重做、撤消 yum 事务

yum 的yum history功能是 Linux 中一个经常被忽视但非常强大的实用程序。
它可用于将 yum 事务回滚/重做/撤消到一切正常的状态。

yum history

yum history list命令在不带任何参数的情况下运行时会产生类似于下图所示的输出。
yum history或者yum history list默认显示最近 20 个 yum 交易。

1
yum history list

其中:
ID :唯一标识一个 yum 事务。

命令行 :日期和时间:交易的日期和时间。

Action(s) :在事务中执行的操作,如安装、更新等。
详细列表如下。

Action Abbreviation Description
Downgrade D At least one package has been downgraded to an older version.
Erase E At least one package has been removed.
Install I At least one new package has been installed.
Obsoleting O At least one package has been marked as obsolete.
Reinstall R At least one package has been reinstalled.
Update U At least one package has been updated to a newer version.
Action 缩写 描述
Downgrade D 至少有一个软件包已降级到旧版本。
Erase E 至少删除了一个包。
Install I 至少安装了一个新软件包。
Obsoleting O 至少有一个包被标记为过时。
Reinstall R 至少已重新安装了一个软件包。
Update U 至少有一个软件包已更新到较新的版本。

Altered : 受事务影响的包数和添加信息,例如 rpmdb 数据库是否在事务之后更改等。
详细列表如下。

Symbol 描述
< 在事务完成之前,rpmdb 数据库在 Yum 之外发生了变化。
> 交易完成后,rpmdb 数据库在 Yum 之外发生了变化。
* 交易未能完成。
# 交易成功完成,但 yum 返回了非零退出代码。
E 事务成功完成,但显示错误或者警告。
P 事务成功完成,但 rpmdb 数据库中已经存在问题。
s 事务成功完成,但使用了 -skip-broken 命令行选项并跳过了某些包。

要显示所有交易,请使用 all 选项。

1
yum history list all

有关特定交易的信息

如果我们知道 yum 事务的事务 ID,则可以使用以下命令获得详细视图。

1
yum history info 1

我们还可以在 yum history 命令中使用包名称。

1
yum history info vsftpd

上面的命令将显示所有事务,如安装、更新、删除 vsftpd 包。

我们还可以使用摘要选项获取特定软件包的交易历史摘要。

回滚或者重做 yum 事务

我们可以使用以下语法命令撤消特定的 yum 事务:

1
yum history rollback [transaction_ID]

同样,我们也可以重做 yum 事务。

1
yum history redo [transaction ID]

我们将使用下图所示的命令重做移除的 sysstat 包移除。

在我们指定事务之前,重做子命令还可以采用一些可选参数:
force-reinstall - 重新安装在该事务中安装的所有软件包(通过 yum install、upgrade 或者 downgrade)。

force-remove - 删除所有更新或者降级的包。

将 yum 事务回滚到某个点

使用 yum history 命令,我们可以回滚所有事务,直到特定事务 ID。
例如,如果我们指定事务 ID 为 16,则将回滚从最新到事务 ID 16 的所有事务。
例如 :

1
yum history rollback 16

“yum history”命令示例: 显示、回滚、重做、撤消 yum 事务-之路教程 (onitroad.com)

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2018-2026 Outsrkem
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信