Есть ли канонический способ узнать, когда последний раз yum update
запускался в системе?
Наша установка состоит в том, что у нас есть промежуточные серверы, на которых выполняются автоматические обновления, и, если они не падают, мы будем вручную обновлять наши производственные серверы примерно раз в месяц (за исключением критических обновлений). (Я говорю вручную, в идеале я хочу вручную запустить обновление для всех из них, но это другая проблема).
Но вы заняты, задачи ускользают и т. Д. Поэтому я хочу настроить проверку nagios, которая начнет беспокоить нас, если мы оставим ее слишком долго.
Поиск в Интернете не дал мне очень далеко. Покопаясь в системе, лучшее, что я нашел на данный момент, будет что-то вроде:
grep Updated /var/log/yum.log | tail -1 | cut -d' ' -f 1-2
что дает мне что-то вроде того, Mar 12
что я могу затем преобразовать в дату. Есть несколько незначительных сложностей относительно того, будет ли дата в этом году или в прошлом году, и я также должен проверить /var/log/yum.log.1
в случае проверки сразу после входа в систему. Но это только детали сценариев.
Конечно, это может быть «одурачено» обновлением одного пакета, а не общим обновлением.
Так есть ли более канонический способ узнать, когда yum update
был запущен?
Изменить: я сейчас написал плагин Nagios NRPE, который использует идею, которую я выдвинул в вопросе. Вы можете получить его с https://github.com/aptivate/check_yum_last_update
history
команды. (В основном мы все еще используем CentOS 5). На самом деле, только что попробовал и CentOS 6 есть. Но это не достаточно универсально для наших целей - но выглядит полезным для других.