Linux 磁盘满了:用命令行排查并释放空间

针对 Linux 磁盘占满的排查修复指南:定位满载分区、揪出大文件、清理缓存日志,并确认空间真正释放。

Linux文件系统磁盘故障排查lsof 文件占用诊断中风险
先用可读的单位查看各分区使用率,确认是哪个挂载点满了、有多满。

快速开始

Linux 磁盘一满,问题会接连出现:写入失败、应用启动报错、日志里不断刷 "No space left on device"。这份指南按最有效的顺序来:先确认哪个分区满了,再找出最占空间的东西,接着清理系统级的缓存和日志,最后确认空间确实释放了。

症状

?命令报错 "No space left on device",应用崩溃或无法保存文件,df 显示某个挂载点使用率在 95–100%。

先弄清楚哪个文件系统满了

先确认问题并定位它。用人类可读的单位查看各挂载点的使用情况,重点看 Use% 列。如果某个挂载点(通常是 /)已达 95% 以上,它就是要处理的目标。知道是哪个分区满了,后面的清理步骤才有方向。

以人类可读的单位显示每个已挂载文件系统的总容量、已用空间、可用空间和使用百分比。

命令
$ df -h

排查被进程占用却已删除的文件

如果 df 显示磁盘快满,但 du 统计的总量却小得多,多半是进程仍在占用已删除的文件。这一步能列出这些文件及占用它们的进程——重启或结束对应进程,空间会立刻释放。如果 df 与 du 的结果一致,可以跳过这步。

当 df 显示磁盘满但 du 却找不到大文件时,多半是有进程还握着已删除的文件;lsof +L1 能把它们和占用进程一起列出来。

命令
$ sudo lsof +L1

找出最占空间的文件

对 df 标记出来的那个分区做一次扫描,按大小浏览目录树。目录和文件会从大到小排列,可以一路钻进缓存、旧下载或日志目录,直接在界面里删除不需要的内容。逐个处理排名靠前的条目,边删边留意剩余空间。

ncdu 扫描目录树后可以按大小浏览、逐层下钻,并一键删除占空间的文件,不用再反复 du 加 sort。

命令
$ ncdu /

系统级清理缓存和日志

手工翻目录容易漏掉的地方,bleachbit 都知道——系统缓存、日志和常用应用的临时文件位置它都内置了。先预览有哪些清理项,再勾选执行。root 所属的缓存用 sudo 做系统级清理。在 ncdu 之后跑一遍,作为收尾很合适。

先列出可用清理项,再从终端清除缓存、日志和操作痕迹——可按用户清理,加 sudo 即可清理系统级文件。

命令
$ bleachbit --list | head && bleachbit --clean system.tmp firefox.cache

确认空间已经释放

再跑一次文件系统报告,对比清理前后的 Use%。刚清理的那个分区应该明显下降。如果还是很高,回到前面的排查步骤——最常见的原因是有进程仍占用着已删除的文件,导致 df 看不到释放。

以人类可读的单位显示每个已挂载文件系统的总容量、已用空间、可用空间和使用百分比。

命令
$ df -h
!删除文件以释放空间是不可逆的——用自动化清理工具前先预览,优先删除明确的垃圾(缓存、日志、旧下载),不要碰来历不明的文件。

如何确认已解决

重新查看分区使用率,确认受影响分区的 Use% 已明显低于出问题时的水平。

来源

  • df(1) — report file system disk space usage
    man7.org · technical · 2026-09-17
    依据: The df man page documents '-h' / '--human-readable' as printing sizes in powers of 1024 with human-readable units like G.
  • lsof(8) - Linux manual page
    Ubuntu Manpages · technical · 2026-09-17
    依据: The +L1 option selects files with a link count less than one, i.e. open files that have been unlinked (deleted).
  • ncdu(1) - Linux manual page
    Ubuntu Manpages · technical · 2026-09-17
    依据: ncdu is a curses-based disk usage analyzer; pressing d within the browser deletes the selected file or directory, and -o exports the scan.
  • BleachBit Command Line Interface — Official Documentation
    BleachBit · vendor-doc · 2026-09-17
    依据: Documents bleachbit --list to show available cleaners and --clean cleaner.option to wipe the selected items headlessly.
  • BleachBit — README
    BleachBit project (GitHub) · vendor-doc · 2026-09-17
    依据: Official readme: BleachBit frees disk space and guards privacy by cleaning caches, cookies, log files and shredding files.

最后验证: 2026-09-21

相关指南