在 CentOS 里常说的 spool 启动慢,通常是指 与 spool 相关的服务在系统启动或重启时耗时很长,最常见的是下面几类情况。我按“常见原因 → 说明 → 解决办法”给你梳理一下。
CentOS 旧版本(尤其是 CentOS 6/7)默认或安装了 sendmail / postfix,它们的 spool 目录在:
/var/spool/mqueue # sendmail
/var/spool/postfix # postfix
邮件队列里有大量邮件
DNS 解析慢(非常常见)
/etc/hosts 配置不对,会卡很久没有配置正确 hostname
# 1. 检查队列
ls -l /var/spool/mqueue
mailq
# 2. 清理无用队列(谨慎)
postsuper -d ALL
# 或 sendmail
rm -f /var/spool/mqueue/*
# 3. 配置 hosts
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain
192.168.x.x yourhost yourhost.localdomain
# 4. 禁用不必要的邮件服务
systemctl disable sendmail
systemctl disable postfix
路径:
/var/spool/cups
systemctl disable cups
# 或
systemctl stop cups
路径:
/var/spool/cron
/var/spool/at
一般不是主要瓶颈,但可检查:
ls /var/spool/cron
强烈建议用这个:
systemd-analyze blame
systemd-analyze critical-chain
你能直接看到:
/var/spool 下文件极多时:
检查:
df -i /var
ls -l /var/spool/mqueue | wc -l
CentOS spool 启动慢,90% 是 sendmail/postfix 在启动时做 DNS 或邮件队列处理卡住了。
如果你愿意,可以告诉我:
systemd-analyze blame 的输出我可以直接帮你定位到具体服务。