温馨提示×

为什么debian磁盘满

小樊
43
2026-10-12 19:56:36
栏目: 智能运维

Debian(或其他 Linux 系统)“磁盘满”的原因有很多,通常不是单一问题。下面按常见程度和排查思路给你系统说明。


一、最常见的几种原因

1. 日志文件(log)无限增长

  • 位置:/var/log/
  • 常见于:
    • syslog、messages
    • 某个服务疯狂报错(如 nginx、mysql、docker)
  • 表现:
    du -sh /var/log/*
    

✅ 解决:

journalctl --vacuum-size=200M
rm -f /var/log/xxx.log.*

2. APT 缓存占满

  • 位置:/var/cache/apt/archives/
  • 装了很多软件或长期不清理

✅ 解决:

apt clean
apt autoclean

3. Docker / 容器占用

  • 镜像、容器、卷不断累积
  • 位置:
    • /var/lib/docker/

✅ 解决:

docker system prune -a

4. deleted 文件仍被进程占用(“假满”)

  • 文件已删,但进程没释放
  • df 显示满,du 却找不到

✅ 检查:

lsof | grep deleted

✅ 解决:

  • 重启对应服务
  • 或 kill 占用进程

5. 小文件 / inode 耗尽

  • 磁盘空间没满,但 inode 满
df -i

常见于:

  • 邮件队列
  • session 文件
  • 缓存目录

6. 备份 / 下载文件堆积

  • /root、/home
  • 数据库 dump、tar 包

二、快速排查命令(必会)

# 看哪个分区满
df -h

# 看目录占用
du -sh /* 2>/dev/null
du -sh /var/* 2>/dev/null

# 找大文件
find / -type f -size +500M

三、Debian 特有注意点

  • /var 单独分区时最容易满
  • 默认不自动清理 journal
  • 服务器常因 未配置 logrotate

四、如果你想更精准

你可以贴出:

df -h
du -sh /* 2>/dev/null

我可以直接帮你判断是哪一种原因,并给出具体清理命令。

0 踩