Schimbați proprietarul fișierului Linux. Chown - comandă pentru a schimba proprietarul fișierelor și folderelor în Linux

Acasă / Laptop-uri

Fiecare fișier sau folder din Linux are propriile permisiuni.

Există 3 tipuri de drepturi:
citește (r), scrie (w), execută (x)

Drepturile sunt definite pentru 3 tipuri de utilizatori:
proprietar(u), grup(g), toți ceilalți (o)

Deci, drepturile fiecărui fișier sunt de 9 biți de informații (3 tipuri de drepturi * 3 tipuri de utilizatori), respectiv, fiecare bit poate fi setat (=1) accesul este permis, sau accesul resetat (=0) este interzis.

La atribuirea drepturilor, se obișnuiește să se folosească sistemul de numere octale.

Reprezentarea text a drepturilor (10 caractere):
- rwxr- - r - -
0123456789

Personaj în poziția 0:
"-" - fișier obișnuit, "d" - folder, "l" - link

Simboluri în pozițiile 1-3:
„rwx” - drepturi de proprietar

Simboluri în pozițiile 4-6:
"r - -" - drepturi pentru grup

Simboluri în pozițiile 7-9:
"r - -" - drepturi pentru toți ceilalți

Tabel pentru stabilirea drepturilor:

După cum se poate observa din tabel, drepturile sunt ușor de calculat
simplă însumare. 1=executare, 2=scriere, 4=citire.
de exemplu, execuția(1) și citirea(4) sunt necesare, obținem 1+4=5

Exemplul 644:
- proprietar(u) citește și scrie
- grupa(g) numai pentru citire
- altele(o) numai pentru citire

Exemplul 755:
- proprietar(i) tuturor drepturilor
- grupa (g) citește și execută
- alte(o) lectură și execuție

În limbaje de programare precum C,
0 se adaugă la drepturile la începutul fiecărui număr, ceea ce înseamnă că numărul este octal, adică. scrieți 0644 în loc de 644. Când schimbați drepturile din linia de comandă, acest lucru nu este de obicei necesar.

Reprezentarea drepturilor din patru cifre (4755), drepturi suplimentare
SUID, SGID, sticky bits:

  • SUID sau setuid: schimbați „ID utilizator” în timpul execuției
  • SGID sau setgid: modificați „ID-ul grupului” în timpul execuției
  • sticky bit: dezactivează ștergerea pentru toți utilizatorii, cu excepția proprietarului. Anterior, bitul însemna „păstrare” în memorie după finalizarea procesului
Masă. Reprezentare numerică drepturi suplimentare:

Reprezentarea textuală a biților suplimentari:
Biții suplimentari sunt indicați prin următoarele simboluri:
„S”, „s” - SUID, SGID
"T","t" - bit lipicios
poziția acestor biți coincide cu pozițiile (3,6,9) ale drepturilor de execuție „x”
cu toate acestea, dacă nu există drepturi de executare, " majuscule" adică caractere mari. Dacă sunt setate drepturi de execuție, " literă mică„adică personaje mici.

exemple:

Set SUID:
- r w s - - - - - - Setați biți SUID și executați pentru proprietar
- r - S - - - - - - Bit SUID setat, bitul de execuție nesetat

Set SGID:
- r w x r w s - - - Setați biți SGID și execuția grupului
- r w x r - S - - - Biți SGID setat, nesetat. execuție pentru grup

set de biți lipicios:
- r w x r w x r w t set de biți sticky și execuție pentru alții
- r w x r w x r - T sticky bit este setat, dar nu este setat. performanță pentru alții

Diferențe în efectul drepturilor la instalarea pe fișiere și foldere:

drepturifișierefoldere
lectură citirea conținutuluiobținerea unei liste de fișiere
înregistra înregistrarea conținutuluimodificarea listei de fișiere
(creare, ștergere, redenumire)
execuţiefisierul poate fi executatutilizatorul sau procesul poate face folderul „actual/funcționar”
SUID Setați „ID utilizator” când executați Ignorați ID-ul utilizatorului la crearea fișierului/dosarului (utilizați ID-ul proprietarului folderului rădăcină)
SGID Setați „ID grup” când executați Ignorați ID-ul de grup la crearea fișierului/dosarului (utilizați ID-ul de grup al folderului rădăcină)
lipicios împiedică ștergerea de către toată lumea, cu excepția proprietarului

modifica comanda chmod dreapta:
chmod [-R] permisiuni de fișier/dosar

„-R” aplică permisiunile în mod recursiv tuturor fișierelor și subdosarelor

Exemple:
folderul chmod -R 755/
fișier chmod 644
etc.

