Linux

Razumevanje dovoljenj za datoteke Linux

Razumevanje dovoljenj za datoteke Linux

V Linuxu dovoljenja za datoteke, atributi in lastništvo nadzorujejo raven dostopa, ki jo sistem obdeluje in uporabniki do datotek. To zagotavlja, da lahko samo pooblaščeni uporabniki in procesi dostopajo do določenih datotek in imenikov.

Dovoljenja za datoteke Linux

Osnovni model dovoljenj za Linux deluje tako, da vsako sistemsko datoteko poveže z lastnikom in skupino ter dodeli pravice za dostop do dovoljenj za tri različne razrede uporabnikov:

Lastništvo datoteke lahko spremenite s pomočjo chown in chgrp ukazi.

Za vsak razred uporabnikov veljajo tri vrste dovoljenj za datoteke:

Ta koncept vam omogoča nadzor nad tem, kateri uporabniki lahko berejo datoteko, pišejo v datoteko ali izvršijo datoteko.

Če si želite ogledati dovoljenja za datoteke, uporabite ls ukaz:

ls -l ime_datoteke
-rw-r - r-- 12 linuxize uporabnike 12.0K 28. april 10:10 ime_datoteke | [-] [-] [-] - [------] [---] | | | | | | | | | | | | | + -----------> 7. Skupina | | | | | + -------------------> 6. Lastnik | | | | + --------------------------> 5. Nadomestni način dostopa | | | + ----------------------------> 4. Ostala dovoljenja | | + -------------------------------> 3. Dovoljenja za skupine | + ----------------------------------> 2. Lastniška dovoljenja + ------------------------------------> 1. Vrsta datoteke 

Prvi znak označuje vrsto datoteke. Lahko je običajna datoteka (-), imenik (d), simbolična povezava (l) ali druge posebne vrste datotek. Naslednjih devet znakov predstavlja dovoljenja za datoteke, trije tripleti po tri znake. Prva trojka prikazuje dovoljenja lastnika, druga dovoljenja skupine in zadnja trojka dovoljenja vseh drugih.

V zgornjem primeru (rw-r - r--) pomeni, da ima lastnik datoteke dovoljenja za branje in pisanje (rw-), skupina in drugi imajo samo dovoljenja za branje (r--).

Dovoljenja za datoteke imajo drugačen pomen, odvisno od vrste datoteke.

Vsak od treh dovolilnih trojkov je lahko sestavljen iz naslednjih znakov in ima različne učinke, odvisno od tega, ali so nastavljeni na datoteko ali imenik:

Vpliv dovoljenj na datoteke

DovoljenjeZnačajPomen v datoteki
Preberite-Datoteke ni mogoče prebrati. Vsebine datoteke si ne morete ogledati.
rDatoteka je berljiva.
Napiši-Datoteke ni mogoče spremeniti ali spremeniti.
wDatoteko lahko spremenite ali spremenite.
Izvedite-Datoteke ni mogoče izvršiti.
xDatoteko je mogoče zagnati.
sČe ga najdete v uporabnik triplet, nastavi setuid bit. Če ga najdete v skupini triplet, nastavi setgid bit. To tudi pomeni x zastava je nastavljena.
Ko setuid ali setgid zastave so nastavljene na izvršljivi datoteki, datoteka se izvede z lastnikom datoteke in / ali privilegiji skupine.
SEnako kot s, toda x zastava ni nastavljena. Ta zastava se redko uporablja v datotekah.
tČe ga najdete v drugi triplet, nastavi lepljiv bit.
To tudi pomeni x zastava je nastavljena. Ta zastavica je v datotekah neuporabna.
TEnako kot, t toda x zastava ni nastavljena. Ta zastavica je v datotekah neuporabna.

Vpliv dovoljenj na imenike (mape)

Imeniki so posebne vrste datotek, ki lahko vsebujejo druge datoteke in imenike.

DovoljenjeZnačajPomen v imeniku
Preberite-Vsebine imenika ni mogoče prikazati.
rVsebina imenika je lahko prikazana.
(npr.g., Datoteke v imeniku lahko navedete z ls.)
Napiši-Vsebine imenika ni mogoče spremeniti.
wVsebino imenika je mogoče spremeniti.
(npr.g., Lahko ustvarite nove datoteke, izbrišete datoteke ... itd.)
Izvedite-Imenika ni mogoče spremeniti v.
xPo imeniku je mogoče krmariti z uporabo cd.
sČe ga najdete v uporabnik triplet, nastavi setuid bit. Če ga najdete v skupini triplet nastavi setgid bit. To tudi pomeni x zastava je nastavljena. Ko setgid zastava je nastavljena na imenik, nove datoteke, ustvarjene v njem, podedujejo ID skupine imenikov (GID) namesto primarne skupine ID uporabnika, ki je ustvaril datoteko.
setuid nima vpliva na imenike.
SEnako kot s, toda x zastava ni nastavljena. Ta zastavica je v imenikih neuporabna.
tČe ga najdete v drugi triplet, nastavi lepljiv bit.
To tudi pomeni x zastava je nastavljena. Ko je lepljivi bit nastavljen v imeniku, lahko samo lastnik datoteke, lastnik imenika ali skrbniški uporabnik izbriše ali preimenuje datoteke v imeniku.
TEnako kot t, toda x zastava ni nastavljena. Ta zastavica je v imenikih neuporabna.

Spreminjanje dovoljenj za datoteke #

Dovoljenja za datoteke lahko spremenite z chmod ukaz. Dovoljenja datoteke lahko spremeni samo root, lastnik datoteke ali uporabnik s privilegiji sudo. Pri uporabi bodite previdni chmod, še posebej pri rekurzivnem spreminjanju dovoljenj. Ukaz lahko kot argumente sprejme eno ali več datotek in / ali imenikov, ločenih s presledkom.

Dovoljenja lahko določite s simboličnim načinom, številskim načinom ali referenčno datoteko.

Simbolična (besedilna) metoda #

Sintaksa chmod ukaz pri uporabi simboličnega načina ima naslednjo obliko:

chmod [OPTIONS] [ugoa…] [- + =] perms… [,…] FILE… 

Prvi sklop zastav ([ugoa…]), uporabniške zastavice, definira uporabniške razrede, za katere se spremenijo dovoljenja za datoteko.

Ko je uporabniška zastavica izpuščena, je privzeto a.

Drugi sklop zastav ([- + =]), operacijske zastavice, določa, ali je treba dovoljenja odstraniti, dodati ali nastaviti:

Dovoljenja (trajne .. ) so izrecno nastavljeni z ničlo ali eno ali več naslednjimi črkami: r, w, x, X, s, in t. Uporabite eno črko iz kompleta u, g, in o pri kopiranju dovoljenj iz razreda v razred drugega uporabnika.

Pri nastavljanju dovoljenj za več uporabniških razredov ([,…]), uporabite vejice (brez presledkov) za ločevanje simboličnih načinov.

Tu je nekaj primerov uporabe chmod ukaz v simbolnem načinu:

Številčna metoda št

Sintaksa chmod ukaz pri uporabi simboličnega načina ima naslednjo obliko:

chmod [MOŽNOSTI] ŠTEVILKA DATOTEKE… 

Ko uporabljate številski način, lahko hkrati nastavite dovoljenja za vse tri uporabniške razrede (lastnik, skupina in vsi drugi).

Številka dovoljenja je lahko 3 ali 4-mestna številka. Ko je uporabljena 3-mestna številka, prva številka predstavlja dovoljenja lastnika datoteke, druga skupino datoteke, zadnja pa vse ostale uporabnike.

Vsako dovoljenje za pisanje, branje in izvajanje ima naslednjo številčno vrednost:

Številko dovoljenj določenega uporabniškega razreda predstavlja vsota vrednosti dovoljenj za to skupino.

Če želite izvedeti dovoljenja za datoteko v številskem načinu, preprosto izračunajte vsote za vse razrede uporabnikov. Če želite na primer lastniku datoteke dati dovoljenje za branje, pisanje in izvajanje, dovoljenja za branje in izvajanje za skupino datotek in dovoljenja za branje samo vsem ostalim uporabnikom, naredite naslednje:

Z uporabo zgornje metode pridemo do številke 754, kar predstavlja želena dovoljenja.

Za nastavitev setuid, setgid, in lepljiv košček zastavice, uporabite štirimestno številko.

Ko je uporabljena štirimestna številka, ima prva številka naslednji pomen:

Naslednje tri številke imajo enak pomen kot pri uporabi 3-mestne številke.

Če je prva številka 0, jo lahko izpustite, način pa lahko predstavite s tremi števkami. Številski način 0755 je enako kot 755.

Za izračun številskega načina lahko uporabite tudi drugo metodo (binarna metoda), ki pa je nekoliko bolj zapletena. Vedeti, kako izračunati številski način s pomočjo 4, 2 in 1, zadostuje za večino uporabnikov.

Dovoljenja za datoteko lahko preverite v številčnem zapisu s pomočjo stat ukaz:

stat -c "% a" ime_datoteke 

Tu je nekaj primerov uporabe chmod ukaz v številskem načinu:

Zaključek #

V Linuxu je dostop do datotek omejen z dovoljenji, atributi in lastništvom datotek. Če želite spremeniti dovoljenja datoteke, uporabite chmod ukaz.

Če imate kakršna koli vprašanja ali povratne informacije, vas prosimo, da pustite komentar.

OpenTTD vs Simutrans
Ustvarjanje lastne simulacije prevoza je lahko zabavno, sproščujoče in izjemno vabljivo. Zato morate preizkusiti čim več iger, da boste našli tisto, k...
Vadnica za OpenTTD
OpenTTD je ena izmed najbolj priljubljenih poslovnih simulacijskih iger. V tej igri morate ustvariti čudovit prevozniški posel. Vendar boste začeli na...
SuperTuxKart za Linux
SuperTuxKart je odličen naslov, zasnovan tako, da vam brezplačno ponuja izkušnjo Mario Kart v vašem sistemu Linux. Igrati je precej zahtevno in zabavn...