Cum să schimbați permisiunile pentru fișiere în Linux

Cum să schimbați permisiunile pentru fișiere în Linux

Cum să schimbați permisiunile pentru fișiere în Linux

Linux, ca și alte sisteme de operare, se organizează folosind directoare și fișiere care pot fi accesate, modificate sau executate. Pentru a preveni anarhia internă, Linux oferă diferite niveluri de permisiune pentru a interacționa cu acele fișiere și directoare. Dacă doriți să modificați acele permisiuni, comanda chmod (modul de schimbare) este ceea ce aveți nevoie.

Vă prezentăm comanda chmod

Ce vă poate permite chmodul Schimbare? Permisiunea poate fi acordată sau refuzată diferiților utilizatori pentru citirea ( r ) unui fișier, scrierea ( w ) în fișier și executarea ( x ) fișierul, în cazul unui program. Sistemul de permisiuni pentru directoare este foarte asemănător: „ r ” pentru citirea conținutului directorului, „ w ” pentru scrierea în director prin crearea de fișiere sau subdirectoare și „ x ” pentru intrarea în acel director.

Aceste niveluri de permisiune pot fi definite pentru proprietarul( u ) al fișierului sau directorului, grupul( g ) căruia îi aparține proprietarul, ceilalți( o ) utilizatori sau pur și simplu toți( a ) utilizatorii simultan.

Folosind comanda ls pentru o listă cu format lung

Dacă utilizați comanda ls cu opțiunea -l (pentru o listă cu format lung) pe un fișier dat, cum ar fi my_app, de exemplu, veți vedea rezultate similare cu aceasta:

$ ls -l my_app

SAU

-rwxr-x–x 1 hadley tech 729 15 mar 08:01 my_app

Primul caracter (“ ” în acest caz) arată că entitatea „my_app” este într-adevăr un fișier. Dacă ar fi fost un director, am fi văzut d drept primul personaj. În continuare, vedem trei loturi de trei caractere (rwxr-x–x). Primele trei ( rwx ) înseamnă că proprietarul fișierului (numit „Hadley” puțin mai departe) are permisiunea de a citi, scrie și executa my_app . Următoarele trei ( rx ) indică faptul că membrii aceluiași grup ca Hadley (grupul „tehnologic”) pot citi și executa my_app , dar nu o pot scrie sau modifica. Ultimele trei caractere ( –x ). înseamnă că alți utilizatori pot executa pur și simplu my_app , dar nici nu citesc și nici nu scrie în ea.

Comanda chmod în acțiune

Deci, cum folosim chmod pentru a modifica aceste permisiuni? Vom folosi o comandă ca:

$ chmod 771 my_app

SAU

$ chmod g+w my_app

În contextul de mai sus, aceste două comenzi înseamnă de fapt același lucru. Pentru a vedea de ce, trebuie să înțelegem că chmod are o particularitate. Acceptă instrucțiuni de modificare a permisiunilor de fișiere pentru diferiți utilizatori, fie prin utilizarea combinațiilor acestor litere (format text sau simbolic), fie prin utilizarea unui sistem de numere (format numeric sau octal). Iată cum corespund cele două sisteme:

  • Permisiunea de a citi, r , primește valoarea numerică 4
  • Permisiunea de a scrie, w , are valoarea 2
  • Permisiunea de a executa, x , are valoarea 1

Deci, în situația inițială din exemplul nostru de mai sus, Hadley, care este proprietarul fișierului, are permisiunea de a face totul ( rwx ), sau în termeni numerici, are permisiunea 4 + 2 + 1 = 7. În mod similar, alți membri ai lui Hadley grup, „tech”, au permisiunea de a citi și executa fișierul, dar nu de a scrie în el. Deci au permisiunea rx , sau numeric au 4 + 1, ceea ce face 5. Toți ceilalți au doar –x sau 1. Șirul nostru de caractere -rwxr-x–x devine apoi 751 în cifre.

Deci, comanda noastră chmod 771 my_app de mai sus schimbă pur și simplu nivelul 751 de permisiune la 771. Cu alte cuvinte, doar adăugăm permisiunea de scriere ( w sau 2) membrilor grupului lui Hadley, „tech”. Acum, sensul celeilalte versiuni a aceleiași comenzi devine și el clar: g+w înseamnă pur și simplu „adăugați permisiunea de scriere pentru membrii grupului lui Hadley”, la fel ca înainte.

Dacă permisiunile complete de citire, scriere și execuție ar fi acordate tuturor, atunci cele două forme ale comenzii chmod ar arăta astfel:

$ chmod 777 my_app

SAU

$ chmod ugo+rwx my_app

Și ambele ar avea același efect.

Opțiuni suplimentare ale comenzii chmod

Comanda chmod are și opțiuni despre care ar putea fi util să știți. Ei includ:

  • -R pentru aplicarea recursiva a acelorași permisiuni la un director și la toate subdirectoarele și fișierele din director și diferitele sale subdirectoare
  • -c pentru a raporta când se face o modificare, -f pentru a suprima mesajele de eroare și –v (verbos) pentru a scoate un diagnostic pentru fiecare fișier sau director procesat

De exemplu,

$ chmod -R a+rwx /mydir

Acest lucru ar asigura că toată lumea ( a ) avea permisiuni complete de citire, scriere și executare pentru mydir și toate subdirectoarele și fișierele din el.

Surse foto: newsyaps.com

Dezvăluirea agentului de publicitate

Gazduirweb este o resursă online gratuită care oferă utilizatorilor conținut valoros și servicii de comparare. Pentru a menține această resursă 100% gratuită, primim compensații de la multe dintre ofertele afișate pe site. Alături de factorii cheie de revizuire, această compensație poate afecta modul în care și locul în care apar produsele pe site (inclusiv, de exemplu, ordinea în care apar). Gazduirweb nu include întregul univers al ofertelor disponibile. Opiniile editoriale exprimate pe site sunt strict ale noastre și nu sunt furnizate, susținute sau aprobate de agenții de publicitate.

Politica noastră de revizuire editorială

Site-ul nostru se angajează să publice conținut independent, precis, ghidat de reguli editoriale stricte. Înainte ca articolele și recenziile să fie publicate pe site-ul nostru, acestea sunt supuse unui proces amănunțit de revizuire efectuat de o echipă de editori independenți și experți în materie pentru a asigura acuratețea, actualitatea și imparțialitatea conținutului. Echipa noastră editorială este separată și independentă de agenții de publicitate ai site-ului nostru, iar opiniile pe care le exprimă pe site-ul nostru sunt proprii. Pentru a citi mai multe despre membrii echipei noastre și despre mediul lor editorial, vă rugăm să vizitați pagina Despre a site-ului nostru.

Leave a Reply

Copyright © 1999 - 2022 Phox Operating Company