Linux df command

Updated: 11/06/2021 by Computer Hope
df command

On Unix-like operating systems, the df command reports the amount of available disk space used by file systems.

This page covers the GNU/Linux version of df.


df displays the amount of disk space available on the file system containing each file name argument. If no file name is given, the space available on all currently mounted file systems is shown. Disk space is shown in 1 K blocks by default, unless the environment variable POSIXLY_CORRECT is set, in which case 512-byte blocks are used.

If an argument is the absolute file name of a disk device node containing a mounted file system, df shows the space available on that file system rather than on the file system containing the device node (which is always the root file system). df cannot show the space available on unmounted file systems, because on most kinds of systems doing so requires very system-specific knowledge of file system structures.


df [OPTION]... [FILE]...


-a, --all Include dummy file systems.
Scale sizes by SIZE before printing them (e.g., '-BM' prints sizes in units of 1,048,576 bytes). See "SIZE Format" below for more information.
--total Display a grand total.
Print sizes in human readable format (e.g., 1K 234M 2G).
-H, --si Same as -h, but use powers of 1000 instead of 1024.
-i, --inodes List inode information instead of block usage.
-k Like --block-size=1K.
-l, --local Limit listing to local file systems.
--no-sync Do not invoke a sync before getting usage info, which is the default setting.
-P, --portability Use the POSIX output format.
--sync Invoke a sync before getting usage info.
-t, --type=TYPE Limit listing to file systems of type TYPE.
-T, --print-type Print file system type.
Limit listing to file systems not of type TYPE.
-v Ignored; included for compatibility reasons.
--help Display a help message and exit.
--version Output version information and exit.

SIZE format

Display values are in units of the first available SIZE from --block-size, and the DF_BLOCK_SIZE, BLOCK_SIZE and BLOCKSIZE environment variables. Otherwise, units default to 1024 bytes (or 512 if POSIXLY_CORRECT is set).

SIZE is an integer and optional unit (example: 10M is 10*1024*1024). Units are K, M, G, T, P, E, Z, Y (powers of 1024) or KB, MB, ... (powers of 1000).



Display all file systems and their disk usage, as in the following output:

Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/loop0      18761008  15246876   2554440  86% /
none                   4         0         4   0% /sys/fs/cgroup
udev              493812         4    493808   1% /dev
tmpfs             100672      1364     99308   2% /run
none                5120         0      5120   0% /run/lock
none              503352      1764    501588   1% /run/shm
none              102400        20    102380   1% /run/user
/dev/sda3      174766076 164417964  10348112  95% /host
df -h

Same as above, but use "human readable" formatting, as in the following example:

Filesystem      Size  Used Avail Use% Mounted on
/dev/loop0       18G   15G  2.5G  86% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev            483M  4.0K  483M   1% /dev
tmpfs            99M  1.4M   97M   2% /run
none            5.0M     0  5.0M   0% /run/lock
none            492M  1.8M  490M   1% /run/shm
none            100M   20K  100M   1% /run/user
/dev/sda3       167G  157G  9.9G  95% /host
df public_html

Display the amount of free space in the public_html directory, as in the following output:

Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/loop0      18761008 15246924   2554392  86% /

du — Report the amount of disk space used by a file or files.
find — Find files within a directory hierarchy.
ls — List the contents of a directory or directories.