Ubuntu df/du命令:查看磁盘空间使用情况

在Linux系统中,磁盘空间管理是日常运维的重要环节。无论是排查系统故障、清理冗余文件,还是规划存储空间,都需要先了解磁盘的使用情况。Ubuntu系统提供了两个常用工具:dfdu,它们能帮助我们分别从整体分区具体目录/文件的角度查看磁盘空间占用。

df命令:查看磁盘分区整体使用情况

df(Disk Free的缩写)用于显示整个磁盘分区的空间使用情况,包括总容量、已用空间、可用空间及使用率。

基本用法与参数

直接输入 df 会显示所有挂载分区的信息,但默认单位是字节(不直观),建议结合 -h 参数(人类可读格式,自动转换为KB/MB/GB):

df -h

常用参数:
- -h:以人类可读单位显示(如 1K1K1.2G1.2G
- -T:显示文件系统类型(如 ext4xfs 等)
- -i:显示inode使用情况(inode是文件系统中记录文件元数据的“索引节点”,inode满了也会导致无法创建新文件)

输出结果解释

执行 df -h 后,输出示例如下:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2       20G   15G  4.8G  76% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
/dev/sdb1       50G   10G  40G  20% /home
  • Filesystem:挂载的磁盘设备或文件系统(如 /dev/sda2 是第一个磁盘的第二个分区)。
  • Size:分区总容量。
  • Used:已用空间。
  • Avail:可用空间。
  • Use%:磁盘使用率(超过85%建议清理)。
  • Mounted on:挂载点(即该分区挂载到系统的哪个目录下,如 / 是根目录,/home 是用户目录)。

关键说明

  • 挂载点:Linux系统通过“挂载”将磁盘分区与目录树关联。例如,/home 目录挂载在 /dev/sdb1 分区,所有用户文件默认存放在 /home/用户名 下。
  • 特殊分区tmpfs 是内存虚拟文件系统,无实际磁盘空间,可忽略其使用率。

du命令:查看具体目录/文件的空间占用

du(Disk Usage的缩写)用于显示指定目录或文件的详细磁盘占用情况,与 df 的区别是:df 关注分区整体,du 关注具体内容。

基本用法与参数

du 的基础语法为 du [选项] [目录/文件],常用参数:
- -h:人类可读单位(同 df -h)。
- -s:仅显示总和(不展开子目录)。
- -a:显示所有文件和目录(包括隐藏文件,默认不显示)。
- -c:在最后一行显示所有统计的总和。
- -sh:组合 -s(仅总和)和 -h(人类可读),适合快速查看目录总大小。

常用示例

  1. 查看单个目录总大小
    如查看 /home 目录的总占用:
   du -sh /home

输出类似:2.5G /home(表示 /home 目录共占用2.5GB空间)。

  1. 查看目录下所有子目录大小
    如当前目录下各子目录的大小(不显示文件细节):
   du -h --max-depth=1

--max-depth=1 仅显示一级子目录(不加则递归所有层级)。

  1. 显示目录下所有文件大小
    如查看 /tmp 目录下所有文件(含隐藏文件)的大小,并按降序排序:
   du -ah /tmp | sort -hr | head -n 10
  • -a:显示所有文件(包括隐藏文件)。
  • sort -hr:按大小降序排序(-h 是人类可读排序)。
  • head -n 10:取前10个最大文件。
  1. 查看文件具体大小
    如查看 bigfile.txt 的大小:
   du -h bigfile.txt

df vs du:区别与使用场景

工具 作用范围 特点 典型场景
df 磁盘分区整体 显示分区总容量、已用/可用空间,单位统一为分区容量 检查系统磁盘是否整体不足(如根分区 / 使用率超过85%)
du 目录/文件细节 显示指定目录或文件的具体占用,可深入子目录 定位大文件/目录(如清理缓存、日志文件)

总结:磁盘空间管理步骤

  1. 检查整体分区:先用 df -h 查看所有分区使用率,定位空间不足的分区(如 //home)。
  2. 定位大目录:用 du -sh /path/to/dir 查看目标分区下的大目录,再用 du -h --max-depth=1 /path/to/dir 逐层排查子目录。
  3. 清理冗余文件:对大目录(如 Downloadsapt 缓存),可删除无用文件或归档备份。

通过 dfdu 的组合使用,能高效管理磁盘空间,避免因空间不足导致系统异常。

小夜