Permisiuni de fișiere în Linux / Unix: Cum să citiți, să scrieți și să schimbați?

Linux este o clonă a UNIX, sistemul de operare multi-utilizator care poate fi accesat de mai mulți utilizatori simultan. Linux poate fi folosit și în mainframe și servere fără nicio modificare. Dar acest lucru ridică probleme de securitate, deoarece un utilizator nesolicitat sau rău intenționat poate corupe, modifica sau elimina date esențiale. Pentru o securitate eficientă, Linux împarte autorizarea în 2 niveluri.

  1. Proprietate
  2. permisiune

Conceptul de fișier Linux permisiune si proprietate este crucială în Linux. Aici, vom explica permisiunile și proprietatea Linux și le vom discuta pe ambele. Să începem cu Proprietate.

Clic aici dacă videoclipul nu este accesibil

Proprietatea fișierelor Linux

Fiecărui fișier și director de pe sistemul dumneavoastră Unix/Linux i se atribuie 3 tipuri de proprietar, prezentate mai jos.

Utilizator

Un utilizator este proprietarul fișierului. În mod implicit, persoana care a creat un fișier devine proprietarul acestuia. Prin urmare, un utilizator este uneori numit și proprietar.

grup

Un grup de utilizatori poate conține mai mulți utilizatori. Toți utilizatorii care aparțin unui grup vor avea aceleași permisiuni de grup Linux acces la fișier. Să presupunem că aveți un proiect în care un număr de persoane necesită acces la un fișier. În loc să atribuiți manual permisiuni fiecărui utilizator, puteți adăuga toți utilizatorii la un grup și puteți atribui permisiuni de grup pentru fișiere astfel încât numai membrii acestui grup și nimeni altcineva să poată citi sau modifica fișierele.

Altele

Orice alt utilizator care are acces la un fișier. Această persoană nici nu a creat fișierul și nici nu aparține unui grup de utilizatori care ar putea deține fișierul. Practic, înseamnă toți ceilalți. Prin urmare, atunci când setați permisiunea pentru alții, aceasta se mai numește și permisiuni stabilite pentru lume.

Acum, marea întrebare se pune cum se face Linux distinge între aceste trei tipuri de utilizatori, astfel încât un utilizator „A” nu poate afecta un fișier care conține informații/date vitale ale altor utilizatori „B”. Este ca și cum nu-ți dorești colegul, care lucrează la tine Calculator Linux, pentru a vizualiza imaginile dvs. Aici e locul Permisiuni se instalează și ei definesc comportamentul utilizatorului.

Să înțelegem Sistem de permisiuni pe Linux.

Permisiuni de fișiere Linux

Fiecare fișier și director din sistemul dumneavoastră UNIX/Linux are următoarele 3 permisiuni definite pentru toți cei 3 proprietari discutați mai sus.

  • Citi: Această permisiune vă oferă autoritatea de a deschide și a citi un fișier. Permisiunea de citire a unui director vă oferă posibilitatea de a lista conținutul acestuia.
  • Scrie: Permisiunea de scriere vă oferă autoritatea de a modifica conținutul unui fișier. Permisiunea de scriere pe un director vă oferă autoritatea de a adăuga, elimina și redenumi fișierele stocate în director. Luați în considerare un scenariu în care trebuie să scrieți permisiunea pe fișier, dar nu aveți permisiunea de scriere pe directorul în care este stocat fișierul. Veți putea modifica conținutul fișierului. Dar nu veți putea redenumi, muta sau elimina fișierul din director.
  • A executa: In Windows, un program executabil are de obicei extensia „.exe” și pe care o puteți rula cu ușurință. În Unix/Linux, nu puteți rula un program decât dacă este setată permisiunea de execuție. Dacă permisiunea de execuție nu este setată, este posibil să puteți vedea/modifica în continuare codul programului (cu condiția ca permisiunile de citire și scriere să fie setate), dar să nu îl rulați.

Permisiuni de fișiere Linux
Permisiuni de fișiere în Linux/Unix

Să vedem permisiunile fișierelor în Linux cu exemple:

ls – l pe terminal dă

ls - l

Permisiuni de fișiere Linux

Aici, am evidențiat '-rw-rw-r–'și acest cod cu aspect ciudat este cel care ne spune despre permisiunile Unix acordate proprietarului, grupului de utilizatori și lumii.

Aici, primul'-' implică faptul că am selectat un fișier.p>

Permisiuni de fișiere Linux

Altfel, dacă ar fi un director, d ar fi fost arătat.

Permisiuni de fișiere Linux

Caracterele sunt destul de ușor de reținut.

r = permisiunea de citire
w = permisiune de scriere
x = executa permisiunea
- = nici o permisiune

Să ne uităm la asta în acest fel.

Prima parte a codului este 'rw-'. Aceasta sugerează că proprietarul „Acasă” poate:

Permisiune pentru fișiere Linux

  • Citiți fișierul
  • Scrieți sau editați fișierul
  • El nu poate executa fișierul deoarece bitul de execuție este setat la „-”.

Prin design, multe distribuții Linux precum Fedora, CentOS, Ubuntu, etc. vor adăuga utilizatori la un grup cu același nume de grup ca și numele de utilizator. Astfel, un utilizator „tom” este adăugat la un grup numit „tom”.

A doua parte este „rw-”. Pentru grupul de utilizatori „Acasă” și membrii grupului pot:

  • Citiți fișierul
  • Scrieți sau editați fișierul

A treia parte este pentru lume, ceea ce înseamnă orice utilizator. Se spune „r–”. Aceasta înseamnă că utilizatorul poate doar:

  • Citiți fișierul

Permisiuni de fișiere Linux

Modificarea permisiunilor pentru fișiere/directoare în Linux Folosind comanda „chmod”.

Spuneți că nu doriți ca colegul dvs. să vă vadă imaginile personale. Acest lucru se poate realiza prin schimbarea permisiunilor pentru fișiere.

Putem folosi „Chmod' comandă care înseamnă „mod de schimbare”. Folosind comanda, putem seta permisiuni (citire, scriere, executare) pe un fișier/director pentru proprietar, grup și lume.

Sintaxă:

chmod permissions filename

Există 2 moduri de a utiliza comandă -

  1. Modul absolut
  2. Modul simbolic

Modul absolut (numeric) în Linux

În acest mod, fișier permisiunile nu sunt reprezentate ca caractere, ci un număr octal de trei cifre.

Tabelul de mai jos oferă numere pentru toate tipurile de permisiuni.

Număr Tip de permisiune Simbol
0 Fara permisiune -
1 Executa -X
2 Scrie -W-
3 Executare + Scriere -wx
4 Citeste r–
5 Citiți + Executați rx
6 Citiți + Scrieți rw-
7 Citire + Scriere + Executare rwx

Să vedem comanda chmod permissions în acțiune.

Modul absolut (numeric) în Linux

În fereastra terminalului de mai sus, am schimbat permisiunile fișierului „eșantion în „764”.

Modul absolut (numeric) în Linux

Codul absolut „764” spune următoarele:

  • Proprietarul poate citi, scrie și executa
  • Grupul de utilizatori poate citi și scrie
  • Lumea nu poate decât să citească

Acesta este afișat ca „-rwxrw-r–

Acesta este modul în care puteți modifica permisiunile utilizatorului în Linux pe fișier, alocand un număr absolut.

Modul simbolic în Linux

În modul Absolut, modificați permisiunile pentru toți cei 3 proprietari. În modul simbolic, puteți modifica permisiunile unui anumit proprietar. Utilizează simboluri matematice pentru a modifica permisiunile pentru fișierele Unix.

OperaTdR Descriere

+

Adaugă o permisiune la un fișier sau director

-

Îndepărtează permisiunea

=

Setează permisiunea și înlocuiește permisiunile setate mai devreme.

Diferiții proprietari sunt reprezentați ca:

Denotații utilizator

u

proprietar / utilizator

g

grup

o

alte

a

toate

Nu vom folosi permisiuni în numere precum 755, ci caractere precum rwx. Să privim un exemplu

Modul simbolic în Linux

Schimbarea proprietății și a grupului în Linux

Pentru a schimba dreptul de proprietate asupra unui fișier/director, puteți utiliza următoarea comandă:

chown user filename

În cazul în care doriți să schimbați utilizatorul și grupul pentru un fișier sau director, utilizați comanda

chown user:group filename

Să vedem asta în acțiune

Schimbarea proprietății și a grupului în Linux

În cazul în care doriți să schimbați numai proprietarul grupului, utilizați comanda

chgrp group_name filename

"chgrp' reprezintă grupul de schimbare.

Schimbarea proprietății și a grupului în Linux

Vârf

  • Fișierul /etc/group conține toate grupurile definite în sistem
  • Puteți folosi comanda „grupuri” pentru a găsi toate grupurile din care sunteți membru o
  • Schimbarea proprietății și a grupului în Linux

  • Puteți folosi comanda newgrp pentru a lucra ca membru al unui grup, altul decât cel implicit
  • Schimbarea proprietății și a grupului în Linux

  • Nu puteți avea 2 grupuri care dețin același fișier.
  • Nu aveți grupuri imbricate în Linux. Un grup nu poate fi subgrup al altuia
  • x- Executarea unui director înseamnă a avea permisiunea de a „introduce” un director și de a obține posibil acces la subdirectoare
  • Există și alte permisiuni pe care le puteți seta pentru fișiere și directoare, care vor fi tratate într-un tutorial avansat ulterior

Rezumat:

  • Linux fiind un sistem multi-utilizator utilizează permisiuni și proprietate pentru securitate.
  • Există trei tipuri de utilizatori pe un sistem Linux, adică. Utilizator, grup și altele
  • Linux împarte permisiunile de fișier în citire, scriere și execuție notate cu r,w și x
  • Permisiunile pentru un fișier pot fi modificate prin comanda „chmod”, care poate fi împărțită în mod absolut și simbolic
  • Comanda „chown” poate schimba dreptul de proprietate asupra unui fișier/director. Utilizați următoarele comenzi: chown user file sau chown user:fișier grup
  • Comanda „chgrp” poate schimba proprietatea grupului numele fișierului grupului chrgrp
  • Ce înseamnă x – Executarea unui director? R: Aveți voie să „introduceți” un director și să obțineți posibil acces la sub-directoare.