Este posibilă modificarea drepturilor nu în totalitate, ci doar adăugarea sau revocarea drepturilor numai pentru anumite grupuri de utilizatori
folosind simboluri în loc de numere octale.
"u" - utilizator/proprietar
„g” - grup de utilizatori
"o" - alți utilizatori
„a” - toate grupurile de utilizatori

Format de permisiune [[+-=],...

Exemple:
chmod -R a+x folder/ executa recursiv pentru toate grupurile
Fișierul chmod a+rx citit și executat pentru toată lumea
chmod u+rx,g-rx adaugă fișierul citire și executare pentru proprietar și
revoca permisiunile pentru un grup
chmod a+r,o= adaugă fișierul citit pentru toate tipurile de grup și revocă
toate drepturile pentru toți ceilalți utilizatori

comanda de schimbare a proprietarului chown:

Chown [-R] proprietar: fișier/dosar de grup

Exemple:
chown -R 0:0 folder/ set owner/group = root recursiv
chown myuser:fișierul meu grup setați utilizatorul meu/grupul meu pentru fișier

Schimbați dreptul de proprietate și permisiunile fișierelor și folderelor pe sistemele Linux și *BSD

Informațiile de mai jos vor fi utile pentru începători Linux si * BSD administratorii de sistem. În general, în orice sistem de operare, fie că este Linux, Windows sau FreeBSD, funcționarea corectă a aplicațiilor, serviciilor și securitatea sistemului în ansamblu depinde direct de drepturile de acces la fișiere și foldere. Folosind instrumentele de mai jos, puteți rezolva aproape 90% dintre problemele care apar la setarea drepturilor de acces.

Schimbați proprietarul pentru toate dosarele și fișierele. În aceste scopuri, Unix folosește comanda chown. Are o serie de parametri:

  • Opțiuni. De exemplu, pentru ca modificările să afecteze nu numai acest director, ci și toate subdirectoarele, trebuie să aplicați comanda recursiv, de exemplu. cu parametrul „-R”.
  • Proprietarul sau grupul de proprietari („utilizator:grup” sau „utilizator”).
  • Căi către foldere/fișiere la care ar trebui aplicată comanda. De exemplu, „/mnt/pool1/dts1/backup”.

Astfel, comanda de schimbare a proprietarului (și grupului de proprietari) pentru directoare și toate subfolderele și fișierele va arăta astfel:

sudo chown -R utilizator:grup /home/user/dir/

Schimbați permisiunile pentru un fișier sau folderîn sistemele Linux și *BDS puteți utiliza comanda chmod. Este de remarcat faptul că Unix are propriile sale particularități în funcționarea acestei comenzi și principiul separării drepturilor. Deci, pe lângă proprietarul unui fișier sau folder, puteți configura ce operațiuni pot efectua același proprietar și grup, precum și toți ceilalți utilizatori. În Unix, capabilitățile sunt împărțite în felul următor - proprietar, grup de proprietari și altele. Există, de asemenea, următoarea împărțire a drepturilor:

  • Dreptul de a rula un fișier (pentru foldere - parcurgerea directorului).
  • Dreptul de a modifica un fișier (crearea și ștergerea fișierelor și folderelor dintr-un director)
  • Dreptul de a citi un fișier (pentru foldere, acesta este dreptul de a vizualiza conținutul directorului)

Pentru ușurință în utilizare și memorare, se utilizează următoarea codificare:

  • lansare - 1
  • schimbare - 2
  • lectură - 4

Prin adăugarea acestor simboluri digitale obținem un set de drepturi acordate proprietarului/grupului/alților. Să ne uităm la aceste informații folosind un exemplu:

Doar proprietarul are dreptul de a schimba fișierul, grupul proprietarului poate citi, restul nu poate face nimic, așa că comanda va fi astfel:

chmod 640 /media/fileshare/file.txt

Toată lumea poate crea fișiere în dosar, dar numai proprietarul le poate vedea:

chmod 622 /media/fileshare/messages/

Pentru ca toată lumea să poată rula un program, dar nimeni, în afară de proprietar, nu îl poate edita:

chmod 711 /media/share/exec

Pentru a modifica drepturile la toate fișierele și folderele atașate (adică în mod recursiv), comutatorul „-R” este folosit din nou.

Atunci când efectuați aceste operațiuni, merită să înțelegeți că numai administratorii și proprietarul acestor foldere și fișiere pot modifica drepturile asupra fișierelor și directoarelor.

Modificarea permisiunilor numai pentru fișiere sau numai pentru foldere- echipa găsi. În acest caz, fișierele sunt desemnate ca fișier (f), iar directoarele, respectiv, ca d. De exemplu:

Ajutor cu comanda chown în Linux

Pentru a schimba utilizatorul și/sau grupul unui fișier și/sau folder în Linux, utilizați comanda chown. Ca de obicei, în primul rând, să ne uităm la indiciu sistem de operare prin această comandă:

Root@server:~# chown --help Utilizare: chown ... [:] FILE... sau: chown ... --reference=RFILE FILE... Schimbați proprietarul și/sau grupul fiecărui FIȘIER în OWNER și/sau GRUP. Cu --reference, schimbați proprietarul și grupul fiecărui FILE în cele ale RFILE. -c, --schimbări ca verbose, dar raportează numai când se face o modificare -f, --silent, --quiet suprimă majoritatea mesajelor de eroare -v, --verbose scoate un diagnostic pentru fiecare fișier procesat --dereference afectează referentul fiecare link simbolic (aceasta este implicit), mai degrabă decât legătura simbolică în sine -h, --no-dereference afectează legăturile simbolice în loc de orice fișier referit (util numai pe sistemele care pot schimba proprietatea unui link simbolic) --from= CURRENT_OWNER:CURRENT_GROUP schimbă proprietarul și/sau grupul fiecărui fișier numai dacă proprietarul și/sau grupul actual se potrivesc cu cele specificate aici. Oricare poate fi omis, caz în care nu este necesară o potrivire pentru atributul omis --no-preserve-root nu tratați „/” în mod special (implicit) --preserve-root nu poate funcționa recursiv pe „/” -- reference=RFILE folosește proprietarul și grupul RFILE în loc să specifice valorile OWNER:GROUP -R, --recursive operează pe fișiere și directoare în mod recursiv Următoarele opțiuni modifică modul în care o ierarhie este parcursă atunci când este specificată și opțiunea -R. Dacă sunt specificate mai multe, doar cea finală are efect -H dacă un argument de linie de comandă este o legătură simbolică către un director, traversează-l -L traversează fiecare legătură simbolică într-un director întâlnit -P nu traversează nicio legătură simbolică (implicit. ) - -help afișează acest ajutor și ieșire --version informații despre versiunea de ieșire și ieșire Proprietarul este neschimbat dacă lipsește Grupul este neschimbat dacă lipsește, dar schimbat în grup de autentificare dacă este implicat de un „:” după un PROPRIETAR simbolic și GRUP poate fi numeric. precum și simbolic Exemple: chown root /u Schimbați proprietarul /u în „root”. chown root:staff /u La fel, dar, de asemenea, schimbați grupul în „staff”.

chown -hR root /u Schimbați proprietarul /u și al subfișierelor în „root”. Ajutor online GNU coreutils:

Documentația completă la:

sau disponibil local prin: info „(coreutils) chown invocation”

În prima linie, utilizatorul va fi schimbat în user , grupul va fi schimbat în grup pentru fișierul /patch/filename .

A doua linie din exemplul de mai sus folosește opțiune suplimentară-R care înseamnă procesare recursivă. Adică, folderul /patch/foldername își va schimba proprietarul și grupul, dar acest lucru nu se va termina aici, toate folderele și fișierele aflate în acest director vor fi, de asemenea, supuse procesului de schimbare a proprietarului și a grupului. Recursiunea poate fi foarte convenabilă atunci când se efectuează modificări globale la un grup de politici din sistem.

Opțiunile rămase ale comenzii chown nu sunt atât de des solicitate și utilizate, așa că nu mă voi ocupa de ele deocamdată.

Fiecare fișier sau folder din Linux are propriile permisiuni.

Există 3 tipuri de drepturi:
citește (r), scrie (w), execută (x)

Drepturile sunt definite pentru 3 tipuri de utilizatori:
proprietar(u), grup(g), toți ceilalți (o)

Deci, drepturile fiecărui fișier sunt de 9 biți de informații (3 tipuri de drepturi * 3 tipuri de utilizatori), respectiv, fiecare bit poate fi setat (=1) accesul este permis, sau accesul resetat (=0) este interzis.

La atribuirea drepturilor, se obișnuiește să se folosească sistemul de numere octale.

Reprezentarea text a drepturilor (10 caractere):
- rwxr- - r - -
0123456789

Personaj în poziția 0:
"-" - fișier obișnuit, "d" - folder, "l" - link

Simboluri în pozițiile 1-3:
„rwx” - drepturi de proprietar

Simboluri în pozițiile 4-6:
"r - -" - drepturi pentru grup

Simboluri în pozițiile 7-9:
"r - -" - drepturi pentru toți ceilalți

Tabel pentru stabilirea drepturilor:

După cum se poate observa din tabel, drepturile sunt ușor de calculat
simplă însumare. 1=executare, 2=scriere, 4=citire.
de exemplu, execuția(1) și citirea(4) sunt necesare, obținem 1+4=5

Exemplul 644:
- proprietar(u) citește și scrie
- grupa(g) numai pentru citire
- altele(o) numai pentru citire

Exemplul 755:
- proprietar(i) tuturor drepturilor
- grupa (g) citește și execută
- alte(o) lectură și execuție

În limbaje de programare precum C,
0 se adaugă la drepturile la începutul fiecărui număr, ceea ce înseamnă că numărul este octal, adică. scrieți 0644 în loc de 644. Când schimbați drepturile din linia de comandă, acest lucru nu este de obicei necesar.

Reprezentarea drepturilor din patru cifre (4755), drepturi suplimentare
SUID, SGID, sticky bits:

  • SUID sau setuid: schimbați „ID utilizator” în timpul execuției
  • SGID sau setgid: modificați „ID-ul grupului” în timpul execuției
  • sticky bit: dezactivează ștergerea pentru toți utilizatorii, cu excepția proprietarului. Anterior, bitul însemna „păstrare” în memorie după finalizarea procesului
Masă. Reprezentarea numerică a drepturilor suplimentare:

Reprezentarea textuală a biților suplimentari:
Biții suplimentari sunt indicați prin următoarele simboluri:
„S”, „s” - SUID, SGID
"T","t" - bit lipicios
poziția acestor biți coincide cu pozițiile (3,6,9) ale drepturilor de execuție „x”
Cu toate acestea, dacă nu există drepturi de executare, se folosește „majuscule”, adică simboluri mari. Dacă sunt setate permisiunile de execuție, se folosește „litera mică”, adică. simboluri mici.

exemple:

Set SUID:
- r w s - - - - - - Setați biți SUID și executați pentru proprietar
- r - S - - - - - - Bit SUID setat, bitul de execuție nesetat

Set SGID:
- r w x r w s - - - Setați biți SGID și execuția grupului
- r w x r - S - - - Biți SGID setat, nesetat. execuție pentru grup

set de biți lipicios:
- r w x r w x r w t set de biți sticky și execuție pentru alții
- r w x r w x r - T sticky bit este setat, dar nu este setat. performanță pentru alții

Diferențe în efectul drepturilor la instalarea pe fișiere și foldere:

drepturifișierefoldere
lectură citirea conținutuluiobținerea unei liste de fișiere
înregistra înregistrarea conținutuluimodificarea listei de fișiere
(creare, ștergere, redenumire)
execuţiefisierul poate fi executatutilizatorul sau procesul poate face folderul „actual/funcționar”
SUID Setați „ID utilizator” când executați Ignorați ID-ul utilizatorului la crearea fișierului/dosarului (utilizați ID-ul proprietarului folderului rădăcină)
SGID Setați „ID grup” când executați Ignorați ID-ul de grup la crearea fișierului/dosarului (utilizați ID-ul de grup al folderului rădăcină)
lipicios împiedică ștergerea de către toată lumea, cu excepția proprietarului

comandă pentru a schimba permisiunile chmod:
chmod [-R] permisiuni de fișier/dosar

„-R” aplică permisiunile în mod recursiv tuturor fișierelor și subdosarelor

Exemple:
folderul chmod -R 755/
fișier chmod 644
etc.

Este posibilă modificarea drepturilor nu în totalitate, ci doar adăugarea sau revocarea drepturilor numai pentru anumite grupuri de utilizatori
folosind simboluri în loc de numere octale.
"u" - utilizator/proprietar
„g” - grup de utilizatori
"o" - alți utilizatori
„a” - toate grupurile de utilizatori

Format de permisiune [[+-=],...

Exemple:
chmod -R a+x folder/ executa recursiv pentru toate grupurile
Fișierul chmod a+rx citit și executat pentru toată lumea
chmod u+rx,g-rx adaugă fișierul citire și executare pentru proprietar și
revoca permisiunile pentru un grup
chmod a+r,o= adaugă fișierul citit pentru toate tipurile de grup și revocă
toate drepturile pentru toți ceilalți utilizatori

comanda de schimbare a proprietarului chown:

Chown [-R] proprietar: fișier/dosar de grup

Exemple:
chown -R 0:0 folder/ set owner/group = root recursiv
chown myuser:fișierul meu grup setați utilizatorul meu/grupul meu pentru fișier

© 2024 ermake.ru -- Despre repararea PC-ului - Portal de informații