unix

Suprasti „Linux“ failų teises ir nuosavybės teises

Suprasti „Linux“ failų teises ir nuosavybės teises
„Linux“ operacinė sistema, kuri yra UNIX klonas, yra sukurta valdyti kelis vartotojus, turinčius daug užduočių. Tai reiškia, kad vienu metu šioje operacijoje gali dirbti daugiau nei vienas vartotojas, kai kompiuteris prijungtas prie tinklo ar interneto. Nuotoliniai vartotojai per SSH gali prisijungti prie kompiuterio, kuriame yra „Linux“ operacinė sistema, ir dirbti sistemoje. Labai svarbu išlaikyti saugumą, kai toje pačioje operacinėje sistemoje vienu metu dirba keli vartotojai. „Linux“ operacinėje sistemoje yra daug integruotų saugos funkcijų, kurias galima naudoti, kai vietinė ar nuotolinė prieiga suteikiama iš skirtingų vartotojų. „Linux“ vartotojai turi suprasti failų teisių ir failo nuosavybės sąvoką, kad užtikrintų saugumą failų sistemos lygiu. Kaip „Linux“ vartotojai gali peržiūrėti ir keisti teises bei failo ir aplankų nuosavybės teises, parodyta šiame straipsnyje.

Būtinos sąlygos:

Vartotojai turi žinoti komandos paleidimo iš terminalo būdą ir pagrindines žinias apie failų ir aplankų kūrimą „Linux“ operacinėje sistemoje, kad galėtų paleisti ir suprasti šiame straipsnyje naudojamas komandas.

Šio straipsnio turinys:

Ši sąvoka ir užduotys, susijusios su failo leidimu ir nuosavybės teise, yra aprašytos šiame straipsnyje.

  1. Vartotojų tipai
  2. Leidimų tipai
  3. Patikrinkite leidimus
  4. Keisti leidimą naudojant chmod
  5. Keisti nuosavybės teisę naudojant chown

Vartotojų tipai:

„Linux“ operacinėje sistemoje yra trijų tipų vartotojai, kurie paminėti žemiau.

Savininkas:

Failą ar aplanką kuriantis vartotojas yra to failo ar aplanko savininkas, o savininkas gali leisti kitų tipų vartotojams pasiekti tą failą ir aplanką. Tai žymima „u".

Grupė:

Kiekvienas vartotojas gali priklausyti tam tikrai „Linux“ grupei. Taigi, kai vartotojas sukuria failą ar aplanką, kiti grupės nariai, kuriems priklauso vartotojas, gali pasiekti failą ar aplanką. Kai konkretų aplanką dirba keli vartotojai, geriau sukurti grupę su tais vartotojais, kad galėtumėte tinkamai pasiekti tą aplanką. Tai žymima „g".

Kiti / visi:

Tai nurodo bet kurį vartotoją, kuris nėra konkretaus failo ar aplanko savininkas ir nepriklauso failo ar aplanko savininkų grupei. Jei failo ar aplanko savininkas suteikia kitiems prieigos leidimus, visi vartotojai gali atlikti tik tą prieigą. "o"vartojamas kitiems vartotojams žymėti, ir"a'vartojamas visiems vartotojams žymėti.

Leidimų tipai:

„Linux“ sistemoje yra trys leidimų tipai, kurie paminėti žemiau.

Skaityti:

Šis leidimas naudojamas tik bet kokiam failui ar aplankui skaityti. Tai žymima „r„kai jis apibrėžiamas simboliu ir žymimas 4 kai jis apibrėžiamas skaičiumi.

Parašykite:

Šis leidimas naudojamas bet kokiam failui ar aplankui rašyti, pridėti ar nepaisyti. Tai žymima „w„kai jis apibrėžiamas simboliu ir žymimas 2 kai tai apibrėžiama skaičiumi. Jei vartotojas turi rašyti leidimą į failą, bet jis neturi rašyti leidimo aplanke, kuriame yra failas, vartotojas gali modifikuoti tik failo turinį, tačiau jis negalės pervadinti , perkelkite arba ištrinkite failą.

Vykdyti:

Šis leidimas naudojamas tik bet kokiam failui vykdyti. Tai žymima „x„kai jis apibrėžiamas simboliu ir žymimas 1 kai tai apibrėžiama skaičiumi.

Patikrinkite leidimus:

