Priporočena, 2024

Izbira Urednika

Razumevanje dovoljenj za Linux in uporabe chmoda

Zadnjih nekaj mesecev sem se ukvarjal s tečajem o Linuxu in en vidik Linuxa, ki me je vedno zmedel, je bil, kako so delovala dovoljenja. Na primer, ko enkrat prenesem datoteko na moj spletni strežnik in dobim napako, je moj spletni strežnik sporočil, da spremenim dovoljenja datoteke na 755.

Nimam pojma, kaj to pomeni, čeprav je sprememba dovoljenja odpravila težavo. Zdaj sem spoznala, da dovoljenja za Linux niso tako zapletena, da morate razumeti sistem. V tem članku bom govoril o dovoljenjih za Linux na visoki ravni in vam pokazal, kako uporabiti ukaz chmod za spreminjanje dovoljenj za datoteke in mape.

Dovoljenja in ravni za Linux

V Linuxu so v bistvu tri dovoljenja, ki jih boste običajno morali skrbeti: branje, pisanje in izvrševanje. Vse tri so precej samoumevne. Zdaj, ko se ta dovoljenja uporabijo za datoteko, se uporabijo v ravneh.

V Linuxu so tri ravni dovoljenj: lastnik, skupina in drugo. Lastnik je uporabnik, ki ima v lasti datoteko / mapo, skupina vključuje druge uporabnike v skupini, druga pa predstavlja vse druge uporabnike, ki niso lastniki ali skupine.

Branje, pisanje in izvrševanje so predstavljeni kot simbolni znaki ali kot osmiške številke. Na primer, če naredite ls -l v imeniku z nekaterimi datotekami, boste videli simbolično predstavitev znakov dovoljenj.

Dovoljenja so zapisana takole: prvi bit je bodisi pomišljaj ali črka d. Dash pomeni, da je datoteka in d pomeni imenik. Upoštevajte, da je prvi bit lahko tudi l, če je ime datoteke povezava. Nato so tri skupine treh bitov. Prvi bit v vsaki skupini je za branje, drugi bit za pisanje, tretji pa za izvršitev. Prvi trije bitovi so za lastnika, drugi trije za skupino, tretji pa za drugo. Tukaj je bolj vizualna razlaga.

Če namesto pisave vidite pomišljaj, to pomeni, da lastnik, skupina ali vsi drugi uporabniki nimajo tega dovoljenja. V zgornjem primeru lastnik, skupina in vsi ostali imajo dovoljenja za pisanje in izvrševanje.

Če pogledate izhod iz ukaza ls -l, boste opazili, da ima moja datoteka z besedilom prakse naslednja dovoljenja:

 -rw-rw-rw- 

To pomeni, da imajo vsi samo dovoljenja za branje / pisanje za datoteko. Še en primer:

 drwxr - r-- 

Če pogledamo prvi bit, lahko vidimo, da so dovoljenja za imenik. Lastnik ima dovoljenja za branje / pisanje / izvrševanje, vendar imajo skupina in drugi uporabniki dovoljenje za branje.

Octal Number Zastopanje

Tako so dovoljenja prikazana v Linuxu s simboli. Drugi način predstavljanja enakih dovoljenj je uporaba osmiških števil. Ko kasneje uporabimo ukaz chmod, boste videli, da lahko spremenite dovoljenja s simboli ali osmiškimi številkami.

Torej, kako Linux predstavlja branje, pisanje in izvrševanje z oktalnimi številkami? V bistvu vsakemu dovoljenju dodeli številko, kot je prikazano spodaj.

Dovoljenje za branje je predstavljeno s 4, zapisano z 2 in izvršeno z 1. Vse, kar morate storiti, je, da jih dodate, da dobite oktalno dovoljenje. Vzemimo na primer zgornji primer, kjer imajo vsi dovoljenja:

 -rwxrwxrwx 

Lastnik ima rwx, tako da bomo dodali 4 + 2 + 1, da dobimo vrednost 7. Naredimo isto za skupino in isto stvar za druge. Končna oktalna vrednost je 777. Oglejmo si primer, kjer smo dali le dovoljenja za branje / pisanje:

 -rw-rw-rw- 

