Duf Schijfbewakingstool installeren en gebruiken op Ubuntu 20.04

Duf ook wel “Disk Usage Free utility” genoemd is een gratis en open-source tool geschreven in Golang. Het wordt gebruikt om het schijfgebruik van het systeem in tabelvorm weer te geven. Het is een alternatief voor het df commando en het kan ge├»nstalleerd worden op Linux, BSD, Windows en macOS. Het toont ook de details van het schijfgebruik in de JSON uitvoer.

In dit bericht laten we je zien hoe je het schijfgebruik kunt controleren met het hulpprogramma Duf op Ubuntu 20.04.

Voorwaarden

  • Een server waarop Ubuntu 20.04 draait.
  • Op de server is een root-wachtwoord ingesteld.

Aan de slag

Ten eerste is het altijd aan te raden om je pakketcache bij te werken met de nieuwste versie. Je kunt dat doen met het volgende commando:

apt-get update -y

Als je klaar bent, kun je doorgaan naar de volgende stap.

Duf installeren

Het Duf pakket is standaard niet beschikbaar in de Ubuntu standaard repository, dus moet je het downloaden van hun downloadpagina.

Je kunt het downloaden met het volgende commando:

wget https://github.com/muesli/duf/releases/download/v0.6.2/duf_0.6.2_linux_amd64.deb

Zodra het downloaden is voltooid, installeer je het gedownloade bestand met het volgende commando:

dpkg -i duf_0.6.2_linux_amd64.deb

Hoe Duf te gebruiken

In dit deel laten we zien hoe je het schijfgebruik kunt controleren met het hulpprogramma Duf.

Het uitvoeren van het Duf commando zonder enige optie geeft een lijst van alle logische partities en bestandssystemen:

duf

Je zou de volgende uitvoer moeten zien:

