Gibt es eine kanonische Methode, um herauszufinden, wann das letzte Mal yum update
auf einem System ausgeführt wurde?
Wir haben Staging-Server eingerichtet, auf denen automatische Updates ausgeführt werden. Sofern diese nicht umfallen, aktualisieren wir unsere Produktionsserver etwa einmal im Monat manuell (außer bei kritischen Updates). (Ich sage manuell, idealerweise möchte ich ein Update für alle manuell auslösen, aber das ist ein anderes Problem).
Aber du wirst beschäftigt, Aufgaben rutschen ab usw. Also möchte ich einen Nagios-Check einrichten, der uns stört, wenn wir ihn zu lange stehen lassen.
Das Durchsuchen des Webs hat mich nicht weit gebracht. Das Beste, was ich bisher gefunden habe, ist das Stöbern im System:
grep Updated /var/log/yum.log | tail -1 | cut -d' ' -f 1-2
Das gibt mir so etwas, Mar 12
das ich dann in ein Datum umwandeln kann. Es gibt ein paar kleinere Komplikationen, ob das Datum dieses oder letztes Jahr ist, und ich müsste es auch überprüfen, /var/log/yum.log.1
falls es unmittelbar nach einem Logrotate überprüft wird. Aber das sind nur Skriptdetails.
Dies kann natürlich durch ein Update auf ein einzelnes Paket und nicht durch ein allgemeines Update "getäuscht" werden.
Gibt es also eine kanonischere Möglichkeit, um zu sehen, wann ausgeführt yum update
wurde?
Bearbeiten: Ich habe jetzt ein Nagios NRPE-Plugin geschrieben, das die Idee verwendet, die ich in der Frage vorgebracht habe. Sie können es unter https://github.com/aptivate/check_yum_last_update herunterladen
history
Befehl scheint nicht verfügbar zu sein. (Wir verwenden meistens noch CentOS 5). Eigentlich gerade ausprobiert und CentOS 6 hat es. Aber es ist nicht universell genug für unsere Zwecke - aber es sieht für andere nützlich aus.