Failiõigused ja käsurea kordamine (1. praktikum)
<- eelmine peatükk
järgmine peatükk ->
Failiõigused ja käsurea kordamine
Terminaliakna avamisel asud failipuus alati oma kodukaustas. Tegelikult pole Sinu kodukaust kogu operatsioonisüsteemi koduks. Selleks, et näha neid kaustu ning faile, mis päriselt Sinu arvuti tööle panevad ning programme jooksutavad ja sätteid meeles peavad peame liikuma root kausta.
Ava terminaliaken ning trüki järgnev käsklus:
cd /
Selle tulemusena peaksite olema jõudnud root kausta. Enne dollarimärki kuvatav kaldkriips on kaldkriipsude kaldkriips. Siit saab kõik alguse.
See on Linuxi puustruktuuri alguspunkt ning selle kaldkriipsu sees on kõik operatsioonisüsteemi kuuluvad kaustad ja failid.
Nimetus “root” tulenebki sellest, et kogu failisüsteem on puu kujuline ning hargnemine saab alguse puu juurtest. Tutvume kaustade loeteluga juurkaustas.
ls
Eelneval pildil on toodud seletused peamiste kaustade kohta antud puustruktuuris. Tegelikult ei pea Linuxi kasutaja teadma täpselt iga kausta sisu, küll aga on oluline omada ülevaadet kaustade eesmärkidest. Kui tunned, et pead kuskil kaustas mingisi muudatusi tegema ja tead, et Sinu teadmised sellest kaustast on minimaalsed, siis on alati hea viieks minutiks internetiotsingute maailma liikuda ning põhimõtted selgeks teha.
Ilmselt märkasid, et Sinu juurkaustas on rohkem kaustu, kui ülalpool välja on toodud. Esiteks on pilt pigem illustratiivne ning järgib ajaloolist kaustaskeemi, praeguseks on erinevad Linuxi distributsioonid kaustasüsteemi vastavalt muutustele ka ümber teinud.
!!! Meeldetuletuseks: distributsioon (lühemalt distro) on tarkvarakogumik. Ubuntu on üks nendest distributsioonidest. Sellest võib mõelda nii: Jüri ja Mari ema valmistab sügiseks kompotte. Jüri ja Mari soovivad samuti kompotte valmistada, kuid mõlemad omaette. Jüri kasutab kompoti tegemiseks vaid mingit osa ema kompoti kuuluvatest toorainetest. Mari teeb samamoodi, kuid ta ei kasuta täpselt samu tooraineid, mis Jüri.
Näitlejad:
ema - Linux
Jüri - üks suvaline distributsioon (nt Ubuntu)
Mari - teine suvaline distributsioon (nt centOS)
Uuri terminalis erinevate juurkaustade sisu ning kui mingi kausta sisu jääb väga segaseks, siis kasutage eelistatud otsingumootorit, et mõista, mis on selle kausta eesmärk.
Inglise keeles on juurkausta nimi root directory, samas näeme, et selles kaustas on ka kaust nimega root. Millest selline segadus? Mis on kaust /root? Miks käsklusega cd /root saan teate, et minul puudub õigus vastavasse kausta siseneda?
Kaust /root kuulub superkasutajale. Superkasutaja on automaatselt loodud kasutaja operatsioonisüsteemi installimise ajal.
Nii nagu nimigi ütleb, on tegu erilise kasutajaga, kellel on ainsana õigus muuta juurkausta sisu (näiteks põnevuse tõstmiseks kustutada ära /boot kaust ja seeläbi muuta oma arvuti kasutamatuks).
Seega on tegu kasutajaga, kelle kodukaustaks on /root, erinedes tavalistest kasutajatest, kelle kodukausta asukoht on /home/kasutajanimi.
Installeerimise ehk operatsioonisüsteemi paigaldamise ajal loodi kaks kasutajat. Üks nendest oli automaatselt loodud superkasutaja ning teisele kasutajale panid Sina nime ja ka parooli. Kutsume iseloodud kasutajat praegu lihtsuse mõttes Mina-kasutajaks. Mina-kasutajal on tulevikus loodavatest uutest kasutajatest mõnevõrra rohkem õigusi. Näiteks saab selle kasutajaga kasutada käsklust sudo. Antud käsklus laseb käivitada käsklusi superkasutaja õigustes, seega saame läbi selle kasutaja tegelikult samuti palju halba teha (tuletame meelde, et arvuti kõige nõrgem lüli on selle kasutaja). Sudo’t kasutades küsitakse kasutajalt ka alati parooli, et veenduda, et arvuti taga on õige inimene ning ta on kindel oma tegevuses. Üldjuhul tuleks käsklust sudo vältida ning kasutada ainult äärmistel puhkudel.
Milleks üldse selline käsklus loodi? Põhjus on lihtne: praeguseks on seadistused sellised, et superkasutaja parooli me ei teagi ning seetõttu ei saa me tema õigustes sisse logida. Parooli puudumine ja sudo käsikäes ehitavad tugeva kaitse süsteemi ümber - kui me kasutaksime pidevalt superkasutaja õigustes arvutit, siis võime sellele kergesti ning pahaaimamatult viga teha. Seega saamegi kasutada arvutit tavakasutajana ning käskluse sudo abil vajaduse korral ajutiselt lubada endale superkasutaja õigusi. Turvalisusest räägime põhjalikumalt järgnevas praktikumis.
Nüüd omad ülevaadet käsureast, selle käskudest ning ka Linuxile omasest failisüsteemist. On aeg asuda oma süsteemi ja selles leiduvaid faile turvama.
Mine oma kodukausta ning käivita käsklus ls -l.
Vaatle esimeses tulbas olevaid kirjeid, nagu näiteks “drwxr-xr-x”. See kombinatsioon näitab meile koos kolmanda ja neljanda tulbaga, kellel on õigus antud faili või kaustaga tegutseda. Nimelt saame iga faili/kausta jaoks eraldi paika panna, millised kasutajad saavad antud faili vaadata, muuta, kustutada, kopeerida.
Tutvu teemaga lähemalt kursusevälistes materjalides!
Enne materjaliga edasi liikumist loe failiõiguste tähendustest ning andmistest järgnevalt leheküljelt (kuni Sticky Bit pealkirjani): https://wiki.itcollege.ee/index.php/Linux/Unix_faili%C3%B5igused või https://kuutorvaja.eenet.ee/wiki/Faili%C3%B5igused .
Õigus | Bitt | Tähendus failile | Tähendus kataloogile |
---|---|---|---|
Read | r | lugeda/kopeerida | näha sisu nimekirja (ls) |
Write | w | muuta faili sisu | kataloogi uute faile/kataloogide loomine, kustutamine ja liigutamine ning ümber nimetamine |
Execute | x | käivitada programmifailifaili | siseneda kataloogi (misiganes objekti poole pöördumine sealt kataloogist) |
Õ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 |
Seega on tähtsamad käsklused järgnevas tabelis:
chmod | failile/kaustale õiguste andmiseks |
chown | faili/kausta omaniku muutmiseks |
chgrp | faili/kausta grupi muutmiseks |
Mida rohkem on süsteemi kasutajaid, seda kasulikumaks ja vajalikumaks eeltoodud käsklused osutuvad.
Kui oled arvuti ainuke kasutaja, siis pole nende käsklustega väga palju midagi peale hakata.
Kui aga tegu on perearvutiga, millel on näiteks kolm kasutajat, siis on väga hea nende käskluste abil privaatsust luua ja samas kaitsta juhusliku kustutamise eest.
Näiteks tehakse igale pereliikmele eraldi kasutaja, igal kasutajal on oma kodukaust isiklike failide jaoks.
Saame luua sätted nii, et laps ei näe ühegi teise pereliikme kodukausta sisu.
Ema näeb lapse kausta sisu, kuid ei saa seal midagi muuta/kustutada.
Isa omab kõigis kaustas kõiki õigusi.