Master the Linux ‘du’ Command: A Comprehensive Guide

Peter Hou
2 min readJun 9, 2023

--

This article provides an in-depth guide to the Linux du command. The guide covers the command's history, usage, options, and practical applications, along with notable pitfalls and best practices. By mastering the du command, one can effectively manage and monitor disk usage in a Linux environment.

Instructions

This article provides a comprehensive guide to the Linux du command. We will explore the history, rationale for its use, detailed usage, command options, and practical applications. This guide also includes potential pitfalls and best practices related to the du command.

History

The du command, short for "disk usage", has been a part of UNIX and UNIX-like systems since their early days. It was designed to provide a summary of disk usage of a directory tree inclusive of its subdirectories.

When and why to use it

The du command is primarily used when you need to know the amount of disk space being used by a directory or files on your system. It is particularly handy when you are trying to identify large files or directories that are consuming most of the disk space.

How to use it

Using du is straightforward. Running the command without any options will display the disk usage for the current directory.

$ du
64 ./test_dir
128 .

The commonly used parameters

  • -h makes the output of du human-readable by providing sizes in kilobytes (K), megabytes (M), gigabytes (G), etc.
$ du -h
64K ./test_dir
128K .
  • -s provides a summary of the disk usage, rather than displaying the size of each subdirectory.
$ du -s
128 .

Other supported parameters

  • -a shows the disk usage for each individual file, not just directories.
  • -c provides a grand total of the disk usage.
  • -x skips directories on different file systems.
  • -d limits the depth of directory traversal.

Most common use cases

A typical use case of du is finding out which directories in your system are consuming most of the disk space, particularly useful when running low on disk space.

$ du -h --max-depth=1
64K ./test_dir
128K .

The tricky skills

The du command can be combined with other commands like sort to order the output by file size.

$ du -h --max-depth=1 | sort -hr
128K .
64K ./test_dir

What needs to be noted

Be aware that du provides the disk usage, not the actual file size. Disk usage takes into account the block size of the file system, hence, a small file can still consume a significant amount of disk space.

Conclusion

The du command is a powerful tool for managing disk space in Linux. Its flexibility in displaying disk usage at different levels makes it an essential command for system administrators.

--

--

Peter Hou
Peter Hou

Written by Peter Hou

I am a Senior Software Engineer and tech lead in a top tech company.

No responses yet