Cum să vizualizați spațiul liber pe disc și utilizarea discului de pe terminalul Linux

Analiza Utilizării Spațiului pe Disc în Sistemele Linux și macOS

Comenzile df și du sunt instrumente esențiale în shell-ul Bash, disponibile pe platforme Linux, macOS și alte sisteme de operare asemănătoare Unix. Aceste utilitare oferă o perspectivă clară asupra modului în care este gestionat spațiul de stocare, facilitând identificarea elementelor care consumă resursele sistemului.

Vizualizarea Detaliată a Spațiului de Stocare

Bash pune la dispoziție două instrumente importante pentru gestionarea spațiului pe disc. df (disk free) este utilizată pentru a vizualiza spațiul total, disponibil și utilizat. Pe de altă parte, du (disk usage) ajută la identificarea acelor fișiere și directoare care ocupă cel mai mult spațiu.

Pentru a începe, deschideți o fereastră terminal și introduceți comanda df, urmată de tasta Enter. Veți observa o serie de informații, structurate în coloane. La prima vedere, această ieșire poate părea complexă, dar în realitate, este ușor de interpretat.

df

Fiecare rând afișează informații despre un sistem de fișiere și este organizat în șase coloane:

  • Sistem de fișiere: Numele asociat sistemului de fișiere.
  • 1K-Blocks: Numărul total de blocuri de 1K disponibile pe sistem.
  • Folosit: Numărul de blocuri de 1K deja utilizate.
  • Disponibil: Numărul de blocuri de 1K neutilizate.
  • Use%: Procentul de spațiu utilizat, calculat pe baza blocurilor de 1K.
  • Fișier: Denumirea sistemului de fișiere, dacă aceasta este specificată în linia de comandă.
  • Montat pe: Locul de montare al sistemului de fișiere.

Pentru o interpretare mai ușoară a datelor, puteți utiliza opțiunea -B (block size) pentru a modifica unitatea de măsură. De exemplu, pentru a afișa informațiile în megaocteți, introduceți df -BM. Nu este nevoie de spațiu între B și M.

df -BM

Opțiunea -h (human-readable) ajustează automat unitățile de măsură (kilobyte, megabyte, gigabyte, etc.), în funcție de dimensiunea fiecărui sistem de fișiere. Această opțiune face datele mult mai ușor de citit.

df -h

În cazul în care aveți nevoie de informații despre inoduri, utilizați opțiunea -i. Inodul este o structură de date fundamentală în sistemele de fișiere Linux, utilizată pentru a stoca metadatele asociate fiecărui fișier și director. Această informație este utilă mai ales administratorilor de sistem.

df -i

În mod implicit, df afișează informații despre toate sistemele de fișiere montate, ceea ce poate crea o ieșire greu de gestionat. Pentru a exclude anumite sisteme, cum ar fi pseudo-sistemele de fișiere de tip /dev/loop, puteți folosi opțiunea -x, împreună cu tipul de sistem de fișiere. Dar, pentru a afla ce tipuri de sisteme de fișiere sunt prezente, utilizați mai întâi opțiunea -T (print type), care include tipul sistemului de fișiere în rezultat.

df -T

Pentru a exclude sistemele squashfs (exemplu pentru /dev/loop) utilizați comanda df -x squashfs. Pentru un total al tuturor sistemelor de fișiere, adăugați opțiunea --total.

df -x squashfs

df -x squashfs --total

Puteți solicita afișarea informațiilor doar pentru anumite tipuri de sisteme de fișiere. Spre exemplu, pentru a vedea exclusiv sistemele de tip ext4, utilizați df -t ext4.

df -t ext4

De asemenea, df poate afișa informații despre sisteme de fișiere specifice. În Linux, unitățile sunt numite alfabetic (/dev/sda, /dev/sdb, etc.), iar partițiile sunt numerotate (/dev/sda1, /dev/sda2, etc.). Pentru a vizualiza informațiile despre o anumită partiție, utilizați comanda df urmată de numele acesteia (ex: df /dev/sda1).

df /dev/sda1

