Failihaldus Linux shellis
Sissejuhatus
Failihaldus Linuxis on Windowsiga võrreldes erinev ja seda seetõttu, et Linuxis ei ole kettaid. Kõik kõvaketaste partitsioonid, cd seade ja disketiseade haagitakse külge kas kasutaja või siis süsteemi poolt määratud kataloogidele. Süsteemsed kataloogid asuvad juurkaustas. Näiteks dev kataloogis asuvad seadmed ja kui tekib vajadus viidata mõnele seadmele, siis tehakse seda /dev/ kataloogi kaudu, viidates vajalikule seadmele. Süsteemsete kataloogide sisu näevad kõik kasutajad kuid muuta saab ainult juurkasutaja.
Linuxi laadsetes süsteemides nimetatakse failideks ka kõiki katalooge ja seadmeid. Kõikidel failidel on failiomanikud ja failigrupid ning faili atribuudid sisaldavad muuhulgas infot faili omaniku ja grupi kohta, kuhu nimetatud failiomanik kuulub. Failiomaniku ja failigrupi õigused märgitakse vastavalt: UID ja GID. Iga uue faili loomisel talletatakse automaatselt selle faili UID ja GID.
Failisüsteemi hierarhia
Tooksin näitena mõned kataloogid, lisades juurde nendes sisalduva. Süsteemsed programmid mis on vajalikud süsteeemi laadimiseks asuvad kaustas
/bin/
Kernelid, millede vahel saab alglaadimisel valida asuvad kaustas
/boot/
Seadmefailid asuvad kaustas
/dev/
Konfiguratsioonifaile sisaldab
/etc/
Kasutajate kodukataloogid, mida hoitakse enamasti eraldi partitsioonil e. kettajaol ning mis luuakse tavapäraselt installeerimisel,on kõige suurem, nimega
/home/
Jagatud teegid (Libraries) asuvad kaustas
/lib/
Eemaldatavad seadmed nagu: USB, CD-ROM jt asuvad kaustas
/media/
Ajutised failisüsteemid ühendatakse kausta
/mnt/
Juurkasutaja kodukataloog
/root/
Kataloog ajutiste failide hoidmiseks
/tmp/
jpt.
Üks ja sama kataloog võib asuda Linuxi laadsetes operatsioonisüsteemides failisüsteemi mitmes erinevas kohas. Sellisel juhul on võimalik faili või kataloogi poole pöörduda lingi abil, mida on kahte tüüpi:
Hard Link e otselink (viit andmetele) abil saab viidatata vaid ühe failisüsteemi piires. Symbolic Link e nimelink (viit nimele)abil saab viidata ka teises failisüstemis olevatele failidele.
Faili ja kataloogi loomine
Loome tekstifaili kass.txt.
touch kass.txt
Loome kataloogi loomad.
mkdir loomad
Faili otsimine, vaatamine, liikumine
Korraldus find abil on võimalik leida faile erinevate parameetrite abil. Nagu näiteks failinime, omaniku,grupi, suuruse jm järgi. On võimalik vaadata failiõiguseid ja muud meid huvitavat.
Otsime tekstifaili kass.txt
find kass.txt
Otsime katalooge koos failiõiguste, loomiskuupäevaga.
ls -l
Käsu less abil saame vaadata faili sees ja väljumiseks failist kasutame vajutame q.
Avame vaatamiseks faili kass.txt
less kass.txt
Käsk cd on käsk kodukataloogides liikumiseks. Tavakasutaja satub selle käsuga kodukataloogi, root-kasutaja satub aga root kataloogi.
Läheme kataloogi loomad.
cd loomad
Faili kopeerimine, liigutamine
Liigutame faili kass.txt kausta loomad.
mv kass.txt loomad
Kopeerime faili koer.txt sisu faili kass.txt
cp koer.txt kass.txt
Faili kustutamine
Kustutame faili kutsu.txt
rm kutsu.txt
Kui kasutaja soovib aga kustutada faili, mis asub kausta sees, tuleb käsuga cd kõigepealt sinna kausta liikuda ja alles siis fail kustutada.
Kustutame kaustas loomad faili kass.txt järgnevalt:
cd loomad
rm kass.txt
Kataloogi kustutamiseks koos sealolevate failidega kasutatakse võtit -r
Kustutame kataloogi linnud koos sealolevate failidega
rm –r linnud
Kataloogistruktuuri loomine
Kataloogide loomiseks kasutatakse käsku mkdir
Sobiva kataloogistruktuuri loomiseks kasutatakse võtit -p
Loome kataloogistruktuuri, milles kaust 1 sees asub kaust 2, selle sees omakorda kaust 3 jne.
mkdir 1/2/3/4 –p
Loome kausta koer, mille sees on kohe kaust kass
mkdir koer/kass -p
Sama asi on võimalik teha ka nii:
mkdir koer
cd koer
mkdir kass
kuid see tee on oluliselt pikem.
rm –r linnud- kustutab kataloogi -r tähendab seda, et kataloog kustutatakse koos olemasolevate failidega cd - käsk kodukataloogides liikumiseks.
Tavakasutaja satub selle käsuga kodukataloogi, root-kasutaja satub aga root kataloogi.
cd loomad- satub kasutaja kataloogi loomad.
Failiõigused
Failiõigusi saab muuta kas käsurealt käsuga chmod või siis faili omaduste alt. Failiõigusteks on: lugemine, kirjutamine, käivitamine, kustutamine, juurepääsulubade muutmine. Failiõigusi saab muuta ainult vastava faili omanik.
ls –l – kuvab kataloogi sisu koos failiõiguste, loomiskuupäevaga
Näide:
-rw-r--r-- 1 root root 0 dets 12 09:57 kala.txt drwxr-xr-x 3 root root 4096 dets 12 08:48 loomad - Rea ees viitab failile D rea ees viitab kataloogile r- faili lugemise ja kataloogi kasutamise õigus w- kirjutamise, lisamise, muutmise, kustutamise ja ümber nimetamise õigus x- faili käivitamise ja kataloogi sisenemise õigus
Tähe puudumine on niisiis vastava õiguse puudumine Igal failil on erinevad õigused, vastavalt järjekorras:
a- Tähistab kõiki u- tähistab omanikku g- tähistab gruppi ja o- tähistab kõiki teisi.
Kõiki õiguseid on võimalik muuta kahel viisil: 1) Tähekombnatsioonidega
+r,+w,+x, saab õiguseid juurde anda ja –r,-w,-x, saab õiguseid ära võtta = märgiga seatakse failile ainult vastavad õigused
chmod on käsk, mida õiguste muutmisel kasutatakse
chmod a+r,u+wx,g-r kass.txt
Lisab kõigile faili kass.txt kirjutamise õiguse, lisab omanikule faili muutmise ja käivitamise õiguse ning võtab grupilt lugemise õiguse.
2) Numbriliselt, milles iga number on summa, millest omakorda-
4-lugemisõigus 2-kirjutamisõigus 1-käivitamisõigus Nt. chmod 640 kass.txt
6= 4+2 - antakse failile lugemisõigus ja omanikule kirjutamisõigus 4=4 - antakse lugemisõigus grupile 0=0 - teistel õigused puuduvad
Failiomaniku või -grupi muutmine
Kõikidel failidel on võimalik muuta nii omanikku kui gruppi.
c hown vova loomad – tehakse faili loomad omanikuks vova
Kui soovitakse aga vova teha ka selles kataloogis asuva sisu omanikuks, kasutatakse järgmist käsku:
chown –R vova loomad
Kui soovitakse faili gruppi muuta, siis seda tehakse sarnaselt käsuga
chgrp raamatupidajad loomad
Pärast grupi loomist saab muuta grupi õiguseid õiguseid failile järgnevalt:
chmod g+r loomad, mis tähendab, et grupile anti failis loomad lugemiseõigus.
Viited
http://kuutorvaja.eenet.ee/wiki/Faili%C3%B5igused
http://www.physic.ut.ee/instituudid/efti/loengumaterjalid/ara/linux/dplt.htm#_Toc42308177
Autor
Maris Kuusik AK21 Kuupäev: 13.12.2012