Permisiunile pentru fișiere și directoare Linux explicate

Linux este un sistem de operare multiutilizator, astfel încât mai mulți utilizatori pot interacționa cu același computer în același timp folosind Linux. Fiind un sistem de operare multiutilizator, este important ca Linux să garanteze securitatea și confidențialitatea fișierelor aparținând diferiților utilizatori.

Pentru a realiza acest lucru, Linux are un sistem elaborat pentru a gestiona permisiunile de fișiere și directoare. În acest fel, utilizatorii Linux pot controla accesul la fișiere de către diferiți utilizatori și ce acțiuni pot întreprinde utilizatorii atunci când folosesc computerul.

În calitate de utilizator Linux, este esențial să înțelegeți modul în care Linux gestionează permisiunile de fișiere și directoare și cum puteți lucra cu diferitele permisiuni disponibile pentru a vă securiza fișierele și a garanta funcționalitatea computerului. Pentru a înțelege cum gestionează Linux permisiunile de fișiere și directoare, să ne uităm mai întâi la diferitele categorii de utilizatori dintr-un sistem de operare Linux.

Categoria de utilizatori în Linux

Prima categorie de utilizatori sunt proprietarii unui fișier sau a unui director. Fiecare fișier sau director din Linux are un proprietar. Acest proprietar are de obicei mai multe permisiuni pentru fișierul sau directorul său. Proprietarul unui fișier este de obicei indicat prin litera u pentru utilizator.

În Linux, mai mulți utilizatori pot fi puși într-un grup și li se pot acorda permisiuni pentru fișiere ca grup. Aceștia sunt cunoscuți ca proprietari de grup și sunt reprezentați de litera g.

De exemplu, dacă aveți un fișier cu recomandări de carte și doriți să acordați mai multor utilizatori permisiuni similare fișierului, o modalitate ușoară de a face acest lucru este să puneți utilizatorii într-un grup și să acordați permisiuni grupului în ansamblu.

Cealaltă categorie de utilizatori este cunoscută sub numele de alții și este reprezentată de litera o. Aceștia sunt utilizatori care nu dețin fișierul și, de asemenea, nu fac parte dintr-un grup cu permisiuni pentru fișier. Alții reprezintă pe toți ceilalți din sistem.

Toți utilizatorii dintr-un computer, adică proprietarii de fișiere, utilizatorii din grupuri și alți utilizatori pot specifica folosind litera a.

Creați și adăugați un utilizator nou în Ubuntu Linux

Să vedem cum puteți crea și adăuga un utilizator nou în Ubuntu Linux. Pentru a urma acest tutorial, vă rugăm să creați și un utilizator nou.

1. Deschideți Setări și în bara de meniu din stânga, faceți clic pe Utilizator apoi faceți clic pe Deblocare și furnizați parola când vi se solicită. Trebuie să faceți clic pe Deblocare pentru a putea adăuga un nou utilizator. În mod implicit, această funcționalitate este blocată.

2. Odată deblocat, veți vedea o opțiune Adăugați utilizator, faceți clic pe ea pentru a adăuga un utilizator nou

3. Pentru a crea un utilizator nou, furnizați numele complet și numele de utilizator, selectați Setați o parolă acum și setați-i parola. În plus, asigurați-vă că tipul de cont este setat la Administrator, apoi faceți clic pe Adăugare pentru a adăuga un utilizator.

4. Ar trebui să vedeți un nou cont de utilizator pe care tocmai l-ați creat, așa cum se arată mai jos.

  Cum să faci o mașină virtuală în VirtualBox pe Linux

Permisiuni pentru fișiere și directoare Linux

