在日常使用 RockyLinux 系统时,我们经常会遇到磁盘空间不足的问题。这时候,就需要一个强大的工具来帮助我们快速定位哪些目录或文件占用了大量空间。du 命令(disk usage 的缩写)正是完成这项任务的利器。
什么是 du 命令?
du 是 Linux 系统中用于估算文件和目录磁盘使用情况的标准命令。通过它,你可以查看某个目录及其子目录占用的总空间、每个子目录的大小,甚至按人类可读的格式(如 KB、MB、GB)显示结果。
基本语法
du 命令的基本语法如下:
du [选项] [目录或文件路径]
常用选项说明
-h:以人类可读的格式显示(例如 1K、234M、2.1G) -s:仅显示总计大小,不列出每个子目录 --max-depth=N:限制递归深度为 N 层 -a:显示所有文件和目录的大小(默认只显示目录) --exclude=PATTERN:排除匹配特定模式的文件或目录实战示例
1. 查看当前目录总大小(人类可读格式)
du -sh .
输出示例:
2.3G .表示当前目录总共占用 2.3GB 空间。
2. 查看 /var 目录下各子目录大小(限制深度为1)
du -h --max-depth=1 /var
这会列出
/var/log、
/var/cache、
/var/lib等一级子目录各自的大小,方便你快速找出“大块头”。
3. 排除某些目录(例如排除 .git)
du -sh --exclude='.git' /home/user/myproject
在分析项目目录时非常有用,避免被版本控制文件干扰判断。
4. 按大小排序(结合 sort 命令)
du -h --max-depth=1 /home | sort -hr
这条命令会列出
/home下所有用户目录的大小,并按从大到小排序(注意:-h 参数需要 GNU sort 支持,RockyLinux 默认满足)。
常见问题解答
Q:du 和 df 有什么区别?
A:
df显示整个文件系统的磁盘使用情况(如挂载点、总空间、可用空间),而
du专注于具体目录或文件的占用空间。两者常配合使用。
Q:为什么 du 显示的大小和实际文件大小不一致?
A:Linux 文件系统存在“块大小”概念,即使一个文件只有 1 字节,也会占用至少一个块(通常是 4KB)。此外,硬链接、稀疏文件等也会影响统计结果。
总结
掌握 RockyLinux du命令 是系统管理和日常运维的基础技能。通过本文介绍的选项和示例,即使是 Linux 新手也能轻松查看目录空间使用情况,快速定位磁盘空间瓶颈。建议多在测试环境中练习,熟悉各种组合用法。
如果你正在排查 RockyLinux磁盘使用情况,不妨现在就打开终端,试试这些命令吧!更多进阶技巧,欢迎持续关注我们的 Linux du教程系列。
