Michael Heiming wrote: > Hi! > > In comp.os.linux.misc there came up a question yesterday: > > "Yum -y updating of a PRODUCTION WebServer" > > Someone pointed out an available "cron-apt" package only > checking/mailing for apt updates. Nice idea, find my yum version below > which should do the same using yum. > > Added: /usr/bin/yum-check > Added: /etc/sysconfig/yum Now: /etc/sysconfig/yum-check To prevent any confusion with /etc/yum.conf > Modified: /etc/cron.daily/yum.cron > > Perhaps it's useful for people wanting to run yum manually without > abandoning checking for updates from cron and receive alerts via mail, > if there are patches available? Fixed a few things, like randomizing startup if running as desired from cron. /usr/bin/yum-check: #!/bin/bash # # Name: yum-check # Author: Michael Heiming - 2005-03-11 # Function: Run from cron to check for yum updates # and mail results # Version: 0.7 (initial) # 2005-03-12 0.8 randomize startup (cron only) # Config: /etc/sysconfig/yum # Pull in sysconfig settings . /etc/sysconfig/yum maila=${MAILTO:=root} yumdat="/tmp/yum-check-update.$$" yumb="/usr/bin/yum" if ! [ -t ] then num=$RANDOM let "num %= ${RANGE:=1}" sleep $num fi #rm -f ${yumdat%%[0-9]*}* $yumb check-update >& $yumdat yumstatus="$?" case $yumstatus in 100) cat $yumdat |\ mail -s "Alert ${HOSTNAME} updates available!" $maila exit 0 ;; 0) # Only send mail if debug is turned on if [ ${CHECKWRK} = "yes" ];then cat $yumdat |\ mail -s "Yum check succeeded ${HOSTNAME} zero patches available." $maila fi exit 0 ;; *) # Unexpected yum return status (echo "Undefined, yum return status: ${yumstatus}" && \ [ -e "${yumdat}" ] && cat "${yumdat}" )|\ mail -s "Alert ${HOSTNAME} problems running yum." $maila esac [ -e "${yumdat}" ] && rm ${yumdat} ### END ### /etc/cron.daily/yum.cron: #!/bin/sh # Pull in sysconfig settings . /etc/sysconfig/yum-check if [ -f /var/lock/subsys/yum ]; then if [ ${CHECKONLY} = "yes" ];then /usr/bin/yum-check fi else /usr/bin/yum -R 10 -e 0 -d 0 -y update yum /usr/bin/yum -R 120 -e 0 -d 0 -y update ### End ### /etc/sysconfig/yum-check: # yes sets yum to check for updates and mail only if patches are available # no does enable autoupdate if /var/lock/subsys/yum is available CHECKONLY="no" # defaults to root, leave empty if .forward/alias in place for root MAILTO="" # Set to yes for debugging only! You'll get a mail for each run! CHECKWRK="no" # Seconds to randomize startup, if running from cron to balance load RANGE="3600" ### End ### Any opinions about it? Michael Heiming