如何检查 yum update 上次运行的时间

Ham*_*ner 15 package-management nagios yum update

有没有一种规范的方法来找出yum update系统上次运行的时间?

我们的设置是我们有运行自动更新的暂存服务器,如果它们不会发生故障,我们将大约每月手动更新一次我们的生产服务器(关键更新除外)。(我说手动,理想情况下我想手动触发所有更新,但这是另一个问题)。

但是你会很忙,任务会延误等等。所以我想设置一个 nagios 支票,如果我们离开它太久就会开始打扰我们。

搜索网络并没有让我走得很远。浏览系统,到目前为止我发现的最好的东西是这样的:

grep Updated /var/log/yum.log | tail -1 | cut -d' ' -f 1-2
Run Code Online (Sandbox Code Playgroud)

这给了我类似的东西Mar 12,然后我可以将其转换为日期。关于日期是今年还是去年有一些小问题/var/log/yum.log.1,如果在 logrotate 后立即检查,我还需要检查。但这只是脚本细节。

这当然可以被单个包的更新而不是一般更新“愚弄”。

那么有没有更规范的方式来查看何时yum update运行?

编辑:我现在已经编写了一个 Nagios NRPE 插件,它使用了我在问题中提出的想法。你可以从https://github.com/aptivate/check_yum_last_update获取它

小智 24

yum 历史选项允许用户查看过去交易中发生的事情。为了使它更简单,您可以从yum 历史记录中grep更新

# yum  history
Loaded plugins: fastestmirror, refresh-packagekit
ID     | Login user               | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    41 | root <root>              | 2012-04-27 20:17 | Install        |   19   
    40 | root <root>              | 2011-11-20 10:09 | Install        |   10   
    39 | root <root>              | 2011-11-20 08:14 | Install        |    1 E<
    38 | root <root>              | 2011-11-19 15:46 | Update         |    1 
Run Code Online (Sandbox Code Playgroud)