2025年12月18日/ 浏览 15
标题:Linux磁盘空间管理:df与du命令高效组合使用指南
关键词:Linux磁盘空间, df命令, du命令, 磁盘分析, 系统管理
描述:本文详解Linux中df与du命令的组合使用技巧,通过实际案例演示如何精准分析磁盘空间占用情况,并提供高级用法解决常见存储问题。
正文:
在Linux系统管理中,磁盘空间监控是每个运维人员的必修课。当服务器突然告警磁盘不足时,如何快速定位”罪魁祸首”?掌握df和du这对黄金组合命令,能让你像老练的侦探一样抽丝剥茧找到问题根源。
df(Disk Filesystem)命令如同系统的雷达扫描仪,它能瞬间呈现所有挂载点的空间概况。执行以下命令获取人类可读的格式报告:
df -h
输出示例会显示每个文件系统的总容量(Size)、已用量(Used)、可用量(Avail)和使用百分比(Use%)。当某个分区的使用率超过80%时,就该拉响警报了。
实用技巧:
– 添加-T参数显示文件系统类型(ext4/xfs等)
– 使用--total汇总所有分区的统计数据
当df显示某个分区空间紧张时,du(Disk Usage)就该登场了。这个命令能递归计算目录的实际磁盘用量,是查找”空间黑洞”的利器。基础用法:
du -sh /var/log/
其中-s表示汇总统计,-h转为易读格式。如果想找出/var下所有子目录的大小排名:
du -h --max-depth=1 /var | sort -h
高阶技巧:
1. 排除特定目录:--exclude="*.cache"
2. 显示修改时间:--time配合分析老旧文件
3. 跨文件系统统计:-x避免统计挂载点
场景:/home分区突然爆满,需要快速定位大文件
第一步:用df确认问题分区
df -h /home
第二步:使用du进行三级深度扫描
du -h --max-depth=3 /home | sort -rh | head -20
第三步:针对可疑目录精细分析
find /home/user/downloads -type f -size +100M -exec ls -lh {} \;
已删除文件仍占用空间:
当进程持有已删除文件的句柄时,用lsof +L1查找并重启相关进程
稀疏文件检测:
du --apparent-size显示逻辑大小,与物理大小对比发现稀疏文件
自动清理脚本:
结合crontab定期清理日志:
find /var/log -type f -mtime +30 -delete
对于习惯图形界面的用户,可以安装:
– ncdu:交互式磁盘分析器
– baobab:GNOME磁盘使用分析器
记住,定期检查磁盘空间就像给系统做体检,预防永远比抢救更重要。建议将关键分区的监控纳入日常巡检流程,配合监控系统设置自动告警,才能防患于未然。