Muchos clientes borran los emails del webmail pero luego no vacían la papelera (trash) con lo cual sus espacios se van llenando. A su vez, las carpetas de spam tampoco son limpiadas por los clientes con regularidad provocando la misma situación.
Con la finalidad de asegurar que las carpetas de la papelera y el spam sean limpiadas cada semana debemos crear el siguiente script:
cd /usr/local/src
nano limpiar_papeleras.sh
Insertar lo siguiente:
#!/bin/bash
MAILDIRS=$(find /home/*/mail/*/* -maxdepth 0 -type d)
INBOXFOLDERS=(.Trash .Junk .Spam .Low\ Priority .cPanel\ Reports)
for basedir in $MAILDIRS; do
for ((i = 0; i < ${#INBOXFOLDERS[*]}; i++)); do
for dir in cur new; do
[ -e "$basedir/${INBOXFOLDERS[$i]}/$dir" ] && (
echo "Procesando $basedir/${INBOXFOLDERS[$i]}/$dir..."
find "$basedir/${INBOXFOLDERS[$i]}/$dir/" -type f -mtime +7 -delete
)
done
done
done
/scripts/generate_maildirsize --verbose --allaccounts --onlyrecalculate --confirm
Guardar el archivo y ejecutar:
chmod 755 limpiar_papeleras.sh
Ahora ejecutar el script para limpiar las papeleras por primera vez:
./limpiar_papeleras.sh
Y para asegurar que se ejecute todos los lunes a las 4:30am ejecutamos:
crontab -e
Colocamos al final:
30 4 * * 1 /usr/local/src/limpiar_papeleras.sh > /dev/null 2>&1
Guardamos el archivo y luego ejecutamos
service crond restart
LISTO.