Archivo etiqueta qmail
multilog: fatal: unable to lock directory … temporary failure
Por admin - Administración, Linux, Qmail - Viernes, 19 junio 2009
Un error típico de Qmail al iniciarlo o reiniciarlo:
multilog: fatal: unable to lock directory /var/log/qmail/: temporary failure
multilog: fatal: unable to lock directory /var/log/qmailsmtp/: temporary failure
Una solución sencilla para solucionarlo:
# paramos el servicio. /etc/init.d/qmail stop # buscamos el proceso que está bloqueado. ps -ef |grep qmail # matamos el proceso relacionado. kill -9 numero-proceso # volvemos a iniciar el servicio. /etc/init.d/qmail start
Monitorizando nuestras cuentas de correo y envio de alertas a nuestro email.
Por admin - Administración, Linux, Qmail - Martes, 9 junio 2009
He creado este pequeño shell script que nos permitirá monitorizar todas las cuentas de correo de nuestros dominios. Para ello solo debemos indicarle unos pequeños parámetros y los límites en los que deseamos que nos envíe un reporte con una alerta.
# DATOS
FECHA=$(date +"%m-%d-%Y")
SERVIDOR=$(/usr/bin/hostname)
MAIL=/home/vpopmail/domains
REPORTE=/home/reporte.txt
EMAIL=su@correo.com
USUARIO=vpopmail # usuario de las cuentas de correo
ALERTA_DOMINIO=100 # espacio en mb
ALERTA_CUENTA=50 # espacio en mb
echo "Fecha: $FECHA" >>$REPORTE
echo "Limite dominio: $ALERTA_DOMINIO mb" >>$REPORTE
echo "Limite cuenta correo: $ALERTA_CUENTA mb" >>$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
USO_CUENTA=`du -sm $MAIL/$DOMINIO/$CUENTA | awk {'print $1'}`
if [ $USO_CUENTA -ge $ALERTA_CUENTA ]; then
echo "$CUENTA@$DOMINIO $USO_CUENTA mb" >>$REPORTE
fi
done
done
echo "---------------------------------------------------" >>$REPORTE
echo "Total Ocupado: $TOTAL mb" >>$REPORTE
mail -s "Alerta Mail - $SERVIDOR - $FECHA" $EMAIL <$REPORTE
rm -f $REPORTE
* Este shell script ha sido probado en Gentoo y Fedora.
Por último solo debemos incluirlo en nuestro crontab para que se ejecute diariamente. En Gentoo es relativamente sencillo por lo que le podemos indicar que lo ejecute diariamente.
crontab -e # incluimos la siguiente linea en nuestro contab. @daily /home/scripts/monitor-correo.sh # por último le damos permisos de ejecución. chmod 744 /home/scripts/monitor-correo.sh
Gestionar la cola de correo de Qmail con qmHandle
qmHandle es un programa escrito en Perl que nos permitirá ver y gestionar las colas de QMAIL. Muestra estadísticas, imprime y borra mensajes, etc …
wget http://optusnet.dl.sourceforge.net/sourceforge/qmhandle/qmhandle-1.3.0.tar.gz tar -xzvf qmhandle-1.3.0.tar.gz cd qmhandle-1.3.0 cp qmHandle /usr/bin/
Por defecto viene configurado para ser utilizado con daemontools por lo que he tenido que editar el script y descomentar las siguientes lineas para que pare y reinicie Qmail correctamente.
my ($stopqmail) = '/etc/init.d/qmail stop'; my ($startqmail) = '/etc/init.d/qmail start';
Clamdscan: clamd scanner error or memory/resource/perms problem, Gentoo
Por admin - Administración, Linux - Miércoles, 8 abril 2009
Resulta que desde hace poco leo en mis mail logs los siguientes errores con la ejecución de Clamdscan y no me permite reiniciar ni parar el servicio de antivirus.
tail -f /var/log/mail.log Apr 8 00:43:35 r14741 X-Qmail-Scanner-2.01st: [pc-001.mihost.com123914421576712310] clamdscan: corrupt or unknown clamd scanner error or memory/resource/perms problem - exit status 512/2 Apr 8 00:51:35 r14741 X-Qmail-Scanner-2.01st: [pc-001.mihost.com123914469576713262] clamdscan: corrupt or unknown clamd scanner error or memory/resource/perms problem - exit status 512/2
Parece que Qmail anda correctamente por lo que decido comprobar los logs del clamav en /var/log/clamav/ y veo que hay un problema con el socket.
La única solución que encontré fué borrar el clamd.socket y reiniciar el servicio del clam antivirus.
# Borramos el fichero para que se vuelva a crear. # en mi caso está en el directorio /var/run/clamav/ rm -f /var/run/clamav/clamd.socket # reiniciamos el servicio. /etc/init.d/clamd restart
Qmail, queue-repair, warning: unable to stat mess
Cuando monitorizamos en tiempo real el log de mensajes del QMAIL este podría mostrar errores al acceder a la cola de mensajes. Este error puede ser provocado por falta de espacio, la cola de correo esta dañada o con errores, etc …
tail -f /var/log/qmail/current
Uno de los errores más comunes es tener la cola de correo dañada y por lo tanto recibiremos el siguiente error cada vez que recibamos correos en nuestras cuentas …
... warning: unable to stat mess/0/0 ... warning: unable to stat mess/1/1 ... warning: unable to stat mess/1/2 ... ... warning: unable to stat mess/22/22
Una de las soluciones que encontré para rehacer la cola del qmail fué instalar queue-repair. Es un script muy útil para reparar las colas de correo, recreear la estructura de directorios de esta ó solucionar una cola dañada. Para poder usar queue-repair necesitaremos tener instalado Python 1.5.2 o superior y sobre todo estar utilizando Qmail.
//Descargamos queue-repair a nuestro directorio de trabajo wget http://pyropus.ca/software/queue-repair/queue-repair-0.9.0.tar.gz //Descomprimimos y desempaquetamos el archivo descargado. tar xfz queue-repair-0.9.0.tar.gz cd queue-repair-0.9.0 //Paramos el Qmail para evitar errores. /etc/init.d/qmail stop ./queue_repair.py -c -s 23 --no-bigtodo /var/qmail //Volvemos a iniciar el Qmail /etc/init.d/qmail start //procedemos a comprobar la cola de correo /var/qmail/bin/qmail-qread
Continuar leyendo “Qmail, queue-repair, warning: unable to stat mess”