Yum 是 RHEL/CentOS 的一个基于 rpm 的交互式高级包管理器,用户可以用它来安装新的软件包、卸载或清除旧的/不需要的软件包。它可以自动运行系统更新,并执行依赖分析,对已安装的或可用的软件包进行查询等等

在本文中,我们将解释如何查看 Yum 事务的历史记录,以便于了解有关安装的软件包以及从系统中所卸载/清除软件包的信息。

推荐阅读: 20 条关于 Linux 软件包管理的 Yum 命令

以下是一些如何使用 Yum 历史命令的示例。

查看完整的 Yum 历史

要查看 Yum 事务完整的历史记录,我们可以运行以下命令,然后将显示:事务 ID、执行特定操作的用户、操作发生的日期和时间、实际操作以及任何错误的附加信息与操作:

  1. # yum history

查看 Yum 历史

使用 Yum 查找软件包信息

history 的子命令:info/list/summary 可以将事务 ID 或包名作为参数。此外,list 子命令可以加上特殊的参数,all 表示所有的事务。

运行以下命令查看先前的历史:

  1. # yum history list all

并且,你可以使用下面的 info 命令查看涉及指定软件包的事务详情,例如 httpd:

  1. # yum history info httpd

Yum - 查找软件包信息

发出以下命令可以获得包含 httpd 软件包的事务的摘要:

  1. # yum history summary httpd

Yum - 查找软件包的摘要

还可以使用事务的 ID 来查找,以下命令会显示 ID 为 15 的事务的详情。

  1. # yum history info 15

Yum - 使用 ID 查找软件包信息

使用 yum history 查找软件包事务信息

有一些用于打印某个或多个软件包事务详情的子命令。我们可以使用 package-list 或 package_info 查看关于 httpd 的更多信息,例如:

  1. # yum history package-list httpd
  2. # yum history package-info httpd

Yum - 查找软件包事务信息

要得到多个软件包的记录,我们可以运行:

  1. # yum history package-list httpd epel-release
  2. # yum history packages-list httpd epel-release

Yum - 查找多个软件包的信息

使用 Yum 回滚软件包

此外,还有一些 history 的子命令可以让我们撤销/重做/回滚事务。

  1. undo - 会撤销一个指定的事务。
  2. redo - 重复一次指定的事务。
  3. rollback - 撤销指定事务之后的所有事务。

它们采用单个事务 id 或关键字 last 和从最后一个事务开始的偏移量。

例如,假设我们已经做了 60 个事务,last 是指事务 60,last-4 指向事务 56。

推荐阅读: 怎样使用 yum-utils 来维护以及加速 Yum

以上子命令是如下工作的:如果我们有 5 个事务——V,W,X,Y 和 Z,其中分别是安装各个软件包的。

  1. # yum history undo 2    #将删除软件包 W
  2. # yum history redo 2    #将重新安装软件包 W
  3. # yum history rollback 2    #将删除软件包 X、 Y 和 Z

在下面的示例中,事务 2 是一个更新操作,如下所示,以下 redo 命令将重复事务 2 直到所有软件包到更新到当前时间的最新版本:

  1. # yum history | grep -w "2"

Yum - 查找软件包事务的 ID

  1. # yum history redo 2

用 Yum 重新更新软件包

redo 子命令同样可以在我们指定事务之前加上一些可选的参数:

  1. force-reinstall - 重新安装所有在此事务中安装的软件包(通过 yum install、upgrade 或 downgrade)。
  2. force-remove - 移除所有已经更新或回滚的软件包。
  1. # yum history redo force-reinstall 16

Yum - 强制安装软件包

查找 Yum 历史数据库和来源信息

这些子命令为我们提供有关历史记录数据库和其它信息来源的信息:

  1. addon-info - 提供更多的信息来源。
  2. stats - 显示当前历史数据库的统计信息。
  3. sync - 使我们能够更改为所有已安装软件包存储的 rpmdb/yumdb 数据。

看一下以下的命令的子命令实际上是怎样工作的:

  1. # yum history addon-info
  2. # yum history stats
  3. # yum history sync

使用 new 子命令设置新的历史文件:

  1. # yum history new

我们可以在 yum 手册页找到关于 Yum history 命令和其它几个命令的完整信息:

  1. # man yum

推荐阅读: 4 个使用 Yum 禁用/锁定某些软件包更新的方法

就是这么多了。在本篇指南中,我们介绍了各种 Yum history 命令,以查看 Yum 事务的详细信息。

作者:Aaron Kili
来源:51CTO

