CentOS 上 Spool 故障排查与修复指南
一、先快速定位问题
systemctl status postfix、systemctl status sendmail、systemctl status cupsjournalctl -xe -u postfix、journalctl -xe -u cups,或 tail -f /var/log/maillog、tail -f /var/log/cups/error_logsystemctl list-dependencies <服务名>,确认网络、磁盘等资源充足。lpstat -p -d 或 cupsctl --debug-logging 辅助定位。二、邮件队列 Spool 故障修复
/etc/postfix/main.cf 中的 queue_directory(默认 /var/spool/postfix)sudo mkdir -p /var/spool/postfix
sudo chown -R postfix:postfix /var/spool/postfix
sudo chmod -R 755 /var/spool/postfix
sudo systemctl restart postfix
/etc/mail/sendmail.cf 中的 O QueueDirectory /var/spool/mqueuesudo mkdir -p /var/spool/mqueue
sudo chown -R root:mail /var/spool/mqueue
sudo chmod 755 /var/spool/mqueue
sudo systemctl restart sendmail
mailq(Postfix)、sendmail -bp(Sendmail)tail -f /var/log/maillog;发送测试邮件验证:echo "Subject: Test" | mail -s "Test Email" your_email@example.com
三、打印队列 Spool 故障修复
sudo mkdir -p /var/spool/cups
sudo chown -R root:lp /var/spool/cups
sudo chmod 755 /var/spool/cups
sudo systemctl restart cups
systemctl status cups、journalctl -xe -u cups、tail -f /var/log/cups/error_loglpstat -p -d;必要时启用调试日志:cupsctl --debug-logging四、Spool 目录损坏或异常时的处理
ls -ld /var/spool /var/spool/postfix /var/spool/mqueue /var/spool/cupsdf -h;若磁盘满,先清理无关大文件再继续。