Permisiunile se referă la regulile care guvernează accesul la fișiere și directoare și la acțiunile care pot fi efectuate asupra acestora de către diferiți utilizatori. Linux are trei categorii principale de permisiuni:

  • Read(r) – permite unui utilizator să vizualizeze conținutul unui fișier și să listeze conținutul unui director
  • Write(w) – permite unui utilizator să modifice conținutul unui fișier. În cazul directoarelor, permisiunile de scriere permit unui utilizator să modifice conținutul unui director, cum ar fi prin crearea, ștergerea, redenumirea sau mutarea fișierelor și subdirectoarelor din director. Cu toate acestea, permisiunile de scriere cu directoare funcționează numai dacă utilizatorul are și permisiuni de execuție.
  • Execute(x) – Permisiunile de execuție înseamnă că un fișier poate fi tratat ca un program care poate fi executat. În cazul directoarelor, permisiunea de execuție permite unui utilizator să introducă sau să „cd” în director.
  • Permisiunile de citire, scriere și execuție sunt atribuite celor trei categorii de utilizatori disponibile în Linux.

    Puteți citi, de asemenea, cum să eliminați fișiere și directoare în Linux

    Listare lungă în Linux

    Pentru a vizualiza conținutul unui fișier dintr-un director Linux, rulăm de obicei comanda ls. Cu toate acestea, aceasta listează doar fișierele și directoarele disponibile și nu oferă informații suplimentare.

    Pentru a vizualiza mai multe informații despre conținut, trebuie să utilizați formatul de listare lungă. Pentru a face acest lucru, rulați comanda ls cu indicatorul -l. Acest lucru vă va oferi permisiunile pentru fișiere, proprietarii unui fișier și proprietarii grupului pentru un fișier, așa cum se arată mai jos:

    În Ubuntu, în mod implicit, dacă nu a fost creat niciun grup, numele grupului este același cu proprietarul fișierului.

    Pentru a crea un grup, folosim comanda addgroup. Pentru a adăuga un grup numit editori, executați următoarea comandă și furnizați o parolă când vi se solicită

    sudo addgroup editors

    sudo ne permite să rulăm comenzi ca utilizator root, care este un super utilizator cu privilegii de a executa modificări care afectează toți utilizatorii computerului.

    Pentru a adăuga utilizatori la un grup folosim următoarea sintaxă:

    adduser <user> <group>

    Prin urmare, pentru a adăuga belmont și madici la grupul de editori, executăm

    sudo adduser belmont editors
    sudo adduser madici editors

    Pentru a vedea grupurile din care face parte un utilizator, executați:

    groups <username>

    Rezultatul comenzilor de mai sus este prezentat mai jos:

    Să ne uităm acum la Atributele fișierelor care ne spun despre tipurile de fișiere și permisiunea pe fișier. A.

    Atributele fișierelor în Linux

    În Linux, atributele fișierelor constau din exact zece caractere. Primul caracter indică tipul fișierului. Unele dintre primele caractere comune care reprezintă diferite fișiere includ:

    • d indică un director
    • – indică un fișier obișnuit, de exemplu fișiere text
    • c indică un fișier cu caractere speciale
    • l indică o legătură simbolică
    • b indică un fișier special bloc

    Restul de nouă caractere sunt folosite pentru a afișa permisiunile proprietarului, proprietarului grupului și altor utilizatori. Cele nouă personaje sunt împărțite în grupuri de trei. Primul grup indică permisiunile proprietarului, al doilea grup indică permisiunile proprietarului grupului, iar ultimele trei indică permisiunile pentru alții, adică pentru fiecare alt utilizator din computer.

    Permisiunile, pentru fiecare categorie sunt indicate începând cu citirea, apoi scrierea și în final permisiunea de execuție. Permisiunea de citire este indicată de litera r, permisiunea de scriere cu litera w și permisiunea de executare cu litera x.

      Cele mai bune 5 docuri de utilizat pe Linux

    Simbolul – este folosit în cazul în care un utilizator nu are o anumită permisiune. De exemplu, rw- pentru proprietarul grupului înseamnă că au atât permisiuni de citire, cât și de scriere, dar nu au permisiunea de execuție pe acel director (d).

    Modificarea permisiunilor pentru fișiere folosind notația simbolică

    Pentru a schimba permisiunile pentru un fișier sau director, folosim comanda chmod și specificăm pentru cine modificăm permisiunile.

    Acesta poate fi proprietarul fișierului reprezentat de litera u pentru utilizator, proprietarul grupului reprezentat de litera g sau alți utilizatori reprezentați de litera o. De asemenea, putem viza toate cele trei categorii de utilizatori folosind litera a, care înseamnă toate cele de mai sus.

    Următorul lucru pe care îl specificăm este schimbarea pe care o facem. Pentru a adăuga o permisiune folosim +(semnul plus). Pentru a elimina o permisiune folosim – (semnul minus). Ultimul lucru pe care îl oferim sunt permisiunile pe care le adăugăm folosind r,w sau x pentru a reprezenta cele trei permisiuni disponibile.

    Pentru a vedea acest lucru în acțiune, creați un director numit cărți folosind comanda de mai jos

    mkdir books

    Introduceți sau „cd” în director:

    cd books

    Creați un fișier numit readingList.txt

    touch readingList.txt

    Lista lungă a conținutului directorului cărților executând:

    ls -l

    Ieșirea este așa cum se arată:

    Fișierul pe care l-am creat este un fișier obișnuit, indicat de primul –, proprietarul și proprietarul grupului au permisiuni de citire și scriere, în timp ce alți utilizatori au doar permisiuni de citire. Pentru a acorda altor utilizatori permisiunea de a scrie în fișier, vom executa următoarea comandă:

    chmod o+w readingList.txt

    Pentru a vedea dacă permisiunile pentru alți utilizatori s-au schimbat, executați

    ls -l

    Ieșire:

    Observați că permisiunea de fișier a altor utilizatori s-a schimbat de la r– la rw-, ceea ce înseamnă că aceștia au acum permisiunea de scriere.

    Pentru a adăuga permisiuni de execuție proprietarului (utilizatorului) fișierului, executați:

    chmod u+x readingList.txt

    Pentru a elimina permisiunile de scriere de la proprietarii grupului, executați:

    chmod g-w readingList.txt

    Pentru a elimina permisiunile de citire de la toți utilizatorii, astfel încât nimeni să nu poată vizualiza fișierul, executați:

    chmod a-r readingList.txt

    Pentru a adăuga permisiunea de citire înapoi pentru proprietarul fișierului, executați:

    chmod u+r readingList.txt

    Pentru a adăuga permisiuni de scriere și executare pentru proprietarul grupului al fișierului, executați:

    chomod g+wx readingList.txt

    Modificarea permisiunilor folosind notația octală

    În Linux, fiecare dintre cele trei permisiuni disponibile are doar două valori posibile. Permisiunea de citire poate fi doar r sau – , permisiunea de scriere poate fi doar w sau –, iar permisiunea de execuție poate fi doar x sau –.

    Prin urmare, aceste permisiuni pot fi considerate a fi activate sau dezactivate și, prin urmare, pot fi reprezentate folosind numere binare, care au doar două valori disponibile. Adică 1 pentru activat sau adevărat și 0 pentru off sau fals. Acolo, o permisiune precum rw– poate fi reprezentată ca 110 folosind numere binare.

    Prin urmare, pentru orice categorie de utilizator, trei numere binare sunt suficiente pentru a-și prezenta toate permisiunile. De exemplu, permisiunea pentru proprietar, grup și alte rwxrw-r– poate fi reprezentată ca 111110100 folosind un număr binar.

      Cum să redați videoclipuri în flux pe Chromecast pe Linux prin linia de comandă

    Cu toate acestea, pentru a evita scrierea unui număr binar, care este lung și ușor confuz, o alternativă mai bună este să folosiți numere octale.

    Numerele octale au o bază de 8 și astfel au doar 8 valori posibile. Fiecare număr octal se mapează la exact trei cifre binare.

    Prin urmare, o permisiune precum rw- poate fi reprezentată ca 110 în binar. Echivalentul octal al lui 110 este 6 și, prin urmare, 6 poate fi folosit pentru a reprezenta rw-. Numerele octale pot fi folosite pentru a reprezenta permisiunile de citire, scriere și executare ale proprietarului, grupului și altora, după cum se arată mai jos:

    În loc să scrieți cifre binare lungi, este mai bine să reprezentați permisiunile folosind numere octale. Prin urmare, toate permisiunile proprietarului, grupului și altora sunt reprezentate folosind numere octale unice, așa cum se arată în diagrama de mai sus.

    Avantajul utilizării notației octale pentru a seta permisiunile este că vă permite să setați permisiunea pentru toți utilizatorii deodată, spre deosebire de notația simbolică, unde puteți seta doar permisiunea unui singur utilizator la un moment dat.

    Cu toate acestea, utilizarea notației octale necesită ceva timp și practică pentru a putea reaminti la ce se rezolvă fiecare număr octal. Acestea fiind spuse, nu ezitați să vă referiți la diagrama de mai sus ori de câte ori utilizați notația octală. Să ne uităm la câteva exemple de modificare a permisiunilor folosind notația octală

    Pentru a oferi tuturor utilizatorilor, adică proprietarului, proprietarului grupului și altor utilizatori, permisiunea de citire, scriere și execuție pentru readList.txt, executați:

    chmod 777 readingList.txt

    Pentru a verifica dacă permisiunile au fost modificate, executați:

    ls -l

    Ieșire:

    total 0
    -rwxrwxrwx 1 madici madici 0 Sep  6 05:45 readingList.txt

    Observați că acum proprietarul, grupul și alți utilizatori au permisiunea de a citi, scrie și executa readList.txt.

    Pentru a elimina permisiunile de scriere atât de la proprietarul grupului, cât și de la alții, executați:

    chmod 755 readingList.txt

    Pentru a elimina permisiunea de execuție de la proprietar și alții execută:

    chmod 654 readingList.txt

    Permisiuni speciale în Linux

    Linux are trei permisiuni speciale care pot fi aplicate fișierelor și directoarelor în plus față de permisiunile standard de citire, scriere și execuție. Aceste permisiuni oferă funcționalități avansate pentru controlul accesului și permit utilizatorilor cu mai puține privilegii să execute fișiere și comenzi cu privilegii mai mari, la fel ca proprietarul fișierului sau proprietarul grupului.

    Permisiunile speciale includ:

    • Set User ID(SUID) – permisiunea SUID permite unui utilizator să execute un fișier sau un program cu privilegiile proprietarului și nu ale utilizatorului care îl execută. Acest lucru este util atunci când utilizatorii standard trebuie să efectueze sarcini care necesită privilegii ridicate.
    • Set Group ID(SGID) – permisiunea SGID permite unui utilizator să execute un fișier cu permisiunile proprietarului grupului al fișierului, mai degrabă decât cu permisiunile grupului său real.
    • Sticky Bit – Bit sticky este permisiunea setată de obicei la directoare pentru a se asigura că fișierele din director pot fi șterse numai de proprietarul real al directorului, proprietarul acelui fișier sau utilizatorul root.

    Cele trei permisiuni speciale pot fi utilizate alături de permisiunile standard: citire, scriere și execuție.

    Concluzie

    Permisiunile sunt un concept important în Linux, chiar dacă computerul dvs. nu are mai mulți utilizatori. Înțelegerea permisiunii este importantă pentru a asigura controlul, securitatea și confidențialitatea datelor stocate într-un sistem Linux și funcționalitatea acestuia. Prin urmare, luați în considerare familiarizarea cu permisiunile exersând ceea ce ați învățat despre permisiuni în acest articol.

    De asemenea, puteți explora cum să utilizați comenzile Linux pe Windows.