Vykdykite šią komandą, kad patikrintumėte visų dabartinio katalogo failų ir pašarų teises.

$ ls -l

Išvestyje rodomi septyni stulpeliai. Pirmajame stulpelyje rodomi konkretaus failo ir aplankų leidimai. Pirmame stulpelyje yra keturios dalys, kuriose yra 10 bitų. Pirmoje dalyje yra 1 bitas, nurodantis failą, aplanką arba simbolinę nuorodą. Aplanką žymi simbolis 'd", failą žymi" - ", o nuorodą nurodo simbolis"l". Antroje dalyje yra 3 bitai, kuriuose yra leidimo bitai failo ar aplanko savininkui. Trečiojoje dalyje yra 3 bitai, kuriuose yra leidimo bitai grupės vartotojams. Ketvirtojoje dalyje yra 3 bitai, kuriuose yra leidimai kitiems vartotojams. Dabartinio katalogų sąrašo leidimo bitai atrodys kaip šio paveikslėlio pirmasis stulpelis.


Pagal pirmiau nurodytus leidimo bitus pirmasis bitas rodo, kad jis rodo failo teises. Kiti trys bitai rodo, kad failo savininkas turi skaitymo, rašymo ir prieigos teises. Kiti trys bitai rodo, kad grupės vartotojai turi skaitymo ir rašymo leidimus. Paskutiniai trys bitai rodo, kad kiti vartotojai gali skaityti tik failą. Kaip numatytuosius leidimo bitus galima pakeisti naudojant skirtingas „Linux“ komandas, parodyta kitoje straipsnio dalyje.

Keisti leidimą naudojant chmod:

chmod komanda naudojama failo ar aplanko leidimo bitams pakeisti. Visa šios komandos forma yra pakeisti failo režimą. Failo savininkas ir pagrindinis vartotojas gali pakeisti failo ir aplanko leidimo bitus. Bet kurį naudotojo leidimą failui ir aplankui galima suteikti ir atšaukti naudojant chmod.

Sintaksė:

chmod [Leidimas] [Failo ar aplanko kelias]

Leidimo bitus galima apibrėžti aiškiai ir dvejetainėmis nuorodomis, kurios paaiškintos kitoje šios mokymo dalies dalyje.

Nustatykite leidimus simboliniu režimu:

"u","g"ir"o'simboliai naudojami vartotojo tipams ir'r","w"ir"xsimboliai naudojami leidimų tipams simboliniame režime. Kaip failui ir aplankui galima nustatyti leidimą, rodoma kitoje mokymo programos dalyje. Šioje lentelėje pateikiamas matematinių simbolių, naudojamų nustatant, atstatant ir pašalinant failo ar aplanko leidimo bitus, sąrašas.

operatorius Tikslas
+ Jis naudojamas pridėti ar priskirti tam tikro failo ar aplanko teises.
= Jis naudojamas priskirti tam tikro failo ar aplanko teises.
- Jis naudojamas norint pašalinti teises iš konkretaus failo ar aplanko.

Failo leidimai:

Keli failo leidimo bitų pridėjimo ir pašalinimo pavyzdžiai rodomi tolesniuose pavyzdžiuose. Paleiskite šias komandas, norėdami patikrinti dabartinius tam tikro katalogo kelio leidimo bitus, / projektai / šiukšliadėžė / kad egzistuoja sistemoje. Ši komanda grąžina ilgą failų ir aplankų sąrašą atvirkštine tvarka su leidimo bitais.

$ ls -lr

Išvestis rodo, kad projektai / šiukšliadėžė kataloge yra du aplankai ir septyni failai.

1 pavyzdys: nustatykite vykdyti leidimą failo savininkui

Norėdami nustatyti, paleiskite šias komandas vykdyti (x) leidimo bitą savininkas (u) bylos, programa.py, ir dar kartą patikrinę leidimo bitus, paleisdami chmod komandą.

$ chmod u + x programa.py
$ ls -lr

Šis išvestis rodo, kad leidimo bitai programa.py yra pakeisti į
- r w x r w - r - -. The vykdyti (x) leidimas priskiriamas savininkui.

2 pavyzdys: nustatykite rašymo ir vykdymo leidimą bet kuriam failo vartotojui

Norėdami nustatyti, paleiskite šią komandą rašyti (w) ir vykdyti (x) leidimus visi failo vartotojai app2.py ir dar kartą patikrinę leidimo bitus, paleisdami chmod komandą.

