====== Scripts de purge ======
===== Purge des files d'impression =====
Ce script tourne sur le serveur d'impression, il est exécuté toutes les 5mn par cron.
#!/bin/bash
# adm/vider_lp.sh
# purge des files d'attente imprimantes
# en crontab, toutes les 5mn
# (c) 2006 - Loïs et Smeï - GPL
PRINTERS="LW106 LW171 HP1-S14 HP2-S14"
#echo "vidange des files d'impressions"
for i in $PRINTERS;
do
lpq -P$i | grep -q 'is not ready' || continue
echo "`date +%a-%Y%m%d-%H:%M` : " >> /var/log/vider_lp.log
echo -n "$i était arrêtée - Purge et Relance : " >> /var/log/vider_lp.log
/usr/sbin/reject $i
/usr/bin/disable -c -r "Vidange automatique en cours" $i
lprm -P$i -
/usr/bin/enable $i
/usr/sbin/accept $i
echo "ok" >> /var/log/vider_lp.log
done
===== Purge des deferred postfix =====
À //crontaber// en fonction du volume de mails en transit...
#!/bin/sh
# (c) 2005 Smeï & Loïs
# $Id: purge_deferred.sh 46 2007-04-05 11:12:48Z maintenance $
# Purge les mails de MAILER-DAEMON en deferred, avec un score SpamAssassin
#
TMPFILE=$(mktemp /tmp/purge_deferred.XXXXXXXX) || exit 1
DEFERDIR=/var/spool/postfix/deferred
test -e /usr/sbin/postqueue && {
echo "====================================="
echo "Début Purge deferred"
echo
echo "Mail dans la queue avant : "
postqueue -p | tail -1
# collect the filenames
mailq | grep MAILER-DAEMON | cut -f1 -d ' ' | grep -v *$ > $TMPFILE
# mailq | grep bounces@listes | cut -f1 -d ' ' | grep -v *$ > $TMPFILE
for DEFERFILE in `cat $TMPFILE`
do
FILEPATH=`find $DEFERDIR -name $DEFERFILE`
egrep -i 'X-Spam-Status: Yes' $FILEPATH > /dev/null
if [ $? -eq 0 ]
then
echo -n "."
# deferred message is most likely spam
postsuper -d $DEFERFILE deferred > /dev/null 2>&1
fi
done
rm -f $TMPFILE > /dev/null
echo
echo "Mail dans la queue après :"
postqueue -p | tail -1
echo
echo "Fin Purge deferred"
echo "====================================="
}
exit 0