#!/bin/zsh ## ## check-samba ## ## Made by stransky ## Login stransky ## ## Started on jeu 01 oct 2000 19:25:35 CET Jérôme Kieffer ## Last update sam 01 fév 2003 00:24:11 CET Nicolas STRANSKY ## # surveillance de nmbd LOG=/var/log/cransMisc/samba-master.log master=$(smbclient -N -L zamok |grep -A5 Master |grep CRANS | awk '{print $2}') if [ "$master" != 'ZAMOK' ]; then echo "$(date) : Crans local master is \"$master\" ; waiting to confirm..." >> $LOG # on attend pour être sûr que zamok n'est pas justement en train de déclencher une élection : sleep 35 # on refait le test : master=$(smbclient -N -L zamok |grep -A5 Master |grep CRANS | awk '{print $2}') # Si on est sûr que ça chie, on sort les armes : if [ "$master" != 'ZAMOK' ]; then echo "$(date) : Crans local master is \"$master\" ; restarting samba" >> $LOG echo -n "$(date) : " >> $LOG /id/samba stop >> $LOG 2>&1 sleep 1 echo -n "$(date) : " >> $LOG (killall -9 nmbd && echo "remaining nmbd process killed") >> $LOG 2>&1 # tant qu'à faire on peut killer complètement nmbd echo -n "$(date) : " >> $LOG /id/samba start >> $LOG 2>&1 else echo "$(date) : Well done, good boy" >> $LOG fi fi