Prva oktalna številka bo 4 + 2, saj dodajamo bralno in pisno. Druga bo enaka kot tretja oktalna številka. Tu imamo končno oktalno vrednost 666.

Zdaj pa poskusimo drugače. Recimo, da želimo vedeti, kaj predstavlja dovoljenje 755 ? Zelo enostavno je ugotoviti, če ga razčlenite po posameznih številkah. Prva številka je 7, ki jo lahko dobimo le z dodajanjem 4 + 2 + 1, kar pomeni, da ima lastnik dovoljenje za branje / pisanje / izvrševanje. Pet lahko dosežete le z dodajanjem 4 + 1, kar pomeni, da so skupina in drugi uporabniki prebrali in izvršili dovoljenja.

Upajmo, da je to dobra razlaga, kako predstaviti dovoljenja v Linuxu z oktalnimi številkami. To je precej naravnost naprej.

Uporaba chmoda za spreminjanje dovoljenj

Zdaj, ko razumemo, kako brati dovoljenja, govorimo o tem, kako jih lahko spreminjamo. Najlažji pripomoček za ta namen je ukaz chmod. Tako deluje. Najboljši način, da razložite ukaz, je, da greste skozi primer.

Začnimo z dovoljenji, o katerih smo govorili zgoraj, in sicer:

 -rw-rw-rw- 

Če želimo dodati dovoljenje za izvršitev za lastnika, skupino in drugo, lahko to storimo na dva načina. Uporabili bi lahko metodo simbola ali oktalno metodo. Za metodo simbola bi naredili naslednje, kot je prikazano spodaj:

Točen ukaz je

 chmod a + x ime datoteke 

Sintaksa je naslednja: črka ali črke, ki predstavljajo lastnika ( u ), skupino ( g ), drugo ( o ) ali vse ( a ), ki jim sledi + za dodajanje dovoljenj ali - za odvzem dovoljenj in nato pismo za dovoljenje ( r za branje, w za pisanje in x za izvršitev).

V zgornjem primeru sem dodal dovoljenje za izvajanje za vse uporabnike. Rezultat, kot ga lahko vidite na zgornji sliki zaslona, ​​je x za lastnika, skupino in drugo. Recimo, da sem želel odstraniti dovoljenja za pisanje in izvrševanje samo za skupino in druge uporabnike.

Kot lahko vidite tukaj, sem za to dosegel naslednji ukaz:

 ime datoteke chmod go-wx 

Ker želim spremeniti dovoljenja za skupino in drugo, uporabljam črko g in črko o . Želim odstraniti dovoljenja, zato uporabim znak - . Končno želim odstraniti dovoljenja za pisanje in izvrševanje, zato uporabljam w in x . Tu je priročna miza za uporabo simbola:

Torej, to je vse, kar je za uporabo simbolne metode. Zdaj pa se pogovorimo o oktalni metodi, za katero menim, da je nekoliko lažja. Octal je lepo, ker lahko dodate ali odstranite dovoljenja vse naenkrat.

Če začnemo z naslednjimi dovoljenji za datoteko, poglejmo, kako jih lahko spreminjamo z oktalno metodo:

 -rw-rw-rw- 

Zgoraj lahko vidite, da sem uporabil naslednji ukaz:

 ime datoteke chmod 744 

To v bistvu pravi, da lastnik dobi dovoljenje za branje / pisanje / izvršitev, skupina in drugi pa samo dovoljenje za branje. Kot lahko vidite, je enostavno dodajanje ali odstranjevanje dovoljenj v enem preprostem ukazu. Nadaljujmo in reči, da želim ponovno spremeniti dovoljenja.

Zdaj sem uporabil naslednji ukaz, spet zelo preprost:

 ime datoteke chmod 640 

Tukaj smo lastniku dali dovoljenja za branje / pisanje, le dovoljenje za branje skupine in druga skupina nima dovoljenj. Za označevanje brez dovoljenj uporabite ničlo. Precej preprosto, eh?

Skratka, to je zelo preprost pregled dovoljenj za Linux in lahko postane veliko bolj zapleten, toda za začetnike je to dober začetek. V prihodnje bom objavil več člankov o naprednejših dovoljenjih. Če imate kakršnakoli vprašanja, vas prosimo, da komentirate. Uživajte!

Top