$ chmod a + wx app2.py
$ ls -lr

Šis išvestis rodo, kad leidimo bitai yra app2.py yra pakeisti į
- r w x r w x r w x. The rašyti (r) ir vykdyti (x) leidimai priskiriami bet kuriam šio failo vartotojui.

3 pavyzdys: iš naujo nustatykite leidimą grupės failo vartotojams

Paleiskite šią komandą norėdami iš naujo nustatyti teises grupė failo vartotojai 3 programa.py ir dar kartą patikrinę leidimo bitus, paleisdami chmod komandą. Čia, vykdyti (x) leidimo bitai bus nustatyti tik grupė vartotojai ir skaityti (r) ir rašyti (r) leidimai bus panaikinti.

$ chmod g = x app3.py
$ ls -lr

Šis išvestis rodo, kad leidimo bitai yra 3 programa.py yra pakeisti į
- r w - - - x r - -. „Execute“ (x) leidimas priskiriamas tik grupės vartotojams.

4 pavyzdys: kiti atėmė skaitymo leidimą

Norėdami pašalinti, vykdykite šią komandą skaityti (r) leidimo bitų kiti bylai 4 programa.py ir dar kartą patikrinę leidimo bitus, paleisdami chmod komandą.

$ chmod o-r programa4.py
$ ls -lr

Šis išvestis rodo, kad leidimo bitai yra 4 programa.py yra pakeisti į
- r w - r w - - - -. The skaityti (r) kitiems panaikinamas leidimas.

Aplanko leidimai:

Leidimo bitus galima nustatyti, iš naujo nustatyti ir pašalinti aplankui, pvz., Failams, kurie rodomi pirmiau pateiktose „chmod“ komandose.

5 pavyzdys: nustatykite, nustatykite iš naujo ir atšaukite aplanko leidimą

Norėdami nustatyti, paleiskite šias komandas rašyti (x) leidimas kiti, iš naujo nustatyti leidimą grupė vartotojų, priskirdami skaityti (r) tik leidimą ir pašalinkite vykdyti (x) leidimas savininkas aplanko, šablonai.

$ chmod o + x šablonai
$ chmod g = r šablonai
$ chmod u-x šablonai
$ ls -lr

Šis išvestis rodo, kad leidimo bitai šablonai aplankas pakeistas į d r w - r - - r - x. The vykdyti (x) nustatytas leidimas kiti, skaityti (r) iš naujo nustatomas leidimas grupė vartotojai ir vykdyti (x) leidimas yra atšauktas savininkas.

Nustatykite leidimus skaitiniu režimu:

Failo ir aplanko leidimo bitai nustatomi arba nustatomi iš naujo, naudojant trijų skaitmenų aštuonetą. Simboliniame režime vieną ar daugiau leidimų bitų galima nustatyti, atstatyti arba pašalinti tik tam tikram vartotojo tipui. Skaitmeniniu režimu visų trijų tipų naudotojų leidimų bitai keičiami viena komanda. Šioje lentelėje pateikiami skirtingi leidimų tipai, kuriuos apibrėžia skaitinės vertės.

Skaitinė vertė Leidimo tipas
0 Tai rodo, kad nėra leidimo.
1 Tai rodo tik vykdyti (x) leidimą.
2 Tai nurodo tik rašymo (w) leidimą.
3 Tai rodo rašymo (w) ir vykdymo (x) leidimus.
4 Tai nurodo tik skaitymo (r) leidimą.
5 Tai rodo skaitymo (r) ir vykdymo (x) leidimus.
6 Tai nurodo skaitymo (r) ir rašymo (w) leidimus.
7 Tai nurodo visus tris leidimus (skaityti (r), rašyti (w) ir vykdyti (x)).

Failo leidimas:

Keletas pavyzdžių, kaip nustatyti ar iš naujo nustatyti failo leidimo bitus naudojant skaitines reikšmes, yra paaiškinti kitoje šio straipsnio dalyje.

1 pavyzdys: rinkmenai nustatykite „- r w x r - x - w -“ leidimą

$ chmod 752 app5.py
$ ls -l

Šis išvestis rodo, kad skaityti (r), rašyti (r) ir vykdyti (x) nustatomi leidimai savininkas 5 programos.py. skaityti (r) ir vykdyti (x) nustatomi leidimai grupė 5 programos vartotojai.py. rašyti (w) bet kuriam „app5“ vartotojui nustatytas leidimas.py.

