Yum güncellemesinin son çalıştırılma zamanı nasıl kontrol edilir


12

yum updateBir sistemde en son ne zaman çalıştırıldığını öğrenmenin standart bir yolu var mı ?

Kurulumumuz, otomatik güncellemeleri çalıştıran hazırlama sunucularımız olduğu ve devrilmeleri şartıyla üretim sunucularımızı ayda bir kez manuel olarak güncelleyeceğiz (kritik güncellemeleri kısıtlama). (Manuel olarak söylüyorum, ideal olarak hepsinde bir güncellemeyi manuel olarak tetiklemek istiyorum, ancak bu başka bir sorun).

Ama meşgul oluyorsunuz, görevler kayıyor vb. Bu yüzden çok uzun bıraktığımızda bizi rahatsız edecek bir nagios kontrolü kurmak istiyorum.

Web'de arama yapmak beni çok ileri götürmedi. Sistemin etrafında dolaşmak, şimdiye kadar bulduğum en iyi şey şöyle bir şey olurdu:

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

bu da bana Mar 12bir tarihe dönüşebileceğim bir şey veriyor . Tarihin bu yıl mı yoksa geçen yıl mı olduğu hakkında birkaç küçük komplikasyon var ve ayrıca /var/log/yum.log.1bir logrotattan hemen sonra kontrol edilmesi durumunda da kontrol etmem gerekiyor . Ama bu sadece betik detayları.

Bu elbette genel bir güncellemeden ziyade tek bir pakette yapılan bir güncelleme ile 'kandırılabilir'.

Öyleyse ne zaman yum updateçalıştırıldığını görmenin daha kanonik bir yolu var mı?

Düzenleme: Şimdi soruya ileri sürdüğüm fikri kullanan bir Nagios NRPE eklentisi yazdım. Bunu https://github.com/aptivate/check_yum_last_update adresinden alabilirsiniz.

Yanıtlar:


20

Yum geçmişi seçeneği, kullanıcının geçmiş işlemlerde ne olduğunu görmesini sağlar. Daha basit sen grep edebilirsiniz yapmak için Güncelleştirme gelen yum tarihinin

# 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
Hangi yum sürümünü kullanıyorsunuz - historykomutun mevcut olduğu anlaşılmıyor . (Çoğunlukla hala CentOS 5 kullanıyoruz). Aslında, sadece denedim ve CentOS 6'da var. Ama bizim amaçlarımız için yeterince evrensel değil - ama diğerleri için yararlı görünüyor.
Hamish Downer

1
Evet bu yum sürüm 3.2.29 ile centos 6.x. Teşekkür ederim
Chakri

1
Yükleme ve Güncelleme'nin bir kombinasyonu varsa, Eylem sütununda I, Ugrep'i biraz daha karmaşık hale getirir. Güncellenmiş bir paket yeni bir pakete bağlıysa ve yeni paketin yüklenmesine neden olursa bu durum oluşabilir.
Hamish Downer

Bazen başka bir şey yüklerken güncellemeler gerçekleştiği için, bunları da görmek istiyorsanız, çıktıyı grep'ten şu şekilde geçebilir: yum geçmişi | grep 'U', güncelleme içeren tüm çalışmaları yakalar.
JJC

2

Bence kesinlikle emin olmanın tek yolu koşmaktır psacct.

Bu koşmanıza izin verecektir lastcomm yum. Bunu ayrıştırırsanız, kimin ne zaman çalıştırdığını bileceksiniz.


1

Sanırım bir dev yum deposuna bir dizi 'Dev' sunucusu işaret ediyor musun?

Otomatik yükseltmeyi, başarı üzerine bir dosyaya yazan bir cron / kukla / şef komut dosyasında yapabilirsiniz. (söyle /etc/yum_last)

Ardından yum check-update, herhangi bir güncellemenin olup olmadığını görmek için Dev sunucularındaki periyodik olarak cron / other dizinini kullanabilirsiniz. Bu komutta> 0 güncelleştirme sayısı varsa, geçerli tarihi en son otomatik yum yükseltmesini yaptığınızda oluşturduğunuz dosya zaman damgasıyla karşılaştırırsınız.

Bu tarih farkı günler içinde büyürse, Nagios uyarısı alabilirsiniz.

İhtiyaçlarınıza uygunsa Pulp'a da bakabilirsiniz .


0

Aşağıdaki komut en son yüklenen veya güncellenen RPM paketlerini listeler:

rpm -qa --last  | head

YUM dışında kurulu paketleri de içerebilir. Bu komut kök ayrıcalığı olmadan da çalışabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.