Aby zainstalować najnowszą wersję, należy ściągnąć ją z githuba autora. Dla każdego systemu robimy to inaczej:
Debian/Ubuntu:
wget https://github.com/muesli/duf/releases/download/v0.8.1/duf_0.8.1_linux_amd64.deb apt install ./duf_0.8.1_linux_amd64.deb
FreeBSD:
sh -c 'pkg update && pkg upgrade && pkg install duf'
CentOS:
wget https://github.com/muesli/duf/releases/download/v0.8.1/duf_0.8.1_linux_amd64.rpm rpm -ivh duf_0.8.1_linux_amd64.rpm
Podstawową komendą, jaką możemy wykonać, jest komenda duf bez żadnych argumentów:
dufktóra zwróci ładną tabelkę z danymi zajętości systemu plików na serwerze:
â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® │ 1 local device │ ├────────────┬───────┬──────┬───────┬───────────────────────────────┬──────┬────────────┤ │ MOUNTED ON │ SIZE │ USED │ AVAIL │ USE% │ TYPE │ FILESYSTEM │ ├────────────┼───────┼──────┼───────┼───────────────────────────────┼──────┼────────────┤ │ / │ 29.5G │ 3.3G │ 25.0G │ [##..................] 11.0% │ ext4 │ /dev/vda1 │ ╰────────────┴───────┴──────┴───────┴───────────────────────────────┴──────┴────────────╯ â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® │ 5 special devices │ ├─────────────┬────────┬────────┬────────┬───────────────────────────────┬──────────┬────────────┤ │ MOUNTED ON │ SIZE │ USED │ AVAIL │ USE% │ TYPE │ FILESYSTEM │ ├─────────────┼────────┼────────┼────────┼───────────────────────────────┼──────────┼────────────┤ │ /dev │ 1.4G │ 0B │ 1.4G │ │ devtmpfs │ udev │ │ /dev/shm │ 1.5G │ 0B │ 1.5G │ │ tmpfs │ tmpfs │ │ /run │ 298.8M │ 640.0K │ 298.2M │ [....................] 0.2% │ tmpfs │ tmpfs │ │ /run/lock │ 5.0M │ 0B │ 5.0M │ │ tmpfs │ tmpfs │ │ /run/user/0 │ 288.8M │ 0B │ 288.8M │ │ tmpfs │ tmpfs │ ╰─────────────┴────────┴────────┴────────┴───────────────────────────────┴──────────┴────────────╯
NastÄ™pnie możemy wykonać komendÄ™ duf z parametrem „–all”
duf --allktóra pokaże wszystkie dostępne, nieaktywne i pseudo systemy plików na serwerze:
â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® │ 3 local devices │ ├──────────────────────────────────┬───────┬──────┬───────┬───────────────────────────────┬─────────┬────────────┤ │ MOUNTED ON │ SIZE │ USED │ AVAIL │ USE% │ TYPE │ FILESYSTEM │ ├──────────────────────────────────┼───────┼──────┼───────┼───────────────────────────────┼─────────┼────────────┤ │ / │ 29.5G │ 3.3G │ 25.0G │ [##..................] 11.0% │ ext4 │ /dev/vda1 │ │ /var/lib/docker/overlay2/019e129 │ 29.5G │ 3.3G │ 25.0G │ [##..................] 11.0% │ overlay │ overlay │ │ 7ba8635fff6beb30429635cfce0211d3 │ │ │ │ │ │ │ │ ec1ec17b5124a9a5249efe817/merged │ │ │ │ │ │ │ │ /var/lib/docker/overlay2/6c82396 │ 29.5G │ 3.3G │ 25.0G │ [##..................] 11.0% │ overlay │ overlay │ │ 823ef8df76a57b3cf8b87b786ba22cee │ │ │ │ │ │ │ │ 5740b411108e4d79fc01566d5/merged │ │ │ │ │ │ │ ╰──────────────────────────────────┴───────┴──────┴───────┴───────────────────────────────┴─────────┴────────────╯ â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® │ 22 special devices │ ├────────────────────────────────┬────────┬────────┬────────┬───────────────────────────────┬─────────────┬─────────────┤ │ MOUNTED ON │ SIZE │ USED │ AVAIL │ USE% │ TYPE │ FILESYSTEM │ ├────────────────────────────────┼────────┼────────┼────────┼───────────────────────────────┼─────────────┼─────────────┤ │ /dev │ 1.4G │ 0B │ 1.4G │ │ devtmpfs │ udev │ │ /dev/hugepages │ 0B │ 0B │ 0B │ │ hugetlbfs │ hugetlbfs │ │ /dev/mqueue │ 0B │ 0B │ 0B │ │ mqueue │ mqueue │ │ /dev/pts │ 0B │ 0B │ 0B │ │ devpts │ devpts │ │ /dev/shm │ 1.5G │ 0B │ 1.5G │ │ tmpfs │ tmpfs │ │ /proc │ 0B │ 0B │ 0B │ │ proc │ proc │ │ /proc/sys/fs/binfmt_misc │ 0B │ 0B │ 0B │ │ autofs │ systemd-1 │ │ /proc/sys/fs/binfmt_misc │ 0B │ 0B │ 0B │ │ binfmt_misc │ binfmt_misc │ │ /run │ 298.8M │ 640.0K │ 298.2M │ [....................] 0.2% │ tmpfs │ tmpfs │ │ /run/docker/netns/70ab70013ff7 │ 0B │ 0B │ 0B │ │ nsfs │ nsfs │ │ /run/docker/netns/8fc663c7dee0 │ 0B │ 0B │ 0B │ │ nsfs │ nsfs │ │ /run/lock │ 5.0M │ 0B │ 5.0M │ │ tmpfs │ tmpfs │ │ /run/user/0 │ 288.8M │ 0B │ 288.8M │ │ tmpfs │ tmpfs │ │ /sys │ 0B │ 0B │ 0B │ │ sysfs │ sysfs │ │ /sys/fs/bpf │ 0B │ 0B │ 0B │ │ bpf │ none │ │ /sys/fs/cgroup │ 0B │ 0B │ 0B │ │ cgroup2 │ cgroup2 │ │ /sys/fs/fuse/connections │ 0B │ 0B │ 0B │ │ fusectl │ fusectl │ │ /sys/fs/pstore │ 0B │ 0B │ 0B │ │ pstore │ pstore │ │ /sys/kernel/config │ 0B │ 0B │ 0B │ │ configfs │ configfs │ │ /sys/kernel/debug │ 0B │ 0B │ 0B │ │ debugfs │ debugfs │ │ /sys/kernel/security │ 0B │ 0B │ 0B │ │ securityfs │ securityfs │ │ /sys/kernel/tracing │ 0B │ 0B │ 0B │ │ tracefs │ tracefs │ ╰────────────────────────────────┴────────┴────────┴────────┴───────────────────────────────┴─────────────┴─────────────╯
Pomocnym parametrem może być też wyświetlenie zajętości inodes systemu plików:
duf --inodesdzięki czemu uzyskamy informację o zajętości inodes:
â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® │ 1 local device │ ├────────────┬─────────┬───────┬─────────┬───────────────────────────────┬──────┬────────────┤ │ MOUNTED ON │ INODES │ IUSED │ IAVAIL │ IUSE% │ TYPE │ FILESYSTEM │ ├────────────┼─────────┼───────┼─────────┼───────────────────────────────┼──────┼────────────┤ │ / │ 1966080 │ 59515 │ 1906565 │ [....................] 3.0% │ ext4 │ /dev/vda1 │ ╰────────────┴─────────┴───────┴─────────┴───────────────────────────────┴──────┴────────────╯ â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® │ 5 special devices │ ├─────────────┬────────┬───────┬────────┬───────────────────────────────┬──────────┬────────────┤ │ MOUNTED ON │ INODES │ IUSED │ IAVAIL │ IUSE% │ TYPE │ FILESYSTEM │ ├─────────────┼────────┼───────┼────────┼───────────────────────────────┼──────────┼────────────┤ │ /dev │ 378249 │ 318 │ 377931 │ [....................] 0.1% │ devtmpfs │ udev │ │ /dev/shm │ 382447 │ 1 │ 382446 │ [....................] 0.0% │ tmpfs │ tmpfs │ │ /run │ 382447 │ 515 │ 381932 │ [....................] 0.1% │ tmpfs │ tmpfs │ │ /run/lock │ 382447 │ 2 │ 382445 │ [....................] 0.0% │ tmpfs │ tmpfs │ │ /run/user/0 │ 73929 │ 21 │ 73908 │ [....................] 0.0% │ tmpfs │ tmpfs │ ╰─────────────┴────────┴───────┴────────┴───────────────────────────────┴──────────┴────────────╯
Ostatnim przydatnym parametrem jest parametr zwracająca wynik w formacie json, który łatwo jest zaimportować w kodzie lub innym programie:
duf --jsonparametr json można dopisać do wszystkich innych parametrów, spowoduje to wyświetlnie wyniku w formacie json.
Do komendy można dodać ścieżkę do katalogu systemowego lub zamontowanego zasobu, dzięki czemu komenda zwróci tylko ten zasób:
duf /homezwróci wynik tylko z danym zasobem:
â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® │ 1 local device │ ├────────────┬───────┬──────┬───────┬───────────────────────────────┬──────┬────────────┤ │ MOUNTED ON │ SIZE │ USED │ AVAIL │ USE% │ TYPE │ FILESYSTEM │ ├────────────┼───────┼──────┼───────┼───────────────────────────────┼──────┼────────────┤ │ / │ 29.5G │ 3.3G │ 25.0G │ [##..................] 11.0% │ ext4 │ /dev/vda1 │ ╰────────────┴───────┴──────┴───────┴───────────────────────────────┴──────┴────────────╯
Na koniec warto zapoznać się z parametrem help, który pokaże opisy wszystkich dostępnych parametrów.
duf --help