2 pavyzdys: rinkmenai nustatykite „- r w x r - - - - -“ leidimą

$ chmod 740 app6.py
$ ls -lr

Šis išvestis rodo, kad skaityti (r), rašyti (r) ir vykdyti (x) nustatomi leidimai savininkas iš 6 programos.py. skaityti (r) nustatytas leidimas grupė 6 programos vartotojai.py. Nė vienam „app6“ vartotojui nėra nustatytas leidimas.py.

3 pavyzdys: nustatykite failo „- r - - - - - - - -“ leidimą

$ chmod 400 app5.py
$ ls -lr

Šis išvestis rodo, kad skaityti (r) leidimas nustatomas tik savininkui, o kiti failo „app5“ leidimai pašalinami.py.

4 pavyzdys: rinkmenai nustatykite „- r - - r - - r - -“ leidimą

$ chmod 444 app6.py
$ ls -lr

Šis išvestis rodo, kad skaityti (r) leidimas skirtas visų tipų vartotojams, o kiti failo „app6“ leidimai yra panaikinami.py.

5 pavyzdys: rinkmenai nustatykite leidimą '- r w x r w x r w x'

$ chmod 777 app7.py
$ ls -lr

Šis išvestis rodo, kad skaityti (r), rašyti (r), ir vykdyti (x) leidimai nustatomi visų tipų „app7“ naudotojams.py.

Aplanko leidimas:

$ chmod 442 šablonai
$ ls -lr

Šis išvestis rodo, kad skaityti (r) nustatomas leidimas savininkams ir grupės vartotojams bei rašyti (w) leidimas nustatomas bet kuriam aplanko vartotojui, šablonai.

Keisti nuosavybės teisę naudojant „chown“:

chown komanda naudojama norint pakeisti bet kurio failo vartotojo ir grupės vartotojo nuosavybės teises. Ši komanda gali būti naudojama įvairiais būdais, norint pakeisti vartotojų nuosavybės teises.

Sintaksė:

chown [PASIRINKIMAS] [SAVININKAS] [: [GRUPĖ]] NUOTRAUKOS

Kai kurios šios komandos parinktys pateikiamos žemiau, kurias galima naudoti norint pakeisti failo nuosavybės teisę.

Variantas Tikslas
-iš = CURRENT_OWNER: CURRENT_GROUP Jis naudojamas kiekvieno failo savininkui ir (arba) grupei pakeisti tik tuo atveju, jei dabartinis savininkas ir (arba) grupė sutaps su apibrėžtu savininku ir grupe.
-c, -pasikeičia Ji sukuria ataskaitą, jei pasikeičia nuosavybės teisė.
-f, -tylus, -tylus Tai pašalins daugumą klaidos pranešimų.
-R, -rekursinis Jis veiks su failais ir katalogais rekursyviai.
-L Jis pereis kiekvieną simbolinę nuorodą į katalogą.
-P Tai neperžengs jokių simbolinių saitų.
-pagalba Bus rodoma pagalbos informacija.
-versija Tai rodo informaciją apie versiją.

Tapk super naudotoju:

Jūs turite tapti supernaudotoju, kad įvykdytumėte chown komandą. Galite būti super naudotojas trumpą laiką vykdydami šias komandas, tačiau turite žinoti konkrečios komandos šakninį slaptažodį.

"su'komanda:
Visa forma su yra pakaitinis vartotojas, ir šią komandą galima naudoti norint gauti vartotojo teises atlikti kai kurias administracines užduotis. Vykdydami šią komandą turite pateikti pagrindinį slaptažodį, kad gautumėte root teises. Vykdžius komandą, superkaseriui bus sukurta nauja apvalkalo sesija. Viršutinio vartotojo sesiją galima nutraukti įvedus tekstą išėjimas komandą.

"sudo'komanda:
Alternatyva su komanda yra sudo komandą. Naudojant šią komandą, vienam ar daugiau vartotojų gali būti suteikta root teisė. Dabartinis vartotojas gali atidaryti šakninį apvalkalą su komandą naudodami parinktį -i su sudo komandą. išėjimas komanda nutraukia šakninį apvalkalą ir grįžta į dabartinio vartotojo apvalkalą.
Pagal numatytuosius nustatymus „Ubuntu“ pagrindinė vartotojo paskyra yra išjungta. Taigi, sudo komanda naudojama čia norint gauti root teises ir paleisti komandą chown nustatyti failo nuosavybės teisę.

