UNIX on populaarne mitmekasutaja ja multitegumtööga operatsioonisüsteem,
mis töötati välja 70-ndate aastate alguses Bell Labs’s ja millel
on mitu versiooni. Üheks levinumaks on 1991. aastal Linus Torvaldsi poolt
IBM-tüüpi
arvutite jaoks loodud LINUX, mida levitatakse tasuta (priivarana).
Selles õppematerjalis heidame ainult põgusa pilgu sellele teemale ja
esitame ainult kõige olulisema.
Failid Unix’is
Failid jagunevad üldiselt kaheks: tekstifailid (text)
ja kahendfailid (binary). UNIX’i failidel on tunduvalt
enam parameetreid. Faili üheks kõige olulisemaks parameetriks on tema kuuluvus.
Igal failil peetakse meeles omaniku, rühma ja ülejäänute juurdepääsuõigused.
Igal UNIX’i kasutajal on lisaks kasutajanimele ka veel grupitunnus.
Nii on võimalik faile valikuliselt kättesaadavaks teha – mõned omanikule,
mõned tema grupile, mõned aga kõigile soovijaile.
Failide nimed on suhteliselt vabalt valitavad. Suur- ja väiketähtedel
tehakse vahet, st. failid ‘maja.bmp’ ja ‘MAJA.bmp’ on erinevad failid.
Punktiga algavad nimed on peidetud. Puudub faili laiendi mõiste, punktid
on samuti nime osa. Nimede sees tuleb hoiduda märkidest:
Failide juurdepääsuõigused
Teine tähtis mõõde UNIX’i failisüsteemis sisaldab endas infot
selle kohta, kas faili on lubatud lugeda (read, r),
kas faili tohib muudatusi salvestada ja kustututada (write, w)
ning kas seda faili tohib käivitada ja otsida (execute, x).
Need kolm õigust määratakse iga taseme jaoks –omanik (user), rühm
(group) ja ülejäänud (others). Õigusi saab muuta faili (kataloogi)
omanik ja süsteemi administraator.
Faili juurdepääsuõigusi näitavad tema loabitid käsu ‘ls –l’ väljundis:
Juurdepääsuõigused esitatakse 10 märgi jadana, millest 1. märk tähistab
faili tüüpi (fail, kataloog või link), järgmised kolm omaniku õigusi, järgmised
kolm grupi õigusi ja viimased kolm kõigi ülejäänud kasutajate õigusi. Õigus
on olema, kui vastav märk on jadas kirjas, õigus puudub, kui vastav märk
jadas on asendatud kriipsuga. Märkideks on tähed drwx (d – kataloog, l
– link, r – lugemine, w – kirjutamine, x – käivitamine).
Juurdepääsuõiguste muutmine
Õigusi saab muuta käsuga chmod {kellele}{mida teeme}{õigused} {fail}
kellele: | üks või mitu märki alljärgnevatest: |
- u | omanik ise (user) |
- g | rühm (group) |
- o | teised (others) |
- a | kõik eelnimetatud (all) |
mida teeme: | üks märk alljärgnevatest: |
+ | anname õiguse(d) |
– | võtame õiguse(d) |
= | täpselt need õigused ja ei midagi muud |
õigused: | üks või mitu märki alljärgnevatest: |
- r | õigus lugeda (read) |
- w | õigus kirjutada ja kustutada (write) |
- x | õigus faili käivitada või teegi otsida (execute) |
Näiteks käsk chmod 744 fail2 annab failile nimega ‘fail2’ järgmised õigused:
Mõned UNIX’i käsud
Enne käskude tutvustamist oleks hea teada, et UNIX’is saab ühte
käsku rakendada mitmele failile, kui käsu sisendisse anda failinimi sobivate
erimärkidega. Enne käsu täitmist asendatakse kõik käsureal leiduvad erimärgid
vastavalt nende tähendusele. Kasutada saab asendusmärke:
|
asendab mistahes märgijada (isegi tühja) |
? | asendab mistahes ühte märki |
[märgid] | asendab ühte kantsulgudes olevatest märkidest |
* | kiri1 kiri2 kiri10 Ptk4.txt ptk5.txt | (kõik nimed) |
kiri? | kiri1 kiri2 | |
kiri* | kiri1 kiri2 kiri10 | |
[Pp]tk* | Ptk4.txt ptk5.txt | (nimed, mis algavad p või P-ga) |
*.* | Ptk4.txt ptk5.txt | (nimed, mis sisaldavad punkti) |
.* | .login | (nimed, mis algavad punktiga) |
UNIX-i käsud abiinfo saamiseks
Siin on toodud antud käskude lihtsustatud vorm, teinekord on vajalik
oma soov täpsemalt vormistada lisades käsu lõppu võtmed. Abiinfo on (muidugi)
ingliskeelne.
whatis {käsk} | |
man {käsk} | |
apropos {sõna} | Info otsimine võtmesõna järgi. |
whereis {failinimi} | Käsuga seotud failide otsimine. |
which {käsk} | Käsu asukoha täpsustamine. Näitab, kas käsk on alias või siis millises kataloogis asub vastav programm. |
UNIX-i käsud tööks kataloogidega
Siin on esitatud käskude mittetäielik kirjeldus, täpsemat infot antud
käsu kohta saab toksides 'man {käsk}'.
ls |
Võtmed: -l – näitab teegi sisu laias formaadis (rohkem infot faili kohta); –a – näitab kõiki, ka “peidetud” faile. |
alias käsk | Pikemale käsule lühema nime andmine. |
pwd | (print working directory) käesoleva kataloogi nime näitamine. |
cd | (change directory) käesoleva teegi muutmine. Ilma argumendita toob kasutaja kodukataloogi (~). |
cd .. | viib ülemkataloogi (sammu võrra ülessepoole) |
mkdir kataloog | (make directory) uue kataloogi tekitamine (nimega kataloog). |
rmdir kataloog | (remove directory) tühja kataloogi eemaldamine. |
cp vana ja uue faili nimi | (copy) faili kopeerimine. |
mv | (move) faili või kataloogi ümbernimetamine (tõstmine). |
rm faili nimi | (remove) faili eemaldamine. Võtmega -r eemaldatakse terve kataloogipuuoks, mis algab antud nimega. |
chmod õigused ja failinimi | (change mode) õiguste muutmine failile või kataloogile. Kasutada saab ainult omanik. |
more faili nimi | tekstifaili sisu näitamine ekraanitäite kaupa. |
mkdir kaust1 kaust2 | loob aktiivsele kataloogile alamakataloogid kaust1 ja kaust2 |
rm file1 file2 | kustutab failid file1 ja file2 |
cp file1 file2 | teeb aktiivses kataloogis failist file1 koopia file2, kui file2 oli olemas, siis kirjutatakse vana fail üle! |
cp file1… filen kataloog | kopeerib aktiivsest kaustast n faili näidatud kataloogi |
mv file1 file2 | nimetab aktiivses kataloogis file1 failiks file2 |
mv pildid vanadpildid | nimetab kataloogi pildid kataloogiks vanadpildid |
mv file1… filen kaust | teisaldab n faili aktiivsest kataloogist kataloogi kaust |
Harjutusülesanded
Ülesanne 8
Mida teevad järgmised Unix käsud?
chmod 477 *.txt | |
ls –la | |
cd .. | |
cd / | |
cd public_html | |
cd /temp | |
mkdir kaust1 | |
rmdir pildid | |
cp uus.txt vana.txt | |
mv uus.txt vana.txt | |
rm * | |
exit | |
pine |
Ülesanne 9
Mida näitavad järgmised märgid käsu ‘ls –l’ väljundis?
drwxr-xr-x | |
-rw-r--r-- | |
-rw------- | |
drwx------ | |
-rwxr-xr-x |