Linux Spool 错误排查步骤
一 明确问题与服务类型
systemctl status <服务名>(如 cups、sendmail、postfix)journalctl -xe -u <服务名> 或 tail -f /var/log/<服务日志>(如 /var/log/cups/error_log、/var/log/maillog、/var/log/mail.log)二 通用排查流程
ls -ld /var/spool /var/spool/<子目录>systemctl restart <服务名>lpstat -p -d;邮件用 mailq 或发送测试邮件三 按服务类型的要点与命令
| 服务 | 关键目录 | 常用命令 | 配置要点 |
|---|---|---|---|
| CUPS 打印 | /var/spool/cups | systemctl status cups、lpstat -p -d、tail -f /var/log/cups/error_log |
检查 /etc/cups/cupsd.conf;必要时重置配置并重启 |
| Postfix 邮件 | /var/spool/postfix | systemctl status postfix、mailq、tail -f /var/log/mail.log |
核对 /etc/postfix/main.cf 中 queue_directory;目录属主 postfix:postfix |
| Sendmail 邮件 | /var/spool/mqueue | systemctl status sendmail、tail -f /var/log/maillog |
核对 /etc/mail/sendmail.cf;必要时创建缺失子目录并设权 |
| Cron 任务 | /var/spool/cron | systemctl status cron、grep CRON /var/log/cron |
检查 /etc/crontab 与 /var/spool/cron/* 权限与属主,避免误删或权限过宽 |
以上目录、命令与配置要点可快速覆盖大多数 spool 相关故障场景。
四 常见错误与修复示例
sudo mkdir -p /var/spool/cups && sudo chown -R root:lp /var/spool/cups && sudo chmod -R 755 /var/spool/cupssudo mkdir -p /var/spool/postfix && sudo chown -R postfix:postfix /var/spool/postfix && sudo chmod -R 755 /var/spool/postfixsudo mkdir -p /var/spool/mqueue && sudo chown -R daemon:daemon /var/spool/mqueue && sudo chmod -R 755 /var/spool/mqueuesystemctl status 显示 failedjournalctl -xe -u <服务名> 定位错误,修复后 systemctl restart <服务名>;必要时检查依赖:systemctl list-dependencies <服务名>五 验证与收尾
lpstat -p -d 查看队列与状态;提交测试打印任务观察是否出纸mailq 查看队列是否减少;发送测试邮件验证投递tail -f /var/log/cups/error_log