Skip to main content

Cyber AI România

Cum înțelegi structura folderelor în Linux: /home, /etc, /var, /tmp și /usr explicate practic

În Linux, toate directoarele pornesc dintr-un singur punct: /, numit rădăcina sistemului. Nu există litere de unitate precum C: și D:. Discurile și partițiile sunt montate în această structură, iar directoarele importante au roluri bine stabilite. Filesystem Hierarchy Standard definește aceste convenții pentru ca utilizatorii, aplicațiile și administratorii să știe unde trebuie păstrate programele, configurările și datele.

Începe explorarea cu:

pwd
ls -la /

pwd arată directorul în care te afli, iar ls -la / afișează conținutul rădăcinii. Pentru învățare, limitează-te la citire. Nu șterge și nu modifica fișiere de sistem cu sudo.

/home: documentele și setările utilizatorilor

Fiecare utilizator normal are, de regulă, un director propriu, precum:

/home/ion
/home/maria

Acolo sunt păstrate documentele, descărcările și configurările personale ale aplicațiilor. Caracterul ~ reprezintă directorul personal al utilizatorului conectat:

echo "$HOME"
cd ~
ls -la

Opțiunea -a arată și fișierele ascunse, precum .bashrc, .config sau .ssh. Acestea sunt numite frecvent „dotfiles”, deoarece numele lor începe cu punct. Standardul recomandă ca setările specifice utilizatorului să fie păstrate în directorul său personal.

Nu confunda /home cu /root. Contul administrativ root are propriul director personal, de regulă /root.

Exemplu concret: cheile SSH ale utilizatorului sunt păstrate în:

/home/ion/.ssh/

/etc: configurația sistemului

Directorul /etc conține fișierele de configurare ale sistemului și serviciilor instalate. Aici găsești setările pentru SSH, montarea discurilor, rețea, utilizatori și numeroase aplicații:

ls -la /etc/ssh/
cat /etc/os-release
cat /etc/fstab

Filesystem Hierarchy Standard definește /etc drept locația configurațiilor specifice sistemului și precizează că nu trebuie să conțină programe binare executabile.

Înainte să modifici un fișier important, creează o copie:

sudo cp -a /etc/ssh/sshd_config \
  /etc/ssh/sshd_config.bak

După modificare, verifică sintaxa înainte de restart. Pentru SSH:

sudo sshd -t

Nu salva documente personale sau backup-uri în /etc.

/var: loguri și date care se modifică

/var conține date variabile, adică informații care se schimbă în timpul funcționării sistemului. Aici intră logurile, cache-urile, cozile de procesare și starea persistentă a aplicațiilor.

Directoare importante:

/var/log      loguri de sistem și aplicații
/var/cache    date cache
/var/lib      starea aplicațiilor și bazelor de date
/var/spool    cozi de email, imprimare sau alte procese
/var/www      folosit frecvent pentru fișierele site-urilor

Verifică spațiul ocupat:

df -h
sudo du -xhd1 /var | sort -h
sudo find /var/log -type f -size +100M -ls

Nu șterge manual fișiere din /var/lib. Acolo pot exista baze de date, informații despre pachete și date fără de care serviciile nu mai pornesc.

/tmp: fișiere temporare

/tmp este destinat fișierelor temporare. Aplicațiile nu trebuie să presupună că datele de aici vor fi păstrate, iar sistemul le poate elimina automat, inclusiv la pornire.

Pentru un director temporar sigur:

WORKDIR="$(mktemp -d)"
printf '%s\n' "$WORKDIR"

După ce termini:

rm -r -- "$WORKDIR"

Nu păstra documente importante sau backup-uri în /tmp. Pentru fișiere temporare care trebuie să reziste după restart există /var/tmp, care este curățat mai rar, dar nici acesta nu este o locație de arhivare permanentă.

/usr: programe și biblioteci instalate

/usr nu înseamnă „folderul utilizatorilor”. Conține în principal software, biblioteci și date statice instalate de distribuție. Standardul descrie /usr ca zonă pentru date partajabile și, în principiu, nemodificate în timpul funcționării normale.

Structura de bază:

/usr/bin       majoritatea comenzilor
/usr/lib       biblioteci și componente software
/usr/share     documentație, iconuri și date comune
/usr/sbin      utilitare administrative
/usr/local     software instalat local de administrator

Verifică unde se află o comandă:

command -v grep
readlink -f "$(command -v grep)"

Nu copia manual programe în /usr/bin. Folosește managerul de pachete. Pentru scripturi administrate local, /usr/local/bin este de regulă locul potrivit și este protejat de suprascrierea produsă de actualizările normale ale distribuției.

Regula simplă de memorare este aceasta: /home pentru utilizatori, /etc pentru configurații, /var pentru date care se schimbă, /tmp pentru fișiere temporare și /usr pentru programe și resurse instalate.

Surse folosite

Filesystem Hierarchy Standard — structura generală și rolul directoarelor Linux.
Filesystem Hierarchy Standard — /home, /etc, /tmp, /usr și /var.
Filesystem Hierarchy Standard — utilizarea /usr/local pentru software instalat local.

Facebook
X
WhatsApp

Te-ar putea interesa si: