Lecții din modul (1/2)
Administrarea permisiunilor (chmod)
În Linux, accesul la fișiere și directoare este reglementat de un sistem de permisiuni. Fiecare fișier/director aparține unui utilizator proprietar și unui grup de utilizatori.
Permisiunile sunt împărțite în trei categorii de destinatari:
- Utilizator (u): proprietarul fișierului.
- Grup (g): Membrii grupului asociat cu fișierul.
- Alții (o): toți ceilalți din sistem.
Pentru fiecare categorie, există trei tipuri de acțiuni permise sau refuzate:
- Citiți (r): Vizualizați conținutul fișierului sau enumerați conținutul directorului.
- Scrie (w): Editează fișierul sau creează/șterge fișiere dintr-un director.
- Executați (x): rulați un fișier (de exemplu, un script) sau introduceți un director.
Notație tipică afișată de ls -l: -rwxr-xr-x.
Primul caracter indică tipul (de exemplu, - pentru fișier, d pentru director), urmat de trei tripleți pentru user, group și others
Modificarea permisiunilor: chmod
Comanda chmod (modificare de schimbare) vă permite să modificați permisiunile fișierelor. Există două moduri principale de a le specifica:
1. Modul simbolic
Utilizează litere și operatori (+, -, =) pentru a adăuga, elimina sau seta permisiuni:
chmod u+x script.sh # Adds execute permission (x) to the owner (u)
chmod g-w file.txt # Removes write permission (w) from the group (g)
chmod a+r file.txt # Makes the file readable by everyone (all: u, g, o)2. Modul octal (numeric)
Utilizează trei cifre octale de la 0 la 7, unde fiecare cifră reprezintă suma permisiunilor categoriei (r=4, w=2, x=1):
7=rwx(4 + 2 + 1)6=rw-(4 + 2)5=r-x(4 + 1)4=r--(4)0=---(fără permisiuni)
chmod 755 script.sh # Owner: rwx (7), Group: r-x (5), Others: r-x (5)
chmod 600 private.key # Owner: rw- (6), Group: --- (0), Others: --- (0)Încercați-l singur
Exercițiul 1: Setați permisiunile standard
Setați permisiunile pe „script.sh”, astfel încât proprietarul să poată citi, scrie și executa (rwx), în timp ce grupul și alții pot citi și executa doar (r-x). Utilizați modul octal.
Afișează indiciu
Codul octal pentru rwx este 7 (4+2+1), iar pentru r-x este 5 (4+1). Astfel, utilizați chmod 755.
Soluție disponibilă după 3 încercări
Exercițiul 2: Protejați o cheie privată
Modificați permisiunile fișierului „private.key” pentru a-l face lizibil și scris (rw-) numai de către proprietar, eliminând tot accesul pentru grup și altele (---).
Afișează indiciu
Utilizați chmod cu codul octal 600 (proprietarul are 4+2, grupul 0, alții 0).
Soluție disponibilă după 3 încercări
Exercițiul 3: Faceți un fișier executabil pentru toți
Faceți fișierul „runner.sh” executabil pentru toate categoriile de utilizatori folosind modul simbolic (a+x).
Afișează indiciu
Utilizați sintaxa chmod a+x urmată de numele fișierului.
Soluție disponibilă după 3 încercări