Esiste un modo canonico per scoprire l'ultima volta che è yum update
stato eseguito su un sistema?
La nostra configurazione è che abbiamo server di gestione temporanea che eseguono aggiornamenti automatici e, a condizione che non cadano, aggiorneremo manualmente i nostri server di produzione circa una volta al mese (esclusi gli aggiornamenti critici). (Dico manualmente, idealmente voglio innescare manualmente un aggiornamento su tutti loro, ma questo è un altro problema).
Ma sei occupato, le attività scivolano ecc. Quindi voglio impostare un controllo dei nagios che inizierà a darci fastidio se lo lasciamo troppo a lungo.
La ricerca sul web non mi ha portato molto lontano. Frugando nel sistema, la cosa migliore che ho trovato finora sarebbe qualcosa del tipo:
grep Updated /var/log/yum.log | tail -1 | cut -d' ' -f 1-2
che mi dà qualcosa di simile Mar 12
che posso quindi convertire in una data. Ci sono alcune piccole complicazioni sul fatto che la data sia quest'anno o l'anno scorso, e dovrei anche controllare /var/log/yum.log.1
in caso di controllo immediatamente dopo un logrotate. Ma questi sono solo dettagli di scripting.
Questo può ovviamente essere "ingannato" da un aggiornamento di un singolo pacchetto piuttosto che da un aggiornamento generale.
Quindi c'è un modo più canonico per vedere quando è yum update
stato eseguito?
Modifica: ora ho scritto un plugin Nagios NRPE che utilizza l'idea che ho avanzato nella domanda. Puoi prenderlo da https://github.com/aptivate/check_yum_last_update
history
comando disponibile. (Per lo più stiamo ancora usando CentOS 5). In realtà, ho appena provato e CentOS 6 ce l'ha. Ma non è abbastanza universale per i nostri scopi - ma sembra utile per gli altri.