温馨提示×

ubuntu spool占用大为何

小樊
45
2026-10-18 22:01:19
栏目: 智能运维

在 Ubuntu(及其他 Linux 系统)中,spool(缓冲/队列目录)占用空间大通常是因为某些“等待处理”的文件一直没有被消费或清理。常见位置和原因如下:


一、spool 是什么

/var/spool 用于存放等待后续处理的临时数据,例如:

  • 打印任务
  • 邮件
  • cron 任务
  • 包管理器缓存

二、最常见的占用大户

1️⃣ 打印队列(cups)

路径:

/var/spool/cups

原因:

  • 打印失败的任务一直堆积
  • 大文件打印任务未清除

查看:

du -sh /var/spool/cups
lpq

清理:

sudo cancel -a
sudo rm -rf /var/spool/cups/*

2️⃣ 邮件队列(postfix / sendmail / exim)

路径:

/var/spool/mail
/var/spool/postfix

原因:

  • 邮件发送失败反复重试
  • 垃圾邮件或错误配置导致堆积

查看:

du -sh /var/spool/postfix
mailq

清理(postfix):

sudo postsuper -d ALL

3️⃣ cron / at 任务

路径:

/var/spool/cron
/var/spool/at

原因:

  • 用户创建了大量定时任务
  • at 任务未执行

查看:

du -sh /var/spool/cron
atq

4️⃣ apt / dpkg 缓存(间接相关)

虽然不在 spool,但容易混淆:

/var/cache/apt/archives

清理:

sudo apt clean

三、快速定位是谁占用大

sudo du -h --max-depth=2 /var/spool | sort -h

四、是否可以直接删?

✅ 可以删的:

  • /var/spool/cups/*
  • 邮件队列(确认无用后)

❌ 不要乱删的:

  • 正在运行的服务的 spool 目录
  • 不确定用途的子目录

如果你愿意,可以贴一下:

df -h
du -sh /var/spool/*

我可以帮你精确判断是哪一个在吃空间。

0 踩