Olen viimastel kuudel Linuxi kursust võtnud ja üks Linuxi, mis mind alati segadusse pani, oli see, kuidas õigused töötasid. Näiteks, kui laadite faili oma veebiserverisse üks kord ja saan vea, ütles minu veebi poolt failiõigusi 755-le.
Mul polnud aimugi, mida see tähendas, kuigi õiguste muutmine kinnitas probleemi. Ma olen nüüd aru saanud, et Linuxi õigused ei ole kõik nii keerulised, vaid peate süsteemi mõistma. Käesolevas artiklis räägin Linuxi õigustest kõrgel tasemel ja näitan sulle, kuidas kasutada chmodi käsku failide ja kaustade õiguste muutmiseks.
Linuxi load ja tasemed
Linuxis on põhimõtteliselt kolm luba, mida peate tavaliselt muretsema: lugeda, kirjutada ja täita. Kõik kolm neist on üsna iseenesestmõistetavad. Nüüd, kui neid õigusi failile rakendatakse, rakendatakse neid tasanditel.
Linuxis on kolm litsentsitaset: omanik, rühm ja muu. Omanik on kasutaja, kes omab faili / kausta, rühma kuuluvad ka teised failid grupi kasutajad ja teised lihtsalt esindavad kõiki teisi kasutajaid, kes ei ole omanik või grupp.
Lugemine, kirjutamine ja täitmine on esindatud kas sümboolsetena või oktaalnumbritena. Näiteks, kui teete mõne failiga kataloogis ls -l, näete õigusi sümboolse sümboliga.
Õigused on kirjutatud järgmiselt: esimene bitt on kriips või täht d. Dash tähendab, et see on fail ja d tähistab kataloogi. Pange tähele, et esimene bitt võib olla ka l, kui faili nimi on link. Järgmisena on kolm gruppi kolmest bitist. Iga grupi esimene bitt on lugemiseks, teine bit kirjutamiseks ja kolmas bit on käivitamiseks. Esimesed kolm bitti on omaniku jaoks, teine kolm bitti rühma jaoks ja kolm kolm bitti on teised. Siin on veel visuaalne selgitus.
Kui näete kirja asemel kriipsut, tähendab see seda, et omanikul, rühmal või kõigil teistel kasutajatel seda luba ei ole. Ülaltoodud näites on omanik, rühm ja kõik teised lugenud kirjutamise ja teostamise õigusi.
Kui vaatate ls -l käsu väljundit, märkate, et minu tavafailil on järgmised õigused:
-rw-rw-rw-
See tähendab, et kõigil on faili jaoks ainult lugemis- ja kirjutamisõigus. Järgmine näide:
drwxr - r--
Vaadates esimest bitti, näeme, et õigused on kataloogi jaoks. Omanikul on lugemis- ja kirjutamis- / täitmisõigused, kuid grupil ja teistel kasutajatel on ainult loa luba.
Octal Number esindus
Nii et õigused kuvatakse Linuxis sümbolitega. Teine võimalus samade õiguste esindamiseks on oktaalarvude kasutamine. Kui kasutame hiljem chmodi käsku, näete, et saate muuta õigusi kas sümbolite või oktaalnumbritega.
Niisiis, kuidas Linux esindab lugemis-, kirjutamis- ja täitmisviisi, kasutades oktaalarvusid? Põhimõtteliselt annab see igale loale numbri, nagu allpool näidatud.
Lugemisluba esindab 4, kirjutab 2 ja täidab 1. Kõik, mida pead tegema, on lisada need, et saada kaheksandat luba. Näiteks võtame ülaltoodud näite, kus kõigil on kõik õigused:
-rwxrwxrwx
Omanikul on rwx, seega lisame väärtuseks 7 + 2 + 1. Me teeme sama grupi ja sama asja ka teiste jaoks. Lõplik oktaalväärtus on 777. Vaatame näidet, kus andsime ainult lugemis- ja kirjutamisõigused:
-rw-rw-rw-
Esimene oktaalarv on 4 + 2, kuna lisame lugemise ja kirjutamise. Teine on sama, mis kolmas oktaalnumber. Siin on meil lõplik oktaalväärtus 666.
Nüüd proovime seda teisiti. Ütle, et tahame teada, millised õigused 755 esindavad? Noh, see on üsna lihtne välja selgitada, kui te jaotate selle üksikute numbrite järgi. Esimene number on 7, mille saame ainult 4 + 2 + 1 lisamisega, mis tähendab, et omanikul on loe / kirjutada / täita luba. Viis saab saada ainult 4 + 1 lisamisega, mis tähendab, et rühm ja teised kasutajad on lugenud ja teostanud õigusi.
Loodetavasti on see hea selgitus, kuidas esindada Linuxi õigusi oktaalnumbritega. Üldiselt on see üsna lihtne.
Chmodi kasutamine lubade muutmiseks
Nüüd, kui me mõistame, kuidas lugeda õigusi, räägime sellest, kuidas me saame neid muuta. Sel otstarbel on kõige lihtsam kasutada chmodi käsku. Siin on, kuidas see toimib. Parim viis käsu selgitamiseks on minna läbi näite.
Alustame ülaltoodud õigustest, nimelt:
-rw-rw-rw-
Kui tahtsime omaniku, rühma ja muu täitmisloa lisada, võiksime seda teha kahel viisil. Võiksime kasutada sümbolmeetodit või kaheksandat meetodit. Sümboli meetodi puhul teeksime alljärgnevalt näidatud viisil:
Täpne käsk on
chmod a + x failinimi
Süntaks on järgmine: omanik ( u ), rühm ( g ), muu ( o ) või kõik ( a ) tähistav täht või tähed, millele järgneb + lisamine, või a - õiguste ja seejärel kirja saatmiseks luba ( r lugemiseks, w kirjutamiseks ja x täitmiseks).
Ülaltoodud näites lisasin kõigi kasutajate jaoks täitmisloa. Tulemus, mida näete ülaltoodud pildil, on omaniku, rühma ja muu x x . Oletame nüüd, et tahtsin eemaldada ainult grupi ja teiste kasutajate kirjutamis- ja täitmisõigused.
Nagu näete siin, kasutasin selle saavutamiseks järgmist käsku:
chmod go-wx failinimi
Kuna ma tahan muuta rühma ja teiste õigusi, siis kasutan tähte g ja tähte o . Ma tahan õigused eemaldada, nii et ma kasutan - -märki. Lõpuks tahan eemaldada kirjutus- ja täitmisõigused, nii et ma kasutan w ja x . Siin on käepärane väike tabel sümbolite kasutamiseks:
Nii et see on kõik sümbolmeetodi kasutamine. Räägime nüüd kaheksandast meetodist, mis minu arvates on natuke lihtsam. Octal on kena, sest saate kõik õigused lisada või eemaldada ühes korraga.
Kui me alustame failiga järgmistest õigustest, siis vaatame, kuidas me saame oktaalmeetodi abil neid muuta:
-rw-rw-rw-
Eespool näete, et kasutasin järgmist käsku:
chmod 744 failinimi
Põhimõtteliselt öeldakse, et omanik saab loe / kirjuta / täidab loa ning grupp ja teised saavad ainult lugemisloa. Nagu näete, on lihtne lihtsa käsuga õigusi lisada või eemaldada. Jätkame ja ütleme, et tahan uuesti õigusi muuta.
Nüüd kasutasin järgmist käsku, veelkord väga lihtsat:
chmod 640 failinimi
Siin oleme andnud omaniku lugemis- ja kirjutamisõigused, ainult grupi lugemisloa ja teise grupi õigusi. Teil ei ole õigusi tähistav null. Päris lihtne, eks?
Kokkuvõtteks võib öelda, et tegemist on väga lihtsa ülevaate Linuxi õigustest ja see võib sellest palju keerulisem olla, kuid algajatele on see hea koht alustamiseks. Ma postitan tulevikus rohkem artikleid edasijõudnud õiguste kohta. Kui teil on küsimusi, kommenteerige seda. Naudi!