Différences
Cette page vous affiche les différences entre la révision choisie et la version actuelle de la page.
|
scripts:exemples:purges [2007/01/27 20:05] lois typo + précisions |
scripts:exemples:purges [2007/04/06 13:28] (Version actuelle) lois suivi des conseils de vinc17, pour "grep -v *$", man grep ;) |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== 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. | ||
| + | |||
| + | <code bash> | ||
| + | #!/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 | ||
| + | </code> | ||
| + | |||
| + | |||
| + | ===== Purge des deferred postfix ===== | ||
| + | |||
| + | À //crontaber// en fonction du volume de mails en transit... | ||
| + | |||
| + | <code bash> | ||
| + | #!/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 | ||
| + | </code> | ||
scripts/exemples/purges.txt · Dernière modification: 2007/04/06 13:28 par lois



