温馨提示×

Debian怎样清理大文件

小樊
33
2026-08-23 00:28:58
栏目: 智能运维

在 Debian(以及大多数 Linux 系统)中,清理“大文件”通常分两步:先找出大文件,再按需删除或清理。下面给你一套常用、安全的做法。


一、查找大文件(先不要急着删)

1. 查找占用空间最大的目录(推荐)

du -h --max-depth=1 / 2>/dev/null | sort -hr | head -20

说明:

  • 从根目录 / 开始
  • 只显示一层目录
  • 按大小排序
  • 2>/dev/null 忽略权限错误

可以这样逐级深入:

du -h --max-depth=1 /home | sort -hr

2. 查找单个大文件(>100MB)

find / -type f -size +100M 2>/dev/null

查找 >1GB 的:

find / -type f -size +1G 2>/dev/null

按大小排序(更直观):

find / -type f -size +100M -exec du -h {} + 2>/dev/null | sort -hr | head -20

3. 使用 ncdu(强烈推荐)

sudo apt install ncdu
sudo ncdu /
  • 交互式界面
  • 可上下浏览、按 d 删除
  • du 更适合清理

二、常见“大文件来源”及清理建议

1. 日志文件(/var/log)

du -sh /var/log/*

清理旧日志(安全方式):

sudo journalctl --vacuum-size=200M

或手动删除旧日志(谨慎):

sudo rm /var/log/*.log.1

2. 包缓存(apt)

sudo apt clean

只删除已下载的安装包缓存,不影响系统。


3. 旧内核(非常常见)

查看当前内核:

uname -r

查看已安装内核:

dpkg --list | grep linux-image

不要删除当前正在用的内核,删除旧内核示例:

sudo apt remove --purge linux-image-5.10.0-xx-amd64

或自动移除无用内核:

sudo apt autoremove --purge

4. Docker / 容器(如果你在用)

docker system df
docker system prune -a

⚠️ 会删除未使用的镜像、容器、网络


5. 用户下载 / 视频 / 虚拟机镜像

常见位置:

~/Downloads
~/Videos
~/VirtualBox VMs

三、删除大文件的正确方式

1. 确认文件是否正在被使用

lsof | grep 文件名

如果正在使用,直接 rm 不会立刻释放空间。


2. 安全删除

rm -f 文件名

清空文件(不删除文件本身):

: > 文件名

四、防止误删的建议

✅ 删除前先备份
✅ 不要删除你不认识的系统文件
✅ 优先清理:

  • /var/log
  • apt cache
  • 旧内核
  • 下载目录

五、快速清理组合(安全)

sudo apt clean
sudo apt autoremove --purge
sudo journalctl --vacuum-size=200M

如果你愿意,可以告诉我:

  • 服务器还是桌面
  • 磁盘快满(df -h 输出)
  • 是否使用 Docker / 虚拟机 / 数据库

我可以给你更精确的清理方案

0