yum updateが最後に実行された時期を確認する方法


11

yum updateシステムで最後に実行された時間を知るための正規の方法はありますか?

私たちのセットアップでは、自動更新を実行するステージングサーバーがあり、それらがフォールオーバーしない限り、月に1回程度(重要な更新を除き)手動で運用サーバーを更新します。(私は手動で言いますが、理想的にはそれらすべての更新を手動でトリガーしたいのですが、それは別の問題です)。

しかし、あなたは忙しくなり、タスクはスリップします。それで、私がそれをあまりにも長く残している場合、私たちを悩ませ始めるnagiosチェックをセットアップしたいと思います。

ウェブを検索しても、それほど遠くはありません。システムをたたくと、私がこれまでに見つけた最良のものは次のようなものになります:

grep Updated /var/log/yum.log | tail -1 | cut -d' ' -f 1-2

これによりMar 12、日付に変換できるようなものが得られます。日付が今年なのか去年なのかについて、いくつかの小さな問題があり/var/log/yum.log.1ます。また、logrotateの直後にチェックする場合は、チェックする必要があります。しかし、それは単なるスクリプトの詳細です。

もちろん、これは一般的な更新ではなく、単一のパッケージへの更新によって「だまされる」可能性があります。

では、いつyum update実行されたかを確認するためのより標準的な方法はありますか?

編集:私は今、私が質問で提案したアイデアを使用するNagios NRPEプラグインを作成しました。https://github.com/aptivate/check_yum_last_updateから入手できます。

回答:


19

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 

1
使用しているyumのバージョン- historyコマンドが使用できないようです。(私たちは主にまだCentOS 5を使用しています)。実際、試してみただけで、CentOS 6にはあります。しかし、それは私たちの目的にとって十分に普遍的ではありませんが、他の人にとっては有用に見えます。
Hamish Downer、

1
はい、これはcentos 6.xのyumバージョン3.2.29にあります。ありがとう
Chakri

1
インストールと更新の組み合わせがあった場合、アクションの列にはI, U、grepを少し複雑にすることが記載されています。これは、更新されたパッケージが新しいパッケージに依存していて、新しいパッケージがインストールされる場合に発生する可能性があります。
Hamish Downer

何か他のものをインストールしているときに更新が発生することがあるので、それらも表示したい場合は、次のようにgrepを介して出力を渡すことがあります。更新を含むすべての実行をキャッチするgrep 'U'。
JJC 2016年

2

確実に確認できる唯一の方法は、実行することだと思いますpsacct

これにより、を実行できますlastcomm yum。これを解析すると、誰がいつ実行したかがわかります。


1

「Dev」サーバーのセットがDev yumリポジトリをポイントしていると思いますか?

cron / puppet / chefスクリプトで自動アップグレードを実行し、成功するとファイルに書き込むことができます。(言う/etc/yum_last

その後yum check-update、Devサーバーのcron / otherで定期的に使用して、利用可能な更新があるかどうかを確認できます。このコマンドで0を超える更新が利用可能であると表示された場合は、現在の日付と最後に自動yumアップグレードを実行したときに作成したファイルのタイムスタンプを比較します。

この日付の差が数日で大きくなると、Nagiosアラートを受け取ることができます。

必要に応じて、パルプを確認することもできます。


0

次のコマンドは、最近インストールまたは更新されたRPMパッケージを一覧表示します。

rpm -qa --last  | head

YUM外にインストールされたパッケージも含まれる場合があります。このコマンドは、root権限なしでも実行できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.