Tiedosto-oikeudet Linuxissa / Unixissa: Kuinka lukea, kirjoittaa ja muuttaa
⚡ Älykäs yhteenveto
Linuxissa ja Unixissa tiedostojen käyttöoikeudet hallitsevat sitä, kuka voi lukea, kirjoittaa ja suorittaa kutakin tiedostoa. Ne suojaavat usean käyttäjän järjestelmää kahdella tasolla: omistajuudella, joka määrittää käyttäjän, ryhmän ja muita oikeuksia, sekä luku-, kirjoitus- ja suoritusoikeuksilla.

Tiedoston käyttöoikeudet Linux ja Unix päättävät, kuka saa lukea, muokata tai suorittaa kutakin tiedostoa, mikä pitää jaetun, usean käyttäjän järjestelmän turvallisena. Tämä sivu käy läpi tiedostojen omistajuuden, luku-, kirjoitus- ja suoritusoikeudet sekä komennot, jotka niitä muuttavat.
Linux on Unixin klooni, joka on usean käyttäjän samanaikaisesti käyttämä käyttöjärjestelmä. Linuxia voidaan käyttää myös keskustietokoneilla ja palvelimilla ilman muutoksia. Tämä herättää kuitenkin tietoturvaongelmia, sillä pyytämätön tai pahantahtoinen käyttäjä voi vioittaa, muuttaa tai poistaa tärkeitä tietoja. Tehokkaan tietoturvan takaamiseksi Linux jakaa valtuutuksen kahteen tasoon:
- Omistus
- Lupa
Tiedoston käyttöoikeuksien ja omistajuuden käsite on Linuxissa keskeinen. Tässä selitämme Linuxin käyttöoikeudet ja omistajuuden ja keskustelemme molemmista. Aloitetaan omistajuudesta.
Linux-tiedoston omistusoikeus
Jokaiselle Unix/Linux-järjestelmän tiedostolle ja hakemistolle on määritetty kolme omistajatyyppiä, jotka on esitetty alla. Alla oleva kaavio näyttää, miten omistajuus liittyy käyttäjään, ryhmään ja muihin.
käyttäjä
Käyttäjä on tiedoston omistaja. Oletuksena tiedoston luoneesta henkilöstä tulee sen omistaja. Tästä syystä käyttäjää kutsutaan joskus myös omistajaksi.
Ryhmä
A käyttäjäryhmä voi sisältää useita käyttäjiä. Kaikilla ryhmään kuuluvilla käyttäjillä on samat Linux-ryhmän oikeudet tiedostoon. Oletetaan, että sinulla on projekti, jossa useat ihmiset tarvitsevat tiedoston käyttöoikeuksia. Sen sijaan, että määrittäisit oikeudet manuaalisesti kullekin käyttäjälle, voit lisätä kaikki käyttäjät ryhmään ja määrittää ryhmälle tiedoston käyttöoikeudet, jolloin vain nämä ryhmän jäsenet, eikä kukaan muu, voivat lukea tai muokata tiedostoja.
Muut
Kuka tahansa muu käyttäjä, jolla on pääsy tiedostoon. Tämä henkilö ei ole luonut tiedostoa eikä kuulu käyttäjäryhmään, joka voisi omistaa tiedoston. Käytännössä se tarkoittaa kaikkia muita. Siksi, kun asetat käyttöoikeudet muille, sitä kutsutaan myös käyttöoikeuksien asettamiseksi koko maailmalle.
Nyt herää suuri kysymys: miten Linux erottaa nämä kolme käyttäjätyyppiä toisistaan niin, että käyttäjä 'A' ei voi vaikuttaa tiedostoon, joka sisältää toisen käyttäjän 'B' tärkeitä tietoja? Se on kuin ei haluaisi kollegaa, joka työskentelee sinun parissasi. Linux-tietokone katsella kuviasi. Tässä kohtaa käyttöoikeudet tulevat mukaan kuvaan, ja ne määrittelevät käyttäjän toiminnan.
Ymmärretään Linuxin käyttöoikeusjärjestelmä.
Linux -tiedostojen käyttöoikeudet
Jokaisella Unix/Linux-järjestelmän tiedostolla ja hakemistolla on seuraavat kolme käyttöoikeutta, jotka on määritelty kaikille kolmelle edellä käsitellylle omistajalle.
- Lue: Tämä käyttöoikeus antaa sinulle oikeuden avata ja lukea tiedostoa. Hakemiston lukuoikeus antaa sinulle mahdollisuuden listata sen sisällön.
- Kirjoittaa: Kirjoitusoikeus antaa sinulle oikeuden muokata tiedoston sisältöä. Hakemiston kirjoitusoikeus antaa sinulle oikeuden lisätä, poistaa ja nimetä uudelleen hakemistoon tallennettuja tiedostoja. Ajatellaanpa tilannetta, jossa sinulla on kirjoitusoikeus tiedostoon, mutta ei kirjoitusoikeutta hakemistoon, johon tiedosto on tallennettu. Voit muokata tiedoston sisältöä, mutta et voi nimetä tiedostoa uudelleen, siirtää tai poistaa sitä hakemistosta.
- Suorittaa: In WindowsSuoritettavalla ohjelmalla on yleensä .exe-pääte, jonka voit helposti suorittaa. Unixissa/Linuxissa et voi suorittaa ohjelmaa, ellei suoritusoikeutta ole asetettu. Jos suoritusoikeutta ei ole asetettu, saatat silti voida nähdä tai muokata ohjelmakoodia (edellyttäen, että luku- ja kirjoitusoikeudet on asetettu), mutta et voi suorittaa sitä.
Katsotaanpa tiedostojen käyttöoikeuksia Linuxissa esimerkkien avulla. ls -l -komennon suorittaminen terminaalissa antaa tulokseksi:
ls -l
Alla oleva kuvakaappaus näyttää pitkän listauksen käyttöoikeusmerkkijonon.
Tässä olemme korostaneet '-rw-rw-r–', ja tämä oudon näköinen koodi kertoo meille omistajalle, käyttäjäryhmälle ja koko maailmalle annetut Unix-käyttöoikeudet.
Tässä ensimmäinen '-' tarkoittaa, että olemme valinneet tiedoston. Alla oleva kuvake merkitsee tavallista tiedostoa.
Muuten, jos se olisi hakemisto, siinä olisi näkynyt 'd', kuten alla olevassa listassa.
Hahmot ovat melko helppo muistaa.
- r = lukuoikeus
- w = kirjoitusoikeus
- x = suoritusoikeus
- – = ei lupaa
Katsotaanpa asiaa näin. Koodin ensimmäinen osa on 'rw-'. Tämä viittaa siihen, että omistaja 'Home' voi:
- Lue tiedosto
- Kirjoita tai muokkaa tiedostoa
Omistaja ei voi suorittaa tiedostoa, koska suoritusbitti on asetettu arvoon '-'. Alla oleva kuvake näyttää suoritusbitin tyhjentyneenä viivaksi.
Monet Linux-jakelut, kuten Fedora, CentOS ja Ubuntu lisää käyttäjä ryhmään, jolla on sama nimi kuin käyttäjällä. Näin ollen käyttäjä 'tom' lisätään ryhmään nimeltä 'tom'.
Toinen osa on 'rw-'. Se on käyttäjäryhmälle 'Home', ja ryhmän jäsenet voivat:
- Lue tiedosto
- Kirjoita tai muokkaa tiedostoa
Kolmas osa on maailmalle, joka tarkoittaa mitä tahansa käyttäjää. Siinä lukee 'r–'. Tämä tarkoittaa, että käyttäjä voi vain:
- Lue tiedosto
Alla oleva erittely yhdistää käyttöoikeusmerkkijonon jokaisen osan omistajaan, ryhmään ja maailmaan.
Tiedosto-/hakemisto-oikeuksien muuttaminen Linuxissa chmod-komennon avulla
Oletetaan, ettet halua työtoverin näkevän henkilökohtaisia kuviasi. Tämä voidaan tehdä muuttamalla tiedostojen käyttöoikeuksia.
Voimme käyttää 'chmod'-komentoa komento, joka on lyhenne sanoista 'muutostila'. Komennon avulla voimme asettaa tiedostolle tai hakemistolle oikeudet (luku, kirjoitus, suoritus) omistajalle, ryhmälle ja kaikille.
Syntaksi:
chmod permissions filename
Komentoa voi käyttää kahdella tavalla:
- Absoluuttinen tila
- Symbolinen tila
Absoluuttinen (numeerinen) tila Linuxissa
Tässä tilassa tiedostojen käyttöoikeuksia ei esitetä merkeinä, vaan kolminumeroisena oktaalilukuna. Alla oleva taulukko antaa numerot kaikille käyttöoikeustyypeille.
| numero | Lupatyyppi | Symboli |
|---|---|---|
| 0 | Ei lupaa | - |
| 1 | Suorittaa | –X |
| 2 | Kirjoittaa | -W- |
| 3 | Suorita + Kirjoita | -wx |
| 4 | Lue | r– |
| 5 | Lue + Suorita | rx |
| 6 | Lue + kirjoita | rw |
| 7 | Lue + Kirjoita + Suorita | rwx |
Katsotaanpa chmod-komentoa toiminnassa, kuten alla olevassa pääteikkunassa näkyy.
Yllä olevassa pääteikkunassa olemme muuttaneet tiedoston 'sample' käyttöoikeudet arvoon '764'. Absoluuttinen '764'-koodi sanoo seuraavaa:
- Omistaja voi lukea, kirjoittaa ja suorittaa.
- Käyttäjäryhmä voi lukea ja kirjoittaa.
- Maailma voi vain lukea.
Tämä näkyy muodossa '-rwxrw-r–', kuten alla olevassa tuloksessa.
Näin voit muuttaa tiedoston käyttäjäoikeuksia Linuxissa määrittämällä absoluuttisen luvun.
Symbolinen tila Linuxissa
Absoluuttisessa tilassa muutat kaikkien kolmen omistajan oikeuksia. Symbolisessa tilassa voit muokata tietyn omistajan oikeuksia. Se käyttää matemaattisia symboleja Unix-tiedostojen oikeuksien muokkaamiseen.
| OperaTor | Tuotetiedot |
|---|---|
| + | Lisää luvan tiedostoon tai hakemistoon |
| - | Poistaa luvan |
| = | Asettaa käyttöoikeuden ja ohittaa aiemmin asetetut käyttöoikeudet |
Eri omistajat on edustettuina seuraavasti.
| käyttäjä | Merkinnät |
|---|---|
| u | Käyttäjä / omistaja |
| g | ryhmä |
| o | muut |
| a | kaikki |
Emme käytä käyttöoikeuksia numeroiden, kuten 755, muodossa, vaan merkkien, kuten rwx, muodossa. Katsotaanpa alla olevaa esimerkkiä.
Omistuksen ja ryhmän muuttaminen Linuxissa
Voit muuttaa tiedoston tai hakemiston omistajuutta seuraavalla komennolla:
chown user filename
Jos haluat muuttaa tiedoston tai hakemiston käyttäjää sekä ryhmää, käytä komentoa:
chown user:group filename
Katsotaanpa tätä toiminnassa, kuten alla on esitetty.
Jos haluat vaihtaa vain ryhmän omistajan, käytä komentoa:
chgrp group_name filename
'chgrp' tarkoittaa muutosryhmää. Alla oleva kuvakaappaus näyttää chgrp-komennon käytössä.
Kärki
- Tiedosto /etc/group sisältää kaikki järjestelmässä määritellyt ryhmät.
- Voit käyttää komentoa ”groups” löytääksesi kaikki ryhmät, joiden jäsen olet, kuten alla on esitetty.
- Voit käyttää komentoa newgrp työskennelläksesi muun kuin oletusryhmäsi jäsenenä, kuten alla on esitetty.
- Kahdella ryhmällä ei voi olla samaa tiedostoa hallussaan.
- Linuxissa ei ole sisäkkäisiä ryhmiä. Yksi ryhmä ei voi olla toisen aliryhmä.
- x — hakemiston suorittaminen tarkoittaa, että käyttäjällä on lupa "siirtyä" hakemistoon ja mahdollisesti päästä käsiksi sen alihakemistoihin.
- Tiedostoille ja hakemistoille voi asettaa muitakin käyttöoikeuksia, joita käsitellään myöhemmin lisäopetusohjelmassa.






.png)
.png)
.png)
.png)
.png)


