SHELL SCRIPT para monitorizar las cuentas de correo QMAIL y PLESK
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# DATOS FECHA=$(date +"%d-%m-%Y") SERVIDOR=dominio.com MAIL=/var/qmail/mailnames/ REPORTE=/home/backup/reporte.txt EMAIL=correo@dominio.com USUARIO=popuser ALERTA_DOMINIO=1000 ALERTA_CUENTA=500 ALERTA_COLA=`/var/qmail/bin/qmail-qstat` touch $REPORTE echo "Servidor: $SERVIDOR" >>$REPORTE echo "Fecha: $FECHA" >>$REPORTE echo "Limite dominio: $ALERTA_DOMINIO mb" >>$REPORTE echo "Limite cuenta correo: $ALERTA_CUENTA mb" >>$REPORTE echo "En cola de correo: $ALERTA_COLA" >>$REPORTE echo "----------------------------------------------------" >>$REPORTE for DOMINIO in `ls -l $MAIL | grep $USUARIO | awk {'print $9'}` do USO_DOMINIO=`du -sm $MAIL/$DOMINIO | awk {'print $1'}` TOTAL=$[TOTAL+=$USO_DOMINIO] if [ $USO_DOMINIO -ge $ALERTA_DOMINIO ]; then echo "* $DOMINIO $USO_DOMINIO mb" >>$REPORTE fi for CUENTA in `ls -l $MAIL/$DOMINIO | awk {'print $9'}` do if [ -d $MAIL/$DOMINIO/$CUENTA ]; then USO_CUENTA=`du -sm $MAIL/$DOMINIO/$CUENTA | awk {'print $1'}` LEIDOS=`ls $MAIL/$DOMINIO/$CUENTA/Maildir/cur | wc -l` NUEVOS=`ls $MAIL/$DOMINIO/$CUENTA/Maildir/new | wc -l` if [ $USO_CUENTA -ge $ALERTA_CUENTA ]; then echo "$CUENTA@$DOMINIO $USO_CUENTA mb (Leidos: $LEIDOS, Nuevos: $NUEVOS)" >>$REPORTE fi fi done done echo "---------------------------------------------------" >>$REPORTE echo "Total Ocupado: $TOTAL mb" >>$REPORTE mail -s "Servidor | correo | $SERVIDOR" $EMAIL <$REPORTE rm -f $REPORTE |