1 pavyzdys: naudojimasis savininku

$ ls -l
$ sudo chown yesmin c1.py
$ ls -l

Pirmas ls komanda rodo dabartinę failų, esančių kodas aplanką. Čia, fahmida yra bylos savininkas c1.py failą prieš paleisdami chown komandą. Kai ls komanda vykdoma paleidus komandą chown, tada nuosavybės teisė suteikiama vartotojui, taipminas, o grupės pavadinimas liko nepakitęs.

2 pavyzdys: chow naudojimas su savininku ir dvitaškis (:)

$ ls -l
$ sudo chown yesmin: c2.py
$ ls -l

Pirmas ls komanda parodo dabartinį savininkas ir grupės nuosavybė c2.py failą. Čia pateikiamas „c2“ vartotojo ir grupės nuosavybės vardas.py yra fahmida prieš paleisdami chown komandą. Kai ls komanda vykdoma paleidus komandą, tada suteikiama vartotojo nuosavybė taipminas, o grupės nuosavybė suteikiama savininko grupei, pavadintai taipminas.

3 pavyzdys: chow naudojimas su grupe, po kurios yra dvitaškis (:)

$ ls -l
$ sudo chown: pygroup c3.py
$ ls -l

Pirmas ls komanda parodo dabartinį savininkas ir grupės nuosavybė c3.py failą. Čia vartotojo ir grupės nuosavybės vardas c3.py yra fahmida prieš vykdydamas chown komandą. Kai ls komanda vykdoma paleidus komandą, tada grupės nuosavybė suteikiama savininko grupei, pavadintai pirgrupė, o vartotojo nuosavybės vardas lieka nepakitęs.

4 pavyzdys: Chown naudojimas su vartotoju ir grupe, po kurio parašyta dvitaškis (:)

$ ls -l
$ sudo chown fahmida: pygroup c2.py
$ ls -l

Pirmas ls komanda parodo dabartinį „ c2.py failą. Čia vartotojo ir grupės nuosavybės vardas c2.py yra taipminas prieš paleisdami chown komandą. Kai ls komanda vykdoma paleidus komandą, tada suteikiama vartotojo nuosavybė fahmida, o grupės nuosavybė suteikiama pirgrupė.

5 pavyzdys: naudokite tik chowną su dvitaškiu (:)

$ ls -l
$ sudo chown: c3.py
$ ls -l

Pirmas ls komanda parodo dabartinį savininkas ir grupės nuosavybė c3.py failą. Čia vartotojo nuosavybės teisė yra fahmida, o grupės nuosavybė yra pirgrupė apie c2.py prieš paleisdami chown komandą. Kai ls komanda vykdoma paleidus komandą, tada vartotojo ir grupės nuosavybė lieka nepakitusi.

Išvada:

„Linux“ vartotojai gali keisti failo leidimą ir nuosavybės teisę keliais būdais, kurie rodomi šiame straipsnyje naudojant skirtingas „Linux“ komandas. Linux sistemoje yra dar viena komanda, skirta pakeisti grupės failų nuosavybės teises tik į failą. Komanda yra chgrp kad čia nepaaiškinta. Užduotis chgrp komandą galima lengvai atlikti naudojant chown komandą. Tikiuosi, kad perskaičius šį straipsnį bus išvalyta failo leidimo ir failo bei aplanko nuosavybės teisė „Linux“ operacinėje sistemoje.

„Vulkan“, skirta „Linux“ vartotojams
Kiekvienos naujos kartos grafikos plokštės matome, kaip žaidimų kūrėjai peržengia grafinės ištikimybės ribas ir artėja prie fotorealizmo. Nepaisant vi...
„OpenTTD“ ir „Simutrans“
Sukurti savo transporto modeliavimą gali būti smagu, atpalaiduojanti ir be galo viliojanti. Štai kodėl jūs turite įsitikinti, kad išbandėte kuo daugia...
„OpenTTD“ pamoka
„OpenTTD“ yra vienas iš populiariausių verslo modeliavimo žaidimų. Šiame žaidime turite sukurti nuostabų transporto verslą. Tačiau pradėsite nuo mažda...