Linux

Razumijevanje dozvola za Linux datoteke

Razumijevanje dozvola za Linux datoteke

U Linuxu dozvole, atributi i vlasništvo nad datotekama kontroliraju razinu pristupa koju sustav obrađuje i korisnici moraju imati datoteke. To osigurava da samo ovlašteni korisnici i procesi mogu pristupiti određenim datotekama i direktorijima.

Dozvole Linux datoteke #

Osnovni model dozvola za Linux funkcionira povezivanjem svake sistemske datoteke s vlasnikom i grupom i dodjeljivanjem prava pristupa dozvolama za tri različite klase korisnika:

Vlasništvo datoteke može se promijeniti pomoću chown i chgrp naredbe.

Tri vrste dozvola datoteka primjenjuju se na svaku klasu korisnika:

Ovaj koncept omogućuje vam kontrolu nad korisnicima koji mogu čitati datoteku, pisati u datoteku ili izvršavati datoteku.

Da biste pogledali dozvole za datoteku, upotrijebite ls naredba:

ls -l ime_datoteke
-rw-r - r-- 12 linuxize korisnika 12.0K 28. travnja 10:10 ime_datoteke | [-] [-] [-] - [------] [---] | | | | | | | | | | | | | + -----------> 7. Grupa | | | | | + -------------------> 6. Vlasnik | | | | + --------------------------> 5. Alternativni način pristupa | | | + ----------------------------> 4. Ostala dopuštenja | | + -------------------------------> 3. Dopuštenja grupe | + ----------------------------------> 2. Vlasnička dozvola + ------------------------------------> 1. Vrsta datoteke 

Prvi znak označava vrstu datoteke. To može biti uobičajena datoteka (-), direktorij (d), simbolička poveznica (l) ili druge posebne vrste datoteka. Sljedećih devet znakova predstavljaju dozvole datoteke, tri trojke po tri znaka. Prva trojka prikazuje dozvole vlasnika, druga dopuštenja za jednu grupu, a zadnja trojka prikazuje dozvole svih ostalih.

U gornjem primjeru (rw-r - r--) znači da je vlasnik datoteke imao dozvolu za čitanje i pisanje (rw-), grupa i drugi imaju samo dopuštenja za čitanje (r--).

Dozvole za datoteke imaju različito značenje, ovisno o vrsti datoteke.

Svaka od tri trojke dozvola može se sastojati od sljedećih znakova i imati različite učinke, ovisno o tome jesu li postavljene u datoteku ili u direktorij:

Učinak dozvola na datoteke

DopuštenjeLikZnačenje u datoteci
Čitati-Datoteka se ne može pročitati. Ne možete pregledati sadržaj datoteke.
rDatoteka je čitljiva.
Pisati-Datoteka se ne može mijenjati ili mijenjati.
wDatoteka se može mijenjati ili mijenjati.
Izvršiti-Datoteka se ne može izvršiti.
xDatoteka se može izvršiti.
sAko se pronađe u korisnik triplet, postavlja setuid malo. Ako se pronađe u skupina triplet, postavlja setgid malo. To također znači da x postavljena je zastava.
Kada setuid ili setgid zastavice se postavljaju na izvršnu datoteku, datoteka se izvršava s vlasnikom datoteke i / ili privilegijama grupe.
SIsto kao s, ali x zastava nije postavljena. Ova se zastava rijetko koristi na datotekama.
tAko se pronađe u drugi triplet, postavlja ljepljiv malo.
To također znači da x postavljena je zastava. Ova je zastavica beskorisna na datotekama.
TIsto kao, t ali x zastava nije postavljena. Ova je zastavica beskorisna na datotekama.

Učinak dozvola na direktorije (mape)

Direktoriji su posebne vrste datoteka koje mogu sadržavati druge datoteke i direktorije.

DopuštenjeLikZnačenje na direktoriju
Čitati-Sadržaj direktorija ne može se prikazati.
rSadržaj direktorija može se prikazati.
(npr.g., Datoteke u direktoriju možete navesti pomoću ls.)
Pisati-Sadržaj direktorija ne može se mijenjati.
wSadržaj direktorija može se mijenjati.
(npr.g., Možete stvarati nove datoteke, brisati datoteke ... itd.)
Izvršiti-Direktorij se ne može promijeniti u.
xDirektorij se može kretati pomoću CD.
sAko se pronađe u korisnik triplet, postavlja setuid malo. Ako se pronađe u skupina triplet postavlja setgid malo. To također znači da x postavljena je zastava. Kada setgid zastava postavljena je na direktorij, nove datoteke stvorene u njemu nasljeđuju ID grupe direktorija (GID) umjesto primarne ID grupe korisnika koji je stvorio datoteku.
setuid nema utjecaja na imenike.
SIsto kao s, ali x zastava nije postavljena. Ova je zastava beskorisna na direktorijima.
tAko se pronađe u drugi triplet, postavlja ljepljiv malo.
To također znači da x postavljena je zastava. Kada je ljepljivi bit postavljen na direktorij, samo vlasnik datoteke, vlasnik direktorija ili administrativni korisnik može izbrisati ili preimenovati datoteke u direktoriju.
TIsto kao t, ali x zastava nije postavljena. Ova je zastava beskorisna na direktorijima.

Promjena dozvola datoteke #

Dopuštenja za datoteku mogu se mijenjati pomoću chmod naredba. Samo root, vlasnik datoteke ili korisnik sa sudo privilegijama može promijeniti dozvole datoteke. Budite posebno oprezni pri korištenju chmod, posebno kod rekurzivne promjene dozvola. Naredba može prihvatiti jednu ili više datoteka i / ili direktorija odvojenih razmakom kao argumente.

Dopuštenja se mogu odrediti pomoću simboličkog načina rada, numeričkog načina rada ili referentne datoteke.

Simbolička (tekst) metoda #

Sintaksa chmod naredba kada koristi simbolički način ima sljedeći format:

chmod [OPCIJE] [ugoa…] [- + =] perms ... [, ...] FILE… 

Prvi set zastava ([ugoa…]), user flags, definira klase korisnika za koje se mijenjaju dozvole za datoteku.

Kada je izostavljena korisnička oznaka, zadana je vrijednost a.

Drugi set zastava ([- + =]), operacijske zastavice, definira hoće li se dopuštenja ukloniti, dodati ili postaviti:

Dopuštenja (trajne .. ) izričito se postavljaju nulom ili jednim ili više sljedećih slova: r, w, x, x, s, i t. Upotrijebite jedno slovo iz seta u, g, i o prilikom kopiranja dozvola iz jednog u drugi razred korisnika.

Pri postavljanju dozvola za više korisničkih klasa ([, ...]), koristite zareze (bez razmaka) za odvajanje simboličkih načina.

Evo nekoliko primjera kako koristiti chmod naredba u simboličkom načinu:

Numerička metoda #

Sintaksa chmod naredba kada koristi simbolički način ima sljedeći format:

chmod [OPCIJE] BROJ DATOTEKE .. 

Kada upotrebljavate numerički način, možete istovremeno postaviti dozvole za sve tri korisničke klase (vlasnik, grupa i sve ostale).

Broj dozvole može biti 3 ili 4 znamenkasti broj. Kada se koristi 3-znamenkasti broj, prva znamenka predstavlja dozvole vlasnika datoteke, druga grupa datoteke, a zadnja svih ostalih korisnika.

Svaka dopuštenja za pisanje, čitanje i izvršavanje imaju sljedeću brojčanu vrijednost:

Broj dozvola određene korisničke klase predstavljen je zbrojem vrijednosti dozvola za tu grupu.

Da biste saznali dozvole datoteke u numeričkom načinu, jednostavno izračunajte ukupne iznose za sve klase korisnika. Na primjer, da biste vlasniku datoteke dali dozvolu za čitanje, pisanje i izvršavanje, dopuštanje čitanja i izvršavanja grupi datoteka i dopuštenja za čitanje samo svim ostalim korisnicima, učinili biste sljedeće:

Koristeći gornju metodu, došli smo do broja 754, što predstavlja željena dopuštenja.

Za postavljanje setuid, setgid, i ljepljivo malo zastave, koristite četveroznamenkasti broj.

Kada se koristi 4-znamenkasti broj, prva znamenka ima sljedeće značenje:

Sljedeće tri znamenke imaju isto značenje kao kada se koriste 3-znamenkasti broj.

Ako je prva znamenka 0, to se može izostaviti, a način rada može se predstaviti s 3 znamenke. Numerički način 0755 je isto što i 755.

Da biste izračunali numerički način rada, možete upotrijebiti i drugu metodu (binarna metoda), ali je malo složenija. Znanje kako izračunati numerički način rada pomoću 4, 2 i 1 dovoljno je za većinu korisnika.

Dozvole datoteke možete provjeriti u numeričkom zapisu pomoću stat naredba:

stat -c "% a" ime_datoteke 

Evo nekoliko primjera kako koristiti chmod naredba u numeričkom načinu:

Zaključak #

U Linuxu je pristup datotekama ograničen pomoću dozvola, atributa i vlasništva nad datotekama. Da biste promijenili dozvole datoteke, koristite chmod naredba.

Ako imate pitanja ili povratne informacije, slobodno ostavite komentar.

Korisni alati za Linux igrače
Ako volite igrati igre na Linuxu, velika je vjerojatnost da ste možda koristili aplikacije i uslužne programe poput Wine, Lutris i OBS Studio za pobol...
HD Remastered igre za Linux koje ranije nisu imale Linux izdanje
Mnogi programeri i izdavači igara dolaze s HD remasterom starih igara kako bi produžili životni vijek franšize, molimo obožavatelje da zatraže kompati...
Kako koristiti AutoKey za automatizaciju Linux igara
AutoKey je uslužni program za automatizaciju radne površine za Linux i X11, programiran na Python 3, GTK i Qt. Koristeći njegovu skriptiranje i MACRO ...