0

0

如何查看Linux软件包更新历史 yum history和apt日志分析

P粉602998670

P粉602998670

发布时间:2025-07-10 12:10:02

|

347人浏览过

|

来源于php中文网

原创

linux系统中查看软件包更新历史的方法分为两类:1. 对于centos/rhel系统,使用yum history命令可查看安装、升级或删除记录,支持按包名过滤和事务详情查询;2. 对于debian/ubuntu系统,更新日志保存在/var/log/apt/history.log中,可通过cat或less查看,旧日志以压缩文件形式存档;此外,建议定期备份日志、结合时间线分析、使用脚本辅助及控制访问权限以提升运维效率与安全性。

如何查看Linux软件包更新历史 yum history和apt日志分析

Linux系统中,查看软件包更新历史是一个常见的运维需求。不管是排查问题还是审计变更记录,了解yum或apt的更新日志都是关键步骤。

如何查看Linux软件包更新历史 yum history和apt日志分析

yum history:适用于CentOS/RHEL系统的更新记录查询

在基于Red Hat的系统中,yum history 是一个非常实用的命令,可以查看系统上通过yum安装、升级或删除的软件包记录。

使用方式很简单,直接输入:

如何查看Linux软件包更新历史 yum history和apt日志分析
yum history

它会列出所有事务的历史记录,包括ID、执行时间、操作类型(Install、Update等)以及受影响的包数量。

如果你只想看某个特定软件包的操作记录,可以加上包名过滤:

如何查看Linux软件包更新历史 yum history和apt日志分析
yum history list httpd

更详细的事务信息可以用如下命令查看:

yum history info <事务ID>

这个命令会显示该次操作涉及的具体软件包变化,比如从哪个版本升级到哪个版本。

Veggie AI
Veggie AI

Veggie AI 是一款利用AI技术生成可控视频的在线工具

下载
注意:yum的这些记录是保存在 /var/lib/yum/history/ 目录下的SQLite数据库中,因此只要不手动清理,通常不会丢失。

apt日志:Debian/Ubuntu系统的更新记录查看方法

对于使用apt作为包管理器的系统(如Ubuntu和Debian),更新历史主要记录在日志文件中,最常用的是:

/var/log/apt/history.log

这个文件记录了每次apt操作的时间、操作类型(Install、Upgrade、Remove等)、具体操作内容及执行结果。

例如,你可以用 catless 查看这个文件:

less /var/log/apt/history.log

里面的内容类似这样:

Start-Date: 2024-03-15  10:00:00
Commandline: apt upgrade
Upgrade: nginx:amd64 (1.18.0 -> 1.20.1), openssl:amd64 (1.1.1f -> 1.1.1g)
End-Date: 2024-03-15  10:05:00

除了当前的日志,老的日志通常会被压缩存放在同目录下的 history.log.1.gz, history.log.2.gz 等文件中,需要用 zcatgunzip 来查看。


日常维护中的几个实用建议

  • 定期备份日志:特别是生产环境中,最好把yum或apt的日志归档保存,便于后续审计。
  • 结合时间线分析:如果发现服务异常,可以根据服务出问题的时间点去查找相近的软件包更新记录。
  • 自动化脚本辅助:可以用简单的shell脚本提取最近一周的更新记录,方便快速查阅。
  • 权限控制:确保只有授权用户能访问这些日志,避免敏感信息泄露。

基本上就这些方法了。虽然看起来简单,但真正在排查问题时特别有用,尤其是当你不确定某个改动是什么时候发生的。

相关专题

更多
Sass和less的区别
Sass和less的区别

Sass和less的区别有语法差异、变量和混合器的定义方式、导入方式、运算符的支持、扩展性等。本专题为大家提供Sass和less相关的文章、下载、课程内容,供大家免费下载体验。

201

2023.10.12

数据库三范式
数据库三范式

数据库三范式是一种设计规范,用于规范化关系型数据库中的数据结构,它通过消除冗余数据、提高数据库性能和数据一致性,提供了一种有效的数据库设计方法。本专题提供数据库三范式相关的文章、下载和课程。

352

2023.06.29

如何删除数据库
如何删除数据库

删除数据库是指在MySQL中完全移除一个数据库及其所包含的所有数据和结构,作用包括:1、释放存储空间;2、确保数据的安全性;3、提高数据库的整体性能,加速查询和操作的执行速度。尽管删除数据库具有一些好处,但在执行任何删除操作之前,务必谨慎操作,并备份重要的数据。删除数据库将永久性地删除所有相关数据和结构,无法回滚。

2075

2023.08.14

vb怎么连接数据库
vb怎么连接数据库

在VB中,连接数据库通常使用ADO(ActiveX 数据对象)或 DAO(Data Access Objects)这两个技术来实现:1、引入ADO库;2、创建ADO连接对象;3、配置连接字符串;4、打开连接;5、执行SQL语句;6、处理查询结果;7、关闭连接即可。

347

2023.08.31

MySQL恢复数据库
MySQL恢复数据库

MySQL恢复数据库的方法有使用物理备份恢复、使用逻辑备份恢复、使用二进制日志恢复和使用数据库复制进行恢复等。本专题为大家提供MySQL数据库相关的文章、下载、课程内容,供大家免费下载体验。

255

2023.09.05

vb中怎么连接access数据库
vb中怎么连接access数据库

vb中连接access数据库的步骤包括引用必要的命名空间、创建连接字符串、创建连接对象、打开连接、执行SQL语句和关闭连接。本专题为大家提供连接access数据库相关的文章、下载、课程内容,供大家免费下载体验。

324

2023.10.09

数据库对象名无效怎么解决
数据库对象名无效怎么解决

数据库对象名无效解决办法:1、检查使用的对象名是否正确,确保没有拼写错误;2、检查数据库中是否已存在具有相同名称的对象,如果是,请更改对象名为一个不同的名称,然后重新创建;3、确保在连接数据库时使用了正确的用户名、密码和数据库名称;4、尝试重启数据库服务,然后再次尝试创建或使用对象;5、尝试更新驱动程序,然后再次尝试创建或使用对象。

410

2023.10.16

vb连接access数据库的方法
vb连接access数据库的方法

vb连接access数据库方法:1、使用ADO连接,首先导入System.Data.OleDb模块,然后定义一个连接字符串,接着创建一个OleDbConnection对象并使用Open() 方法打开连接;2、使用DAO连接,首先导入 Microsoft.Jet.OLEDB模块,然后定义一个连接字符串,接着创建一个JetConnection对象并使用Open()方法打开连接即可。

401

2023.10.16

Java JVM 原理与性能调优实战
Java JVM 原理与性能调优实战

本专题系统讲解 Java 虚拟机(JVM)的核心工作原理与性能调优方法,包括 JVM 内存结构、对象创建与回收流程、垃圾回收器(Serial、CMS、G1、ZGC)对比分析、常见内存泄漏与性能瓶颈排查,以及 JVM 参数调优与监控工具(jstat、jmap、jvisualvm)的实战使用。通过真实案例,帮助学习者掌握 Java 应用在生产环境中的性能分析与优化能力。

19

2026.01.20

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.5万人学习

Git 教程
Git 教程

共21课时 | 2.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号