
drwxr-xr-x 2 smmsp smmsp 4.0K May 6 23:31 mqueue
drwxrws--- 2 smmsp smmsp 29M May 8 10:40 mqueue-client
Como puedes ver mqueue-client
está lleno de 29 megas de correo no enviado. Esto parece deberse probablemente a una función interna que envía correo a localhost y que está fallando.
Intenté numerosos intentos de borrar la cola pero ninguno tuvo éxito. El resultado es un proceso que consume importantes recursos de CPU:
16287 smmsp 20 0 50212 44m 2416 R 85 4.4 965:35.45 sendmail-msp
Intenté finalizar el proceso, detener el servicio sendmail, eliminar el contenido del mqueue-client e incluso cambiar al usuario smmsp. Pero ninguno ha funcionado. rm
Se cuelga al intentar eliminar el correo.
¿Cómo puedo vaciar esta cola?
Una vez que haya hecho esto, trasladaré todo a Postfix.
Respuesta1
Como sugirió Janne en los comentarios, revisé mi syslog
correo y encontré muchos errores que no enviaban, lo que provocaba que se aplazaran y se acumularan en la mqueue-client
carpeta.
Después de investigar un poco, resultacrontabestá configurado como raíz del correo al finalizar/avisos/advertencias/errores. Al emitir crontab -e
y agregar MAILTO=""
en la parte superior de la configuración, no se envía más correo, ¡problema solucionado!
Ahora estoy eliminando aproximadamente 1,5 millones de correos electrónicos incorrectos mediante mqueue-client
el uso de este script Bash:
#!/usr/bin/env bash
cd mqueue-client
deleted=0
for i in `ls`
do
rm -f $i
percentage=$(bc <<< "scale=2; ($deleted / 1035435) * 100")
((deleted++))
echo "Deleted $i. Files deleted $deleted. $percentage% complete."
done
Ejecutar desde /var/spool usando./filename
Actualizar
Desafortunadamente, después de ejecutar este script toda la noche, la cola de correo no se redujo significativamente. Esto se debió a que no había desactivado el minuto de ejecución de CRON que estaba configurado para borrar la cola, pero estaba provocando que el trabajo pendiente creciera. Con suerte, ahora esto está deshabilitado y todo debería aclararse.