Terminal pogryzł człowieka: di
Gdzieś na obrzeżach cywilizacji żyje człowiek, który przez większość dnia wpatruje się w czarną toń niewielkiego okienka. Nie jest ważne co on w nim widzi. Ważne, czy wie co tam wpisać… A spora grupa użytkowników Linuksa albo nie wie o zbawiennej mocy terminala, albo nie miała potrzeby go używać. Być może to nie są już czasy na naukę karkołomnych technik obsługi shella, ale kilka poleceń tekstowych warto znać, choćby dla ułatwienia sobie życia. Tematem dzisiejszych rozważań będzie di – czyli lepszy df.
Polecenie di ma za zadanie nakreślić nam szczegółowo sytuację naszych nośników wewnętrznych, partycji i ich charakterystycznych niuansów. Zaletą w porównaniu do znanego df jest liczba opcji. Ogromna liczba opcji. Co dla niektórych może stanowić i wadę, podobnie jak fakt, że nie w każdej dystrybucji di jest zainstalowane domyślnie.
Polecenie już w zwykłym trybie, bez parametrów, ukazuje znaczące różnice w porównaniu do df:
$ di Filesystem Mount Size Used Avail %Used fs Type /dev/sda8 / 20,2G 5,1G 14,8G 27% ext4 tmpfs /dev/shm 1,5G 0,0G 1,5G 0% tmpfs /dev/sda6 /home 393,6G 48,6G 343,0G 13% ext4 run /run 1,5G 0,0G 1,5G 0% tmpfs tmpfs /sys/fs/cgroup 1,5G 0,0G 1,5G 0% tmpfs tmpfs /tmp 1,5G 0,0G 1,5G 0% tmpfs
Widzimy jednostkę objętości w mega/gigabajtach, oraz typ systemu plików. W df już musielibyśmy użyć kilku parametrów.
Jeżeli to nadal mało, możemy zgłębiać tajniki montowania dodając parametr -A:
$ di -A Mount fs Type Filesystem Options Size Used Free %Used %Free Size Used Avail %Used %Free Size Used Avail %Used Inodes IUsed IFree %IUsed / ext4 /dev/sda8 rw,noatime,data=ordered 20,2G 5,1G 15,1G 25% 75% 20,2G 5,4G 14,8G 27% 73% 20,0G 5,1G 14,8G 26% 1354560 191823 1162737 14% /home ext4 /dev/sda6 rw,noatime,data=ordered 393,6G 48,6G 345,0G 12% 88% 393,6G 50,6G 343,0G 13% 87% 391,6G 48,6G 343,0G 12% 26222592 122687 26099905 0%
Potrzebujemy parametrów partycji/punktu montowania do dalszego wykorzystania w skryptach? Proszę, właściowości oddzielone przecinkiem po dodaniu opcji -c:
$ di -c s,m,b,u,v,p,T "/dev/sda8","/","20,2G","5,1G","14,8G",27%,"ext4" "tmpfs","/dev/shm","1,5G","0,0G","1,5G",0%,"tmpfs" "/dev/sda6","/home","393,6G","48,6G","343,0G",13%,"ext4" "run","/run","1,5G","0,0G","1,5G",0%,"tmpfs" "/dev/sdb1","/run/media/dhorx/Linux Mint 16 Cinnamon 64-bit","1,2G","1,2G","0,0G",100%,"iso9660" "tmpfs","/sys/fs/cgroup","1,5G","0,0G","1,5G",0%,"tmpfs" "tmpfs","/tmp","1,5G","0,0G","1,5G",0%,"tmpfs"
Podsumowanie właściwych partycji z wykluczeniem tmpfs? Wystarczy -x tmpfs -t:
$ di -x tmpfs -t Filesystem Mount Size Used Avail %Used fs Type /dev/sda8 / 20,2G 5,1G 14,8G 27% ext4 /dev/sda6 /home 393,6G 48,6G 343,0G 13% ext4 Total 413,8G 53,7G 357,8G 14%
Tak po prawdzie, to czubek góry parametrów, którymi możemy nakłonić di do wyświetlanie tego co chcemy i jak chcemy. Dlatego bardziej dociekliwym polecam:
man di
Oto piękno trybu tekstowe – dwie litery, a ile atrakcji.