Linux/Unix failiõigused

From ICO wiki
Jump to navigationJump to search

POOLELI Sten Vaisma A22


Sissejuhatus

Igal failil süsteemis, peab olema määratud kes võib sellega mida teha. Failiõigused on defineeritud kasutajatele, gruppidele ja kõikidele teistele kes ei ole faili omanikud ning ei kuulu antud gruppi (others). Iga kasutaja kuulub ühte või mitmesse gruppi. Samuti kuulub iga fail mingile kasutajale ning seega ka kasutaja gruppi. Kui kasutaja loob faili, siis on ta selle faili omanikuks. Samuti looja grupp ning kausta grupp kus fail asub, on seostatud selle failiga. Kasutades gruppe, saab piirata/lubada tegevusi teatud hulgal inimestel, mis on töökeskkonnas hädavajalik.

Kasutajad ja Õigused

Igale failile on määratud kolme tüüpi kasutajad:

user ( u ) - kasutaja kes omab/kontrollib faili

group ( g ) - grupp kes omab/kontrollib faili

others ( o ) - igaüks kes ei ole omanik ega ka grupis 

Kasutajatele on määratud kolme tüüpi õigused:

read ( r ) - faili lugemis õigus

write ( w ) - faili kirjutamis õigus (sisu saab muuta)

execute ( x ) - faili kustutamis õigus 


Kuidas näha failiõigusi

Et näha mis õigused failil on, tuleb sisestada:

ls -l failinimi/kaustanimi
ls -l (et näha kõiki faile ja katalooge)

kriips (-) tähendab et õigust ei ole määratud


Kuidas muuta failiõigusi

Failiõigusi saab muuta kasutades käsku "chmod".

Näiteks kui Malle tahab anda minufaili kirjutamisõiguse administraatoritele, siis ta kirjutab:

chmod g+w minufail

g tähendab faili gruppi (administraatorid)

w tähendab kirjutamiõigust

+ tähendab andmist


chmod kasutatakse nelja parameetri järgi:

-Kasutajate tüüp kellel õigusi muuta (u - user, g -gruop, o - others, kas kombintatsioon nendest või "a" et määrata kõik)

-Mis tüüpi muudatust teha("+" et lisada õigus, "-" et õigus ära võtta, "=" et määrata õigused)

-Millised muudatusi õigustes teha(r - read, w - write, x - execute)

-Fail või grupp faile, millele muudatusi teha (failinimi)

Octal System (kaheksandsüsteem)

Tihtipeale administraatorid kasutavad ka arvu süsteemi, mis asendab senised u,g,o ja a,r,w,x numbritega. Peamiselt eelistatakse seda kasutada just töö kiiremaks muutmise pärast. Samuti nende käskudega mitte ei lisata/võeta õigusi vaid ainult määratakse neid, seega võib tulemustes kindel olla.


Õiguste väärtused

-  0
x  1
w  2
r  4


---  0
--x  1
-w-  2
-wx  3
r--  4
r-x  5
rw-  6
rwx  7


Näide:

chmod 750 minufail 

750 tähendab: 7(rwx) omanikule, 5(r-x) grupile ning 0(---) teistele

Eelnev käsk on võrdne käsuga:

chmod u=rwx,g=rx myfile; chmod o-rwx minufail

Faili omaniku/grupi muutmine

Faili omanikuks saab määrata ka mingit teist kasutajat või gruppi. Kasutades käsku chown saab muuta faili omaniku ning chgrp käsuga faili gruppi, kuhu ta kuulub.

Näide: Malle tahab minufaili omanikuks teha hoopis Kalle, siis ta kirjutab:

chown Kalle minufail

Kalle tahab hiljem minufaili teha saadavaks ainult grupile bossid:

chgrp bossid minufail

Sama saab korda saata ka "chown" käsuga:

chown Kalle:bossid minufail

Sticky Bit

Kui vaadata kausta /tmp õigusi, siis näeb seal järgmist:

clem@pluto:/$ ls -l | grep tmp
drwxrwxrwt   10 root root  4096 2006-03-10 12:40 tmp

Et lisada/kustutada sticky bit, kasuta:

chmod +t tmp
chmod -t tmp

SGID atribuut kaustale

Kui kaustale on määratud SGID (Set Group Identification) siis failid mis sinna kausta luuakse pärivad tema grupi õigused.Kui aga SGID pole määratud, siis faili grupi õigused vastavad kasutaja algsele grupile.

Et lisada/kustutada SGID kaustal:

chmod g+s kaust
chmod g-s kaust

Kui see on paika pandud, siis SGID on määratud tähega s mis asendab x-i grupi õigustes:

ls -l kaust
drwxrwsr-x  10 Kalle administrators  4096 2006-03-10 12:50 kaust