Puteți folosi caractere speciale, ca de exemplu * pentru a înlocui orice set de caractere și ? pentru a înlocui un caracter individual. Deci, pentru a afișa informații despre toate partițiile de pe prima unitate, puteți introduce df /dev/sda*.

df /dev/sda*

Pentru a obține un total al dimensiunilor sistemelor de fișiere /dev și /run, se poate folosi comanda df -h --total /dev /run.

df -h --total /dev /run

Afișarea df poate fi personalizată folosind opțiunea --output și specificând o listă de coloane separate prin virgulă (fără spații). Coloanele disponibile sunt:

  • sursă: Numele sistemului de fișiere.
  • fstype: Tipul sistemului de fișiere.
  • itotal: Dimensiunea sistemului de fișiere în inoduri.
  • iused: Spațiul utilizat pe sistemul de fișiere în inoduri.
  • iavail: Spațiul disponibil pe sistemul de fișiere în inoduri.
  • ipcent: Procentul spațiului utilizat în inoduri.
  • dimensiune: Dimensiunea sistemului de fișiere (implicit în blocuri de 1K).
  • utilizat: Spațiul utilizat (implicit în blocuri de 1K).
  • avail: Spațiul disponibil (implicit în blocuri de 1K).
  • pcent: Procentul de spațiu utilizat (implicit în blocuri de 1K).
  • fișier: Numele sistemului de fișiere.
  • target: Punctul de montare.

Un exemplu de comandă complexă ar fi: df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent, care afișează informații despre prima partiție a primului hard disk într-un format ușor de citit, incluzând sursa, tipul, dimensiunea, spațiul utilizat, spațiul disponibil și procentul de utilizare.

df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent

Pentru a simplifica utilizarea unei comenzi lungi, se poate crea un alias. De exemplu, alias dfc="df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent" creează un alias numit dfc, care execută comanda completă. Pentru a face aliasul permanent, adăugați-l în fișierul .bashrc sau .bash_aliases.

alias dfc="df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent"

Dacă se dorește afișarea tuturor informațiilor, utilizați opțiunea -a (all) și --output fără a specifica coloane. Astfel, df -a --output va oferi un afișaj complet.

df -a --output

Pentru a naviga prin ieșirea lungă a comenzii, se poate transmite rezultatul către less cu comanda df -a --output | less.

df -a --output | less

Identificarea Directorului Care Utilizează Cel Mai Mult Spațiu

Pentru a determina ce directoare ocupă spațiul pe disc, folosim comanda du. Începem cu o comandă df pentru a afla cât spațiu este folosit pe o anumită partiție.

df -h -t ext4

Comanda du, lansată fără opțiuni, listează toate directoarele și subdirectoarele din directorul curent. Dacă o executați din directorul home, veți primi o listă foarte mare.

du

În mod implicit, du afișează dimensiunea în blocuri de 1K. Pentru a schimba unitatea de măsură, utilizați opțiunea -B, urmată de litera corespunzătoare (K, M, G, T, P, E, Z sau Y). De exemplu, pentru a afișa dimensiunile în megaocteți, folosiți du -BM.

du -BM

Similar comenzii df, și du are opțiunea -h (human-readable), care ajustează automat unitățile de măsură.

du -h

Opțiunea -s (summarize) afișează un total pentru fiecare director, fără a include subdirectoarele. De exemplu, du -h -s * va afișa dimensiunile tuturor directoarelor din directorul curent într-un format lizibil.

du -h -s *

Pentru a sorta rezultatele după dimensiune, se poate folosi comanda sort -nr, de exemplu du -sm Pictures/* | sort -nr, unde Pictures este directorul care ne interesează.

du -sm Pictures/* | sort -nr

Cu ajutorul comenzilor df și du, puteți înțelege cum este utilizat spațiul de stocare și puteți identifica acele fișiere și directoare care ocupă cel mai mult spațiu. Aceste informații vă vor ajuta să luați decizii informate despre gestionarea spațiului de stocare (mutarea datelor, ștergerea fișierelor redundante sau adăugarea de spațiu de stocare nou). Pentru informații suplimentare despre opțiunile comenzilor df și du, consultați paginile de manual Linux: df și du.