使用Yum历史查找已安装或已删除的软件包信息相关推荐

  1. windows安装包删了会有影响吗_已安装更新可以删除吗?win10删除更新安装教程

    已安装更新可以删除吗?众所周知,Win10会为用户自行下载安装驱动更新,有时候却导致系统故障.面对这样的问题我们怎么解决呢?下面,我们就针对问题来看看详细的win10删除更新安装教程. win7删除系 ...

  2. 怎样备份iOS已安装、已下架App的IPA文件?

    一.前言 这篇教程将教会你怎样备份iOS已安装App的IPA文件.App有什么好备份的呢?下面举个例子,有这个需要的伙伴可能就懂了. 用苹果机还经常看小说的伙伴应该知道这几个软件:香色闺阁.源阅读.花 ...

  3. 关于CAD2022重装显示已安装,需要删除注册表中的CAD文件(需仔细)

    (win+r)输入 regedit HKEY_CLASSES_ROOT  \  Installer \  Products  \    FEE98B82101540801220FCF3A3907BD7 ...

  4. PackageManagerService启动详解(二)之怎么通过packages.xml对已安装应用信息进行持久化管理?

    PKMS启动详解(二)之怎么通过packages.xml对已安装应用信息进行持久化管理? Android PackageManagerService系列博客目录: PKMS启动详解系列博客概要 PKM ...

  5. 构建一个Gods Eye Android应用程序:第1部分 – 收集已安装的Android应用程序

    首先问候一下我的黑客伙伴们,在之前的Introduction to Amunet 教程中,我们了解到Amunet可能是一个间谍Android应用程序. 我不浪费太多时间因而直入主题. 在本教程中,我们 ...

  6. linux centos删除安装的包,CentOS yum认为已删除的软件包仍在安装中

    在我的yum中有2个包我想摆脱它.当我列出它们出现在输出中的已安装软件包时,当我尝试擦除它们时,yum似乎认为它没问题并继续进行删除.但是,它们永远不会消失,它们会留在列表中,我可以将它们删除42次, ...

  7. 查找谷歌已安装的浏览器插件的包所在位置和打包扩展程序

    1.在谷歌地址栏输入chrome:version 回车 2.找到 "个人资料路径",该路径下的Extensions文件夹里面便是已安装的浏览器插件的包 3.需要打包的话,先打开浏览 ...

  8. 新安装和已安装nginx如何添加未编译安装模块/补丁

    新安装和已安装nginx如何添加未编译安装模块/补丁 --http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=10485& ...

  9. gitlab与已安装nginx(tengine)冲突解决方案,使用自己安装的nginx(tengine)

    2019独角兽企业重金招聘Python工程师标准>>> 今天遇到安装的gitlab中集成的nginx(tengine),与通过OneinStack提供的脚本安装的nginx(teng ...

最新文章

  1. matlab通信物理层仿真,通信小精灵(物理层仿真工具) 可计算仿真误码率、理论误...
  2. Linux下命令行(二)之文本处理基础
  3. Shell命令-搜索文件或目录之whereis、locate
  4. 【实战篇】| 模拟 20 万数据快速查询 IP 归属地
  5. mysql kill_Mysql使用kill命令解决死锁问题(杀死某条正在执行的sql语句)
  6. python打印数组中期望元素的位置
  7. mllib逻辑回归 spark_《Spark大数据分析实战》笔记
  8. python 3.6.5安装教程_Ubuntu16.04安装python3.6.5详细步骤
  9. android统计库,android jacoco 统计多模块
  10. 《Effective STL中文版》前言
  11. SpringMVC文件上传(三)异常栈处理
  12. 【外刊阅读】1. There is no “gay gene“
  13. 【开源教程9】疯壳·开源蓝牙心率防水运动手环-心率监测
  14. iOS开发之GameCenter使用
  15. 今天吃什么 随机选择(抽奖,抽人适用)纯html、css静态页面
  16. python爬取图片失败显示404_django使用图片延时加载引起后台404错误
  17. 开题报告中的研究目的与研究内容怎么写?
  18. 杀入“黑五”战场:百度电商又一次“引体向上”
  19. MarkDown折叠语法
  20. 告别2017,拥抱2018!

热门文章

  1. 科技创新2030—“新一代人工智能”重大项目拟立项的2018年度项目公示清单
  2. 【干货】百度联合清华大学发布国内首个基于AI实践的《产业智能化白皮书》(附报告全文)...
  3. 干货|100张PPT讲透工业机器人的机械结构
  4. OpenAI最新研究:如何通过无监督学习提升「自然语言理解能力」?
  5. 硅谷顶级VC:“S曲线”看四大风口,创企成功机会巨大
  6. 联合国《2017年信息经济报告》
  7. 苹果女高管再指控公司存在职场欺凌,曾上班时间被强迫喝酒
  8. 当互联网人决定躺平......
  9. 什么才是程序员摸鱼的最高境界?
  10. 内存泄露的原因找到了,罪魁祸首居然是 Java TheadLocal