Linux 新手必会的 5 个磁盘清理命令:df、du、ncdu 安全清理实战

举报
yd_245888483 发表于 2026/11/10 23:56:24 2026/11/10
【摘要】 磁盘满了别急着 rm -rf。按 df 看整体、du 定位目录、ncdu 交互清理、journalctl 清日志、apt-get clean 清缓存的顺序,5 个命令安全清理,新手照做就能避坑。

磁盘满了,先别急着删。很多新手上来就 rm -rf,删错一个目录,服务可能直接起不来。正确顺序是先看整体,再定位大文件,最后只清理能确认的东西。下面 5 个命令,按这个顺序用就够了。

1. df -h:先看哪块盘满了

df 看的是文件系统整体用量,不是某个文件夹有多大。

df -h
df -hT

先看 Use% 和挂载点。如果根目录是 100%,再看 /var、/home 是不是单独挂载的,问题可能在某个分区上。

新手坑:只盯着根目录的数字,忽略了真正满的是 /var;磁盘还有空间也可能 inode 用完了,这时要用 df -i 看。

2. du -sh:定位哪个目录在变胖

知道哪块盘满了,再用 du 找具体目录。

du -sh /var/*
du -sh /* 2>/dev/null | sort -rh | head -10

du -sh 只给汇总数字,适合一步步向下钻:先看一级目录,再进最大的那个继续查。

新手坑:du 不加 -s 会输出海量结果;/proc 和 /sys 是虚拟文件系统,不要动。

3. ncdu:交互式找大文件

ncdu 把目录树按大小排好,上下键移动,回车进子目录,按 d 删除选中文件。

ncdu /var/log

清理日志和缓存时尤其直观,一眼就能看到是谁占了几个 G。

新手坑:系统可能没装 ncdu,要先安装;不要一上来就 ncdu / 全盘扫描,又慢又容易误删,先缩小到 /var/log 这类目录,删除前再看一眼文件名。

4. journalctl --vacuum-size:安全清理系统日志

systemd 日志越攒越多,用 journalctl 自带的清理方式,比直接删文件安全。

journalctl --disk-usage
journalctl --vacuum-size=200M

也可以用 --vacuum-time=7d,只保留最近 7 天的日志。

新手坑:不要直接删 /var/log/journal 下的文件,容易删到正在写入的日志;留最近几天的日志,出了问题还能查。

5. apt-get clean:清理软件包缓存

装软件留下的安装包缓存,占的空间经常被忽略。

sudo apt-get clean
sudo apt-get autoremove

Debian/Ubuntu 用上面两条,CentOS/RHEL 系用 dnf clean all。clean 只清缓存,一般很安全。

新手坑:autoremove 会删不再需要的依赖包,执行前先看清单,不要加 -y 盲目确认;生产机先在测试机上试一遍。

收尾:删完记得验证

先 df -h 确认空间真的回来了,再看一眼服务日志,确认应用还能正常写日志。建议留出 20% 左右的余量,并设一个用量告警,下次到 80% 就处理,别等到 100% 才救火。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。