bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/Bash/System Monitoring
Bash•System Monitoring

Bash df Command - File System Disk Space Usage

Using the df Command

The df command is used to report file system disk space usage.

It's a useful tool for checking available storage on your system.

All examples below use a hypothetical output for demonstration:

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 20480000 1024000 19456000 5% /
tmpfs 4096000 0 4096000 0% /dev/shm
/dev/sdb1 10240000 512000 9728000 5% /mnt/data

Understanding the Output

The df command output consists of several columns, each representing different aspects of the file system's disk usage:

  • Filesystem : The name of the file system.
  • 1K-blocks : Total size of the file system in 1K blocks.
  • Used : Amount of space used.
  • Available : Amount of space available for use.
  • Use% : Percentage of space used.
  • Mounted on : Directory where the file system is mounted.

Basic Usage

To display disk space usage, use df :

Example: Basic Usage

df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 20480000 1024000 19456000 5% /
tmpfs 4096000 0 4096000 0% /dev/shm
/dev/sdb1 10240000 512000 9728000 5% /mnt/data

Options

The df command has options to change how it works:

  • -h - Show sizes in human-readable format (e.g., KB, MB)
  • -a - Show all file systems, even empty ones
  • -T - Show the type of file system
  • -i - Show inode usage
  • -P - Use POSIX output format

Show Sizes in Human-Readable Format

The -h option allows you to show sizes in human-readable format.

Example: Show Sizes in Human-Readable Format

df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 20G 1.0G 19G 5% /
tmpfs 4.0G 0 4.0G 0% /dev/shm
/dev/sdb1 10G 500M 9.5G 5% /mnt/data

Show All File Systems

The -a option allows you to show all file systems, even empty ones.

Example: Show All File Systems

df -a
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 20480000 1024000 19456000 5% /
tmpfs 4096000 0 4096000 0% /dev/shm
/dev/sdb1 10240000 512000 9728000 5% /mnt/data
none 0 0 0 - /proc/sys/fs/binfmt_misc

Show File System Type

The -T option allows you to show the type of file system.

Example: Show File System Type

df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext4 20480000 1024000 19456000 5% /
tmpfs tmpfs 4096000 0 4096000 0% /dev/shm
/dev/sdb1 ext4 10240000 512000 9728000 5% /mnt/data

File System Type: This indicates the format and structure used to store and organize data on a disk.

Common file system types include ext4 , ntfs , and vfat .

Each type has its own features, limitations, and compatibility with operating systems.

Show Inode Usage

The -i option allows you to show inode usage.

Example: Show Inode Usage

df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 1310720 2560 1308160 1% /
tmpfs 1048576 1 1048575 1% /dev/shm
/dev/sdb1 655360 100 655260 1% /mnt/data

Inodes: Inodes are data structures used by many file systems to store information about files and directories, such as their size, owner, permissions, and timestamps.

Each file or directory has a unique inode. The df -i command shows inode usage, which can be important for systems with many small files.

Use POSIX Output Format

The -P option allows you to use the POSIX output format.

Example: Use POSIX Output Format

df -P
Filesystem 1024-blocks Used Available Capacity Mounted on
/dev/sda1 20480000 1024000 19456000 5% /
tmpfs 4096000 0 4096000 0% /dev/shm
/dev/sdb1 10240000 512000 9728000 5% /mnt/data

POSIX: POSIX (Portable Operating System Interface) is a set of standards specified by the IEEE for maintaining compatibility between operating systems.

The df -P option provides output in a POSIX-compliant format, ensuring consistency across different environments and systems.

Combining Options

Options can be combined to provide more detailed output.

For example, df -hT shows sizes in human-readable format along with the file system type.

Example: Combine Options

df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext4 20G 1.0G 19G 5% /
tmpfs tmpfs 4.0G 0 4.0G 0% /dev/shm
/dev/sdb1 ext4 10G 500M 9.5G 5% /mnt/data

Previous

Bash top Command - Display Linux Tasks

Next

Bash du Command - File Space Usage

This chapter

Overview
7

Lessons

23m

Read time

1. Bash ps Command - Snapshot of Current Processes2. Bash top Command - Display Linux Tasks3. Bash df Command - File System Disk Space Usage4. Bash du Command - File Space Usage5. Bash free Command - Display Free and Used Memory6. Bash kill Command - Terminate Processes7. Bash uptime Command - System Runtime

On this page

Using the df CommandUnderstanding the OutputBasic UsageExample: Basic UsageOptionsShow Sizes in Human-Readable FormatExample: Show Sizes in Human-Readable FormatShow All File SystemsExample: Show All File SystemsShow File System TypeExample: Show File System TypeShow Inode UsageExample: Show Inode UsageUse POSIX Output FormatExample: Use POSIX Output FormatCombining OptionsExample: Combine Options