Gyors kérdés: Mennyi hely van még a meghajtókon? Kevés vagy sok? Következő kérdés: Tudod, hogyan lehet ezt kideríteni? Ha történetesen GUI desktopot használsz (pl. GNOME, KDE, Mate, Pantheon, stb.), akkor a feladat valószínűleg elég egyszerű. De mi van akkor, ha egy headless szervert nézel, GUI nélkül? Eszközöket kell telepítenie a feladathoz? A válasz egy határozott nem. Minden szükséges bit már megvan ahhoz, hogy pontosan megtudja, mennyi hely van még a meghajtókon. Valójában két nagyon könnyen használható lehetőség áll készenlétben.
Ebben a cikkben bemutatom ezeket az eszközöket. Az Elementary OS-t fogom használni, amely szintén tartalmaz egy GUI lehetőséget, de mi most a parancssorra fogunk szorítkozni. A jó hír az, hogy ezek a parancssori eszközök minden Linux disztribúcióhoz könnyen elérhetőek. Az én tesztrendszeremen számos csatlakoztatott meghajtó van (belső és külső). A használt parancsok nem veszik figyelembe, hogy a meghajtó hova van csatlakoztatva; csak az érdekli őket, hogy a meghajtó be legyen csatlakoztatva és látható legyen az operációs rendszer számára.
Ezt elmondva, nézzük meg az eszközöket.
df
A df parancs az az eszköz, amelyet először használtam a meghajtóterület felderítésére Linuxon, még az 1990-es években. Nagyon egyszerű mind használatában, mind jelentésében. A mai napig a df a kedvenc parancsom erre a feladatra. Ennek a parancsnak van néhány kapcsolója, de az alapvető jelentésekhez valójában csak egyre van szüksége. Ez a parancs a df -H. A -H kapcsoló az ember által olvasható formátumot jelenti. A df -H parancs kimenete megadja, hogy mennyi a felhasznált hely, a rendelkezésre álló hely, a felhasznált hely százalékos aránya, valamint a rendszerhez csatlakoztatott minden lemez csatlakozási pontja (1. ábra).
Mi van akkor, ha a meghajtók listája rendkívül hosszú, és csak egyetlen meghajtón használt helyet szeretne megtekinteni? A df segítségével ez lehetséges. Nézzük meg, mennyi helyet használt el az elsődleges meghajtónk, amely a /dev/sda1 címen található. Ehhez adjuk ki a következő parancsot:
df -H /dev/sda1
A kimenet erre az egy meghajtóra lesz korlátozva (2. ábra).
A df kimenetén megjelenő jelentett mezőket is korlátozhatjuk. A rendelkezésre álló mezők a következők:
-
source – a fájlrendszer forrása
-
size – a blokkok teljes száma
-
used – a meghajtón használt hely
-
avail – a meghajtón rendelkezésre álló hely
-
pcent – a felhasznált hely százalékos aránya, osztva a teljes mérettel
-
target – a meghajtó csatlakoztatási pontja
Mutasd meg az összes meghajtónk kimenetét, csak a méret, a használt és az avail (vagy rendelkezésre álló) mezőkkel. Az ehhez szükséges parancs a következő lenne:
df -H --output=size,used,avail
A parancs kimenete meglehetősen könnyen olvasható (3. ábra).
Az egyetlen fenntartás itt az, hogy nem ismerjük a kimenet forrását, ezért a forrást így kell feltüntetnünk:
df -H --output=source,size,used,avail
Most már értelmesebb a kimenet (4. ábra).
du
A következő parancsunk a du. Amint az várható volt, ez a lemezhasználatot jelenti. A du parancs annyiban különbözik a df parancstól, hogy nem meghajtókról, hanem könyvtárakról ad jelentést. Emiatt tudnod kell az ellenőrizendő könyvtárak nevét. Tegyük fel, hogy van a gépemen egy könyvtár, amely a virtuális gép fájljait tartalmazza. Ez a könyvtár a /media/jack/HALEY/VIRTUALBOX. Ha meg akarom tudni, hogy mennyi helyet használ az adott könyvtár, akkor a következő parancsot adom ki:
du -h /media/jack/HALEY/VIRTUALBOX
A fenti parancs kimenete megjeleníti a könyvtárban lévő összes fájl méretét (5. ábra).
Ez a parancs eddig nem túl hasznos. Mi van akkor, ha egy adott könyvtár teljes használatára vagyunk kíváncsiak? Szerencsére a du ezt a feladatot is el tudja látni. Ugyanebben a könyvtárban a parancs a következő lenne:
du -sh /media/jack/HALEY/VIRTUALBOX/
Most már tudjuk, hogy a fájlok összesen mennyi helyet használnak az adott könyvtárban (6. ábra).
Ezt a parancsot arra is használhatja, hogy megnézze, mennyi helyet használ egy szülő összes alkönyvtára, például így:
du -h /media/jack/HALEY
A parancs kimenete (7. ábra) jó módja annak, hogy megtudja, mely alkönyvtárak foglalják a helyet a meghajtón.
A du parancs is remek eszköz arra, hogy megnézzük azoknak a könyvtáraknak a listáját, amelyek a legtöbb helyet foglalják a lemezen a rendszerünkön. Ezt úgy érhetjük el, hogy a du parancs kimenetét két másik parancshoz vezetjük: a sort és a head parancsokhoz. A meghajtón helyet fogyasztó 10 legnagyobb könyvtárat kereső parancs valahogy így nézne ki:
du -a /media/jack | sort -n -r | head -n 10
A kimenet felsorolja ezeket a könyvtárakat, a legnagyobbtól a legkevésbé támadóig (8. ábra).
Nem olyan nehéz, mint gondoltad
A Linuxhoz csatlakoztatott meghajtókon elég egyszerű kideríteni, mennyi helyet foglalnak. Mindaddig, amíg a meghajtók be vannak kötve a Linux rendszerbe, a df és a du is kiváló munkát végez a szükséges információk közlésében. A df segítségével gyorsan áttekintést kaphat arról, hogy mennyi helyet használ egy lemez, a du segítségével pedig megtudhatja, hogy mennyi helyet használnak bizonyos könyvtárak. Ezt a két eszközt együttesen minden Linux rendszergazda számára kötelező tudásnak kell tekinteni.
És ha esetleg lemaradtál volna róla, nemrég megmutattam, hogyan határozhatod meg a memóriahasználatot Linuxon. Ezek a tippek együttesen nagyban hozzájárulnak a Linux szerverek sikeres kezeléséhez.
Tanuljon többet a Linuxról a The Linux Foundation és az edX ingyenes “Bevezetés a Linuxba” kurzusán keresztül.