duf is one of the fancy Linux disk monitoring utilities written in Golang. It is released under MIT license and It supports Linux, macOS, BSD, and even Windows too. Some of the core features of duf include:
- a better ‘df command‘ alternative.
- Light and Dark color scheme.
- Output in JSON format.
- Option to sort, group, and filter output.
- Adjustable terminal Height and Width.
Installing Duf (Disk Usage) Tool in Linux
There are two ways you can install DUF. You can either build it from the source or download the setup in native format (.rpm or .deb) specific to Linux distribution and install it. I will walk you through both methods.
Building Duf from Source
You need to set up the Go (1.12 or above) environment to compile duf. If you don’t have Go set up in your machine, take a look at our comprehensive article on how to set up Go in Ubuntu.
$ git clone https://github.com/muesli/duf.git $ cd duf $ go build
Installing Duf from Packages
You can download the duf package from the Github repo directly or use the wget command.
--------- On Debina, Ubuntu & Mint --------- $ wget https://github.com/muesli/duf/releases/download/v0.6.0/duf_0.6.0_linux_amd64.deb $ dpkg -i duf_0.6.0_linux_amd64.deb --------- On RHEL, CentOS & Fedora --------- $ wget https://github.com/muesli/duf/releases/download/v0.6.0/duf_0.6.0_linux_amd64.rpm $ rpm -ivh duf_0.6.0_linux_amd64.rpm
Usage of Duf (Disk Usage) Tool in Linux
Now, launch the application by simply typing duf from the terminal.
$ duf
Duf has a lot of features, so a good place to start would be to use --help
option.
$ duf --help
You can print only specific file systems or devices by passing it as an argument. Since I created this machine in a single partition everything is mounted on the root (/). Based upon your partition scheme you will see different output.
$ duf /home /usr /opt $ duf /root/ $ duf /var/log
You can pass --all
flag to display Pseudo, inaccessible, and duplicate file systems.
$ duf -all
Instead of printing block usage, we can print Inode usage bypassing --inodes
as an argument.
$ duf --inodes
You can sort output or display only certain columns based on certain keywords.
$ duf --sort size
You have the option to print only certain columns bypassing the column name as an argument to --output
flag.
$ duf --output used,size,avail,usage
Below are the list of valid keywords.
- mountpoint
- size
- used
- avail
- usage
- inodes
- inodes_used
- inodes_avail
- inodes_usage
- type
- filesystem
Duf comes with a light and dark color scheme. To set the color scheme, use the following commands.
$ duf -theme dark # Dark color scheme $ duf --theme light # Light color scheme
Duf supports output in JSON format.
$ duf --json
That’s it for this article. Duf is a maturing tool and there are more features and bug fixes added to it. Try it and let us know your feedback.
The good old command sure does a decent job in keeping tabs on the disk space usage. We regularly help our Customers to perform Linux Monitoring related queries. While not strictly a disk monitoring tool, it does show disk usage per process.