[Qmail-it] Cancellare contenuto caselle piene.
Valerio Felici
valerio at bgweb.it
Tue Nov 21 14:30:56 CET 2006
Alle 13:32, martedì 21 novembre 2006, Simone Maillaro ha scritto:
> Salve ragazzi, sapete se c'è un modo per poter svuotare la casella di
> posta elettronica cur/new senza andarlo a fare a mano? Mi ritrovo 1200
> accounts di utenti che non controllano la posta dal 2004 e sinceramente
> vorrei evitare di fare un rm di ogni casella sennò divento pazzo.
> Magari un pannello vi web che mi fa vedere l'ultima autenticazione e
> che poi mi permetta di svuotare tutto. Grazie.
>
già passato in lista qualche tempo fa, ecco la soluzione che uso io,
ovviamente perfezionabile e da adattare alle proprie esigenze:
#!/bin/bash
# dove sono i miei domini?
BASEDIR = /un/qualche/posto/del/filesystem
# in ./elencoDominiConPosta.txt ho l'elenco dei domini di cui ho anche gli
# utenti per il servizio di posta
for i in $(awk 'BEGIN{FS=":"}{print $1}' < ./elencoDominiConPosta.txt)
do
# non voglio essere bastardo con tutti, alcuni possono tenere la posta
# anche se è di 5 secoli fa, così in ./elencoDominiConPostaDaTenere.txt
# ho l'elenco dei domini "amici"
if grep -q $i ./elencoDominiConPostaDaTenere.txt
then
echo "$i LO TENGO."
else
echo "$i è da buttare."
# mi sposto nella dir users
cd $BASEDIR/$i/users
# trovo tutti i files più vecchi di 100 giorni e metto il loro nome
# in un file temporaneo, il matching col nome forse potrebbe essere
# migliorato anche perchè ad 11.... ci siamo arrivati durante il 2004.
# Nel mio caso le mailbox sono all'interno della directory users.
find -name "11*" -type f -mtime +100 > /tmp/vecchieMail-$i.txt
# creo un archivio compresso e lo deposito nella dir /oldMail, non
# si sa mai
tar -cj -T /tmp/vecchieMail-$i.txt -f /oldMail/$i.tar.bz2
# elimino l'elenco nel file temporaneo
rm -f /tmp/vecchieMail-$i.txt
# elimino le vecchie mail...addio :-)
# magari prima è meglio provare lo script commentando la riga seguente
# in modo di provarlo "a secco".
find -name "11*" -type f -mtime +100 | xargs -n 1 rm -f
fi
done
echo -n "Fine!"
--
A presto
-Valerio-
More information about the Qmail-it
mailing list