?????????????????????????????????????????????????????????????????????????????????????????
? 1 local device                                                                        ?
?????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON ?  SIZE ? USED ? AVAIL ?              USE%             ? TYPE ? FILESYSTEM ?
?????????????????????????????????????????????????????????????????????????????????????????
? /          ? 49.2G ? 3.2G ? 43.8G ? [#...................]   6.5% ? ext4 ? /dev/sda1  ?
?????????????????????????????????????????????????????????????????????????????????????????
?????????????????????????????????????????????????????????????????????????????????????????????????????
? 6 special devices                                                                                 ?
?????????????????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON     ?   SIZE ?   USED ?  AVAIL ?              USE%             ? TYPE     ? FILESYSTEM ?
?????????????????????????????????????????????????????????????????????????????????????????????????????
? /dev           ? 980.7M ?     0B ? 980.7M ?                               ? devtmpfs ? udev       ?
? /dev/shm       ? 993.9M ?     0B ? 993.9M ?                               ? tmpfs    ? tmpfs      ?
? /run           ? 198.8M ? 600.0K ? 198.2M ? [....................]   0.3% ? tmpfs    ? tmpfs      ?
? /run/lock      ?   5.0M ?     0B ?   5.0M ?                               ? tmpfs    ? tmpfs      ?
? /run/user/0    ? 198.8M ?     0B ? 198.8M ?                               ? tmpfs    ? tmpfs      ?
? /sys/fs/cgroup ? 993.9M ?     0B ? 993.9M ?                               ? tmpfs    ? tmpfs      ?
?????????????????????????????????????????????????????????????????????????????????????????????????????

Om de schijfgebruiksinformatie van de directory /etc en /usr weer te geven, voer je het volgende commando uit:

duf /etc /usr

Je zou de volgende uitvoer moeten zien:

?????????????????????????????????????????????????????????????????????????????????????????
? 2 local devices                                                                       ?
?????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON ?  SIZE ? USED ? AVAIL ?              USE%             ? TYPE ? FILESYSTEM ?
?????????????????????????????????????????????????????????????????????????????????????????
? /          ? 49.2G ? 3.2G ? 43.8G ? [#...................]   6.5% ? ext4 ? /dev/sda1  ?
? /          ? 49.2G ? 3.2G ? 43.8G ? [#...................]   6.5% ? ext4 ? /dev/sda1  ?
?????????????????????????????????????????????????????????????????????????????????????????

Voer het volgende commando uit om de informatie over Pseudo-, ontoegankelijke en dubbele bestandssystemen weer te geven:

duf -all

Je zou de volgende uitvoer moeten zien:

?????????????????????????????????????????????????????????????????????????????????????????
? 1 local device                                                                        ?
?????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON ?  SIZE ? USED ? AVAIL ?              USE%             ? TYPE ? FILESYSTEM ?
?????????????????????????????????????????????????????????????????????????????????????????
? /          ? 49.2G ? 3.2G ? 43.8G ? [#...................]   6.5% ? ext4 ? /dev/sda1  ?
?????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
? 33 special devices                                                                                                  ?
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON                   ?   SIZE ?   USED ?  AVAIL ?              USE%             ? TYPE        ? FILESYSTEM  ?
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
? /dev                         ? 980.7M ?     0B ? 980.7M ?                               ? 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                     ? 993.9M ?     0B ? 993.9M ?                               ? 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                         ? 198.8M ? 600.0K ? 198.2M ? [....................]   0.3% ? tmpfs       ? tmpfs       ?
? /run/lock                    ?   5.0M ?     0B ?   5.0M ?                               ? tmpfs       ? tmpfs       ?
? /run/user/0                  ? 198.8M ?     0B ? 198.8M ?                               ? tmpfs       ? tmpfs       ?
? /sys                         ?     0B ?     0B ?     0B ?                               ? sysfs       ? sysfs       ?
? /sys/fs/bpf                  ?     0B ?     0B ?     0B ?                               ? bpf         ? none        ?
? /sys/fs/cgroup               ? 993.9M ?     0B ? 993.9M ?                               ? tmpfs       ? tmpfs       ?
? /sys/fs/cgroup/blkio         ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/cpu,cpuacct   ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/cpuset        ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/devices       ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/freezer       ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/hugetlb       ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/memory        ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/net_cls,net_p ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? rio                          ?        ?        ?        ?                               ?             ?             ?
? /sys/fs/cgroup/perf_event    ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/pids          ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/rdma          ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/systemd       ?     0B ?     0B ?     0B ?                               ? cgroup      ? cgroup      ?
? /sys/fs/cgroup/unified       ?     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     ?
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

Voer het volgende commando uit om het Inode-gebruik weer te geven:

duf --inodes

Je zou de volgende uitvoer moeten zien:

???????????????????????????????????????????????????????????????????????????????????????????????
? 1 local device                                                                              ?
???????????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON ?  INODES ?   USED ?   AVAIL ?              USE%             ? TYPE ? FILESYSTEM ?
???????????????????????????????????????????????????????????????????????????????????????????????
? /          ? 3276800 ? 150623 ? 3126177 ? [....................]   4.6% ? ext4 ? /dev/sda1  ?
???????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????
? 6 special devices                                                                               ?
???????????????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON     ? INODES ? USED ?  AVAIL ?              USE%             ? TYPE     ? FILESYSTEM ?
???????????????????????????????????????????????????????????????????????????????????????????????????
? /dev           ? 251048 ?  390 ? 250658 ? [....................]   0.2% ? devtmpfs ? udev       ?
? /dev/shm       ? 254428 ?    1 ? 254427 ? [....................]   0.0% ? tmpfs    ? tmpfs      ?
? /run           ? 254428 ?  517 ? 253911 ? [....................]   0.2% ? tmpfs    ? tmpfs      ?
? /run/lock      ? 254428 ?    4 ? 254424 ? [....................]   0.0% ? tmpfs    ? tmpfs      ?
? /run/user/0    ? 254428 ?   12 ? 254416 ? [....................]   0.0% ? tmpfs    ? tmpfs      ?
? /sys/fs/cgroup ? 254428 ?   18 ? 254410 ? [....................]   0.0% ? tmpfs    ? tmpfs      ?
???????????????????????????????????????????????????????????????????????????????????????????????????

Voer het volgende commando uit om het schijfgebruik te sorteren:

duf --sort size

Output:

?????????????????????????????????????????????????????????????????????????????????????????
? 1 local device                                                                        ?
?????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON ?  SIZE ? USED ? AVAIL ?              USE%             ? TYPE ? FILESYSTEM ?
?????????????????????????????????????????????????????????????????????????????????????????
? /          ? 49.2G ? 3.2G ? 43.8G ? [#...................]   6.5% ? ext4 ? /dev/sda1  ?
?????????????????????????????????????????????????????????????????????????????????????????
?????????????????????????????????????????????????????????????????????????????????????????????????????
? 6 special devices                                                                                 ?
?????????????????????????????????????????????????????????????????????????????????????????????????????
? MOUNTED ON     ?   SIZE ?   USED ?  AVAIL ?              USE%             ? TYPE     ? FILESYSTEM ?
?????????????????????????????????????????????????????????????????????????????????????????????????????
? /run/lock      ?   5.0M ?     0B ?   5.0M ?                               ? tmpfs    ? tmpfs      ?
? /run/user/0    ? 198.8M ?     0B ? 198.8M ?                               ? tmpfs    ? tmpfs      ?
? /run           ? 198.8M ? 600.0K ? 198.2M ? [....................]   0.3% ? tmpfs    ? tmpfs      ?
? /dev           ? 980.7M ?     0B ? 980.7M ?                               ? devtmpfs ? udev       ?
? /dev/shm       ? 993.9M ?     0B ? 993.9M ?                               ? tmpfs    ? tmpfs      ?
? /sys/fs/cgroup ? 993.9M ?     0B ? 993.9M ?                               ? tmpfs    ? tmpfs

Voer het volgende commando uit om alleen bepaalde kolommen weer te geven:

duf --output mountpoint,size,used,avail,filesystem

Output:

??????????????????????????????????????????????????
? 1 local device                                 ?
??????????????????????????????????????????????????
? MOUNTED ON ?  SIZE ? USED ? AVAIL ? FILESYSTEM ?
??????????????????????????????????????????????????
? /          ? 49.2G ? 3.2G ? 43.8G ? /dev/sda1  ?
??????????????????????????????????????????????????
??????????????????????????????????????????????????????????
? 6 special devices                                      ?
??????????????????????????????????????????????????????????
? MOUNTED ON     ?   SIZE ?   USED ?  AVAIL ? FILESYSTEM ?
??????????????????????????????????????????????????????????
? /dev           ? 980.7M ?     0B ? 980.7M ? udev       ?
? /dev/shm       ? 993.9M ?     0B ? 993.9M ? tmpfs      ?
? /run           ? 198.8M ? 600.0K ? 198.2M ? tmpfs      ?
? /run/lock      ?   5.0M ?     0B ?   5.0M ? tmpfs      ?
? /run/user/0    ? 198.8M ?     0B ? 198.8M ? tmpfs      ?
? /sys/fs/cgroup ? 993.9M ?     0B ? 993.9M ? tmpfs      ?
??????????????????????????????????????????????????????????

Om alle in Duf beschikbare opties af te drukken, voer je het volgende commando uit:

duf --help

Output:

Usage of duf:
  -all
    	include pseudo, duplicate, inaccessible file systems
  -hide string
    	hide specific devices, separated with commas:
    	local, network, fuse, special, loops, binds
  -hide-fs string
    	hide specific filesystems, separated with commas
  -inodes
    	list inode information instead of block usage
  -json
    	output all devices in JSON format
  -only string
    	show only specific devices, separated with commas:
    	local, network, fuse, special, loops, binds
  -only-fs string
    	only specific filesystems, separated with commas
  -output string
    	output fields: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem
  -sort string
    	sort output by: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem (default "mountpoint")
  -style string
    	style: unicode, ascii (default "unicode")
  -theme string
    	color themes: dark, light (default "dark")
  -version
    	display version
  -warnings
    	output all warnings to STDERR
  -width uint
    	max output width

Conclusie

In de bovenstaande gids heb je geleerd hoe je het schijfgebruik kunt monitoren met Duf in Ubuntu 20.04. Ik hoop dat dit hulpmiddel je helpt om het schijfgebruik van je systeem te monitoren in een mooie en gebruiksvriendelijke lay-out.