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.
Kolejny naprawdę ciekawy wpis.
Dzięki za ostrzeżenie czego nie instalować i nie wpisywać w konsoli. 😉
flamenco@toshiksmi:~$ di
Filesystem Mount Size Used Avail %Used fs Type
/dev/sda5 / 63,2G 49,8G 10,1G 84% ext4
/dev/sda2 /home/flamenco/ 229,7G 160,5G 69,2G 70% fuseblk
tmpfs /run 395,1M 1,3M 393,8M 0% tmpfs
flamenco@toshiksmi:~$ df -h
System plików rozm. użyte dost. %uż. zamont. na
/dev/sda5 64G 50G 11G 84% /
none 4,0K 0 4,0K 0% /sys/fs/cgroup
udev 2,0G 12K 2,0G 1% /dev
tmpfs 396M 1,3M 394M 1% /run
none 5,0M 0 5,0M 0% /run/lock
none 2,0G 152K 2,0G 1% /run/shm
none 100M 40K 100M 1% /run/user
/dev/sda2 230G 161G 70G 70% /home/flamenco/Winda
flamenco@toshiksmi:~$
Jak widać, każdy z tych programów twierdzi co innego… Znaczy, w kwestii montowania.