> 软件包与系统管理 > du

du: 检查磁盘使用情况

du (disk usage) 命令用于估算并显示文件和目录占用的磁盘空间。特别是使用 `-h` 选项以人类可读的格式显示,以及使用 `-x` 选项跳过其他文件系统,仅计算当前文件系统内的使用量时非常有用。

概述

du 命令递归地计算并输出指定文件或目录的磁盘使用量。当系统磁盘空间不足时,此命令对于确定哪些文件或目录占用了大量空间至关重要。

主要功能

  • 计算文件和目录的磁盘使用量
  • 支持多种输出格式(字节、K、M、G 等)
  • 可仅在特定文件系统中计算
  • 输出摘要信息或详细信息

主要选项

du 命令支持多种选项,以便以不同的方式提供磁盘使用量信息。

输出格式和范围

生成的命令:

请尝试组合命令。

描述:

`du` 执行命令。

通过组合这些选项,您可以与 AI 一起虚拟地执行命令。

使用示例

通过 du 命令的各种使用示例,了解如何有效地获取磁盘使用量信息。

当前目录的总使用量(人类可读)

du -sh .

以 K、M、G 为单位,摘要显示当前目录及其子目录的总磁盘使用量。

根目录的磁盘使用量(单一文件系统,人类可读)

du -shx /

计算根目录 (/) 的磁盘使用量,但跳过其他已挂载的文件系统,仅在当前文件系统内以 K、M、G 为单位显示。

特定目录的子目录使用量(人类可读,深度 1)

du -h --max-depth=1 /var/log

以 K、M、G 为单位,显示 `/var/log` 目录内每个直接子目录的磁盘使用量。

查找最大的目录(当前目录)

du -h --max-depth=1 | sort -rh | head -n 5

查找当前目录中磁盘使用量最大的 5 个直接子目录。

所有文件和目录的使用量(人类可读)

du -ah .

以 K、M、G 为单位,详细显示当前目录内所有文件和目录的磁盘使用量。

提示与注意事项

为了更有效地使用 du 命令并避免可能出现的问题,这里提供一些提示和注意事项。

du 和 df 的区别

du 计算文件和目录实际占用的空间,而 df 则报告整个文件系统的可用空间和已用空间。du 可能报告比实际文件大小更大的值,这取决于文件系统的块分配方式。

  • **du**: 文件/目录的“逻辑”大小(基于实际分配的块)
  • **df**: 文件系统的“物理”大小(基于整个分区)

处理大容量目录

在非常大的目录上运行 `du` 可能会花费很长时间。在这种情况下,使用 `--max-depth` 选项限制搜索深度,或者使用 `ncdu` 等交互式工具可能更有效。

权限问题

如果存在没有访问权限的目录或文件,`du` 可能会跳过这些项目或显示错误消息。要查看准确的使用量,需要适当的权限(例如,使用 `sudo`)。



相同类别命令