Birden fazla open tabanli linux sistemi yönetiyor ve gelen önemli güncellemeler hakkında ek bir yazılım kullanmadan haberdar olmak istiyorsanız aşağıdaki bash betiği size istediğinizi verir.Kırmızı ile işaretlenmiş paket isimlerini sizin için önem ifade eden herhangi bir paket ismi ile değiştirebilirsiniz.Örneğin sisteminiz için önemli olan paket sadece mysql ve php ise o halde ilgili kısım şöyle olmalı : “mysq|php”.Kontrol edilmesini istediğiniz her paketi, pipe(“|”) ile ayırarak ekleyebilirsiniz.Güncelleme bilgileri yine kırmızı ile işaretlenen kısma yazılacak olan email adresine gönderilecek.
#!/bin/bash #Author=Ugur Engin server=`hostname` int_del=/bin/rm email="eposta" function send_email() { subject="Available Important Updates!" value="0" printf "Please review the updates to apply your system:\n\nServer: $server\n\n"> $value echo "$cmd" >> $value /bin/mail -s "$subject" "$email" < $value $int_del $value } for i in "kernel|httpd|mysql"; do cmd=`yum check-update | awk '{if($1 ~/'$i'/) print $1,$2}' |uniq |sort` done if [[ "$cmd" != "" ]] then send_email else exit 1 fi
Orjinal hali:
http://ugurengin.com/blog/code/important_update.txt
Bu aşamalardan hemen sonra, crontab’a dilediğiniz zaman diliminde bash betiğini tetikleyen bir job eklemeniz yeterli olacak.Ayrıca sunucularınızı daha geniş kapsamlı monitoring yapabilme yeteneğine sahip uygulamalar ile centralize yönetmek istiyorsanız puppet veya cfengine isimli projeleri incelemenizi öneririm.
Not: Script, yum ile paket yönetimi yapılan sistemler üzerinde çalışır.
In English:
This script is checking which important updates are available on your system using yum package management.If you want to use this script,you got to write related to package name between the loop line before run this script.So when you set its name in script of course you are going to have update notification from your system with email while important updates are available.
Share on Facebook