MTAT.06.008 OPERATSIOONISÜSTEEMID Käsurida€¦ · MTAT.06.008 OPERATSIOONISÜSTEEMID KERSTI...
Transcript of MTAT.06.008 OPERATSIOONISÜSTEEMID Käsurida€¦ · MTAT.06.008 OPERATSIOONISÜSTEEMID KERSTI...
MTAT.06.008 OPERATSIOONISÜSTEEMID
1. slaidKERSTI TAURUS
KäsuridaWindows
powershell.exe
Windowscmd.exe
Linux(estobuntu)
XTerm
MTAT.06.008 OPERATSIOONISÜSTEEMID
2. slaidKERSTI TAURUS
Ainult käsurida?
Windows 7 jne
Käivitusmeedialt avaaknas vajutad
Shift+F10
On ka võimalus menüüdes õigete valikute tegemisel jõuda menüüni,
kus on olemas:
MTAT.06.008 OPERATSIOONISÜSTEEMID
3. slaidKERSTI TAURUS
Ainult käsurida?Linux installmeedial
on menüüs valik: Rescue System
Küsitav kasutajanimi on
root
MTAT.06.008 OPERATSIOONISÜSTEEMID
4. slaidKERSTI TAURUS
Käsurida süsteemiülema õigustes
paremklõps
Shift+Ctrl+Enter
MTAT.06.008 OPERATSIOONISÜSTEEMID
5. slaidKERSTI TAURUS
Käsurida süsteemiülema õigustes
Rescue systemLogid sisse kasutajaga
root
Live linux (ei ole parooli)
sudo su -
Linux(on parool)
su -
MTAT.06.008 OPERATSIOONISÜSTEEMID
6. slaidKERSTI TAURUS
UNIXi kest (shell)
Kest on kasutajaprogramm:
● Tuuma ja kasutaja vaheliseks suhtluseks
● Käivitab käske, mida loetakse sisendist või failist
● Ei ole tuuma osa, vaid kasutab seda programmide töötamiseks
● bash, tcsh, sh, csh, ...
● Saad ise vahetada, nt käivitad ühe sees teise
MTAT.06.008 OPERATSIOONISÜSTEEMID
7. slaidKERSTI TAURUS
Oluline Linuxi käsurealt failidega
● ls -a (kõik failid/kaustad)
● . (punkt on aktiivne kaust)
● .. (kakspunkti on ülemkaust)
● pwd näitab täisteed aktiivse kaustani (kus ma olen?)
● cd aitab liikuda kaustade vahel mkdir teeb uue kausta
● cp kopeerime faile/kaustu cat vaatab failisisu
● rm kustutame faile/kaustu
● mv teisaldame faile/kaustu
● joe/nano/pico/vi/... avan käsureal tekstiredaktori
● touch teen uue tühja faili
MTAT.06.008 OPERATSIOONISÜSTEEMID
8. slaidKERSTI TAURUS
Kestaskript
● Kestaskript on järjestikune käskude kogum.
● Käsud kirjutatakse tekstifaili. Seega suvaline tekstiredaktor sobib.
● Käivitamiseks tuleb failile anda käivitamisõigus (chmod 755 failinimi).
● Esimene rida skriptis sisaldab teed skriptis kasutatavale kestatüübile:
#!/bin/sh
● Skriptikeel on lihtne programmeerimiskeel, millega saab skripte kirjutada.
MTAT.06.008 OPERATSIOONISÜSTEEMID
9. slaidKERSTI TAURUS
Kestaskriptide kirjutamine
● Kasutada võib suvalist tekstiredaktorit.
● Kestaskript algab reaga, mis näitab tee kasutatavale kestatüübile: #!/bin/sh
– Juhul, kui skripti alguses tee kasutatava shellini puudub, kasutatakse käivitusaegset keskkonda.
● Käivitamisõigused: chmod 755 faili_nimi.sh
● Käivitada skript nagu süntaks:
bash "faili_nimi"
sh "faili_nimi"
● ./"faili_nimi"
MTAT.06.008 OPERATSIOONISÜSTEEMID
10. slaidKERSTI TAURUS
Kestaskripti käivitamine
● Kontrolli, mis on skripti failiõigused: ls -l skriptinimi (parameeter ei ole nr üks). Kui õigused on valed, siis muuda need õigeks.
● Käivitamiseks kirjuta käsureal: ./skriptinimish skriptinimi
● Ära käivita internetist leitud skripti oma masinas enne, kui oled veendunud selle usaldusväärsuses.
MTAT.06.008 OPERATSIOONISÜSTEEMID
11. slaidKERSTI TAURUS
Milleks kestaskripti vaja on?
● Kestaskript võtab klaviatuurilt või failist sisendi ja väljastab selle ekraanil
● Sellega saab ise oma käske luua
● Sellega säästab aega (üks käsk vs mitu käsku)
● Saab automatiseerida igapäevaseid ülesandeid
● Süsteemi administreerimiseks
MTAT.06.008 OPERATSIOONISÜSTEEMID
12. slaidKERSTI TAURUS
Sisend
● Kestaskriptidele saab anda sisendit:
– Käsurealt
– Teise programmi väljundist
– Failist● Kestaskriptides sisendfailidest ja käsurealt lugemiseks
kasutatakse käsku read.
MTAT.06.008 OPERATSIOONISÜSTEEMID
13. slaidKERSTI TAURUS
Väljund
Kestaskriptide väljundi saab:
● suunata faili
● anda mõne programmi sisendisse
● kuvada ekraanile kasutades käsku echo
MTAT.06.008 OPERATSIOONISÜSTEEMID
14. slaidKERSTI TAURUS
Muutujad kestas
● Kesta oluliseks funktsiooniks on keskkonnamuutujad
● Pääsevad ligi kõik kesta poolt käivitatud programmid
● Seal hoitakse palju programmide seadeid
● Süsteemimuutujad on suurte tähtedega, näiteks
● Kasutaja poolt defineeritud (User Defined Variables) muutujad on väikeste tähtedega
● Defineerimine: muutuja_nimi=väärtus
MTAT.06.008 OPERATSIOONISÜSTEEMID
15. slaidKERSTI TAURUS
Muutujad kestas
Reeglid:
● muutujas võivad olla ASCII tähed ja numbrid ning alakriips
● võrdusmärgi ette ega taha ei tohi panna tühikuid
● suured ja väiksed tähed on erinevad
● NULL muutuja saab defineerida näiteks:
$kolmas= või $kolmas=""● muutujate defineerimisel ei tohiks kasutada
erisümboleid: ?,* ja muid taolisi märke
MTAT.06.008 OPERATSIOONISÜSTEEMID
16. slaidKERSTI TAURUS
Süsteemimuutujad kestas– USER - Kasutajanimi, millega sisse logisite.
– PATH - Koolonitega eraldatud nimekiri kataloogidest, kust tuleks binaarfaile otsida.
– SHELL - Kasutuses olev shell.
– TERM - Kasutaja terminali nimi.
MTAT.06.008 OPERATSIOONISÜSTEEMID
17. slaidKERSTI TAURUS
Aritmeetiline väärtustamine
Võimaldab teha tehteid keskkonnamuutujate väärtustega
● expr 1 + 3 - liitmine
● Expr 10 / 2 - jagamine
● expr 20 % 3 - jäägi leidmine
● expr 10 \* 3 - korrutamine
● echo `expr 6 + 3` - skripti sees arvutab tulemuse oluline echo käsu olemasolu
MTAT.06.008 OPERATSIOONISÜSTEEMID
18. slaidKERSTI TAURUS
Ülakomade tähtsus
● Jutumärgid - " " - "tekst" - kõiki märke jutumärkide vahel tõlgendatakse stringina, välja arvatud, märke \ ja $.
● Ülakomad - ' ' - 'tekst' - kõik ülakomade vahel jääb muutumatuks.
● Tagurpidi ülakomad - ` ` - `tekst`- käsu käivitamiseks teksti sees
MTAT.06.008 OPERATSIOONISÜSTEEMID
19. slaidKERSTI TAURUS
Käsk ECHO
● Käsku kasutatakse teksti või väärtuse kuvamiseks ekraanile.
echo "Kooriku skriptide kirjutamine on tegelikult lihtne!!"
● Kuvab:
Kooriku skriptide kirjutamine on tegelikult lihtne!!
MTAT.06.008 OPERATSIOONISÜSTEEMID
20. slaidKERSTI TAURUS
Käsk EXIT
● Unixis ja Linuxis tagastatakse käskude ja kestaskriptide käivitamisel kahte sorti väärtusi.
● Vajalik, et jõuda selgusele toimunud protsessi edukuses.
● Kui tagastatakse number null (0), siis on käsk edukas.
● Kui tagastatakse nullist erinev arv (nonzero), siis käsk ei ole edukas või oli käsu või on skripti käivitamisviga.
● Seda väärtust nimetatakse väljumisväärtuseks (Exit Status).
MTAT.06.008 OPERATSIOONISÜSTEEMID
21. slaidKERSTI TAURUS
Torud (pipes)
Sisendi ja väljundiga manipuleerimiseks saab kasutada torusid:
● < – failist loetakse sisendväärtused
käsk ("parameeter") < faili_nimi
● > –tulemus lükatakse faili.
who > kes_logis.txt
● Toru, kus programm saadab andmeid teisele programmile
ls | more
MTAT.06.008 OPERATSIOONISÜSTEEMID
22. slaidKERSTI TAURUS
Torud (pipes)
● Toru, milles kasutatakse veaväljundit (standard error). Veaväljundi puhul pannakse süntaksis ette ka 2.
käsk ("parameeter")2> faili_nimi
● Toru, mis lisab andmed faili lõppu.
käsk ("parameeter")>> faili_nimi
● Toru, mis võimaldab ühe protsessi väljundit samaaegselt 'sisse sööta' mitmele muule protsessile. Selleks on programm tee.
käsk1 | käsk2 | tee faili_nimi
MTAT.06.008 OPERATSIOONISÜSTEEMID
23. slaidKERSTI TAURUS
Tingimused
● Vastavalt seatud tingimustele saab programmi edasist käiku suunata.
● Selleks on vajalikud tingimuslaused.
● Arvulisi suurusi võrreldakse järgmiste loogiliste operaatoritega, näiteks:
● -eq - võrdne (inglise keeles equal)
● -ne - mittevõrdne (inglise keeles not equal)
MTAT.06.008 OPERATSIOONISÜSTEEMID
24. slaidKERSTI TAURUS
Tingimused
● IF – tingimus
Kui If – tingimus on täidetud, siis vastav käsk täidetakse.
● IF - ELSE - FI – tingimus
Kui If – tingimus on tõene, täidetakse esimene käsk, muul juhul teine käsk.
● CASE – tingimus
Case – tingimus annab võimaluse valida mitme tegevuse vahel.
NB! sõltuvalt kasutatavast kestast on tingimuslausete süntaks erinev.
MTAT.06.008 OPERATSIOONISÜSTEEMID
25. slaidKERSTI TAURUS
Tingimused
● FOR – tingimus
For– tingimus võimaldab tegevust teatud arv kordi korrata.
● WHILE – tingimus
While – tingimuse korral korratakse tegevust, kuni tingimus on tõene.
● UNTIL– tingimus
Until – tingimuse korral korratakse tegevust, kuni tingimus saab tõeseks.
MTAT.06.008 OPERATSIOONISÜSTEEMID
26. slaidKERSTI TAURUS
Käsurea parameetrid
● Kestaskripti käivitamisel saab anda käsurealt ka argumente
● Sisendisse saab anda numbreid ja stringe, näiteks:
faili nimi, sünniaasta, kasutaja● Nende väärtused on skriptis muutujates $1, $2
jne.
MTAT.06.008 OPERATSIOONISÜSTEEMID
27. slaidKERSTI TAURUS
Pikemalt leiab abi:
● Bash Guide for Beginners
– http://tldp.org/LDP/Bash-Beginners-Guide/html/
● Advanced Bash-Scripting Guide
– http://www.tldp.org/LDP/abs/html/
● Koorik Bash– http://kuutorvaja.eenet.ee/kasutamine/os/shell/bash.html
● Mujalt Internetist
MTAT.06.008 OPERATSIOONISÜSTEEMID
28. slaidKERSTI TAURUS
Näide
● Kirjutada skript, mis saab ühe parameetri ja otsustab, kas tegemist on kausta või failiga. Kui on tegemist kaustaga – antakse vastuseks KAUST, kui fail, siis FAIL.
MTAT.06.008 OPERATSIOONISÜSTEEMID
29. slaidKERSTI TAURUS
Ülesande analüüs
● Kontrollida, kas failile antakse sisend;
● kontrollida, kas sisendina esitatud asi on ka tegelikult olemas;
● kontrollida, kas on tegemist faili või kaustaga.
MTAT.06.008 OPERATSIOONISÜSTEEMID
30. slaidKERSTI TAURUS
Kestaskript, mis kontrollib
sisendit (fail/kaust)
#!/bin/bash
if [ -a $1 ];then if [ -d $1 ] then echo "\"$1\" on KAUST." fi if [ -f $1 ] then echo "\"$1\" on mingi fail." fielse echo "\"$1\" ei eksisteeri
ilmselt."fi
vt. Introduction to if
MTAT.06.008 OPERATSIOONISÜSTEEMID
31. slaidKERSTI TAURUS
Failidele õiguste andmine
● UNIXi süsteemis on kasutajal identifikaator ehk ID
● Kasutaja omakorda kuulub gruppi
● Grupile vastab grupi identifikaator ehk ID
● ID on numbriline info faili atribuutides
● Vajalik, et saaks määrata, kes saavad faili lugeda, kirjutada või käivitada.
● KASUTAJA – GRUPP – TEISED (user-group-others)
● nt.
MTAT.06.008 OPERATSIOONISÜSTEEMID
32. slaidKERSTI TAURUS
Failidele õiguste andmine
Omadused:
● r(Read) – võib lugeda – sellele vastab 4
● w(Write) – võib kirjutada – sellele vastab 2
● x-(eXecute) – võib käivitada – sellele vastab 1
Numbreid liites saadakse tulemuseks erinevad õigustehulgad.
● 4+2+1 = 7 - kõik õigused
MTAT.06.008 OPERATSIOONISÜSTEEMID
33. slaidKERSTI TAURUS
Failidele õiguste andmine
Kasutajad:
● u(User) – faili omanik
● g(Group) – faili gruppi kuuluv kasutaja
● o(Other) – keegi muu kasutaja süsteemis, erinevas grupis
MTAT.06.008 OPERATSIOONISÜSTEEMID
34. slaidKERSTI TAURUS
Failidele õiguste andmine
● Fail nimega 'info' kõigile ainult loetavaks:
chmod a=r info
● Lisatakse omanikule faili kirjutamise ja käivitamise õigus:
chmod u+wx info
● Soovitakse jätta grupi liikmed lugemisõigusest ilma:
chmod g-r info
● Tulemusena on faili 'info' õigused sellised:
rwx --- r--
MTAT.06.008 OPERATSIOONISÜSTEEMID
35. slaidKERSTI TAURUS
Käsu parameetrid
● Enamus käske tunnistab parameetrit --help. Viimase abil kuvatakse lühiülevaade käsust ja tema parameetritest.
● ls --help – Käsu ls lühikirjeldus ja parameetrid.
MTAT.06.008 OPERATSIOONISÜSTEEMID
36. slaidKERSTI TAURUS
UNIXI käsud
● cat faili_nimi - kuvab faili sisu
● cp fail_1 fail_2 - kopeerib faili 1 ja nimetab selle fail 2-ks
● mv fail_1 fail_2 - tõstab ümber või nimetab fail 1 ümber
● rmdir fail / kataloog - kustutab faili või kataloogi
● man käsk - kuvab manuaali käsu kohta
MTAT.06.008 OPERATSIOONISÜSTEEMID
37. slaidKERSTI TAURUS
Kataloogipuu modifitseeirimise käsud
● mv – failide ja kaustade teisaldamine;
● cp - kopeerimine;
● rm - kustutamine;
● mkdir – kausta loomine;
● rmdir – kausta kustutamine;
● ln; ln -s – viitade loomine.
MTAT.06.008 OPERATSIOONISÜSTEEMID
38. slaidKERSTI TAURUS
Kataloogipuus liikumine
– cd; popd; pushd – aktiivse kataloogi vahetamine– cd kataloogi_nimi - liigutakse vastavasse kataloogi– cd ja cd ~ - liigutakse kasutaja kodukataloogi– cd .. - liigutakse ülemkataloogi– pwd - kuvatakse antud kataloogi täistee
MTAT.06.008 OPERATSIOONISÜSTEEMID
39. slaidKERSTI TAURUS
Info failide ja kaustade kohta
● find – otsimine;
● ls – kaustaloend;
● cat – failisisu kuvamine;
● file – faili tüübi kindlaks tegemine;
● strings – failist kuvatavate täheühendite kuvamine;
● od – kuvab faili sisu kaheksandsüsteemis (või teistes).
MTAT.06.008 OPERATSIOONISÜSTEEMID
40. slaidKERSTI TAURUS
Info vaba kettaruumi kohta
● du – kettakasutuse kuvamine;
● df – kettaruumi kasutuse kuvamine.
MTAT.06.008 OPERATSIOONISÜSTEEMID
41. slaidKERSTI TAURUS
Failidele juurdepääsuõiguste loomine
● chmod – faili ligipääsuõiguste muutmine
● chown – faili omaniku muutmine
● chgrp – faili grupi muutmine
● umask – kaustale õigusreeglite määramine (loodud failid on kõik etteantud õigusega nt).
MTAT.06.008 OPERATSIOONISÜSTEEMID
42. slaidKERSTI TAURUS
Ketaste ühendamine, partitsioonid
● mount – seadme (võrguketta) külge ühendamine;
● mkfs – linuxi failisüsteemi ehitamine;
● badblocks – loetamatute blokkide otsimine;
● fsck – kontrollitakse ja parandatakse linuxi failisüsteemi;
● fdisk – partitsioonitabeli redigeerimine;
● ln – linkide loomine;
● dd – failide kopeerimine ja konvertimine.
MTAT.06.008 OPERATSIOONISÜSTEEMID
43. slaidKERSTI TAURUS
Protsessid
● ps; pstree; pidof; jobs; top; free – info protsesside kohta;
● kill; killall; ctrl+c; ctrl+z – protsessi tapmine;
● nice; renice; time; ulimit – prioriteedi seadmine;
● at; atq; atrm – töö hilisemaks käivituseks seadmine.
MTAT.06.008 OPERATSIOONISÜSTEEMID
44. slaidKERSTI TAURUS
Administreerimine
● uname – süsteemiinfo;
● finger; w; who – hetkel arvutisse loginud isikute loend;
● dmesg; last; /etc/syslog.conf; /var/log – logifailid;
● top; vmstat; free; ps; pstree – mälu ja protsessid;
● crontab – programmide regulaarne käivitamine.
MTAT.06.008 OPERATSIOONISÜSTEEMID
45. slaidKERSTI TAURUS
Kasutajad
● useradd (adduser) – kasutaja lisamine;
● userdel – kasutaja kustutamine;
● quota; quotaon; quotaoff, ... – kettakvoot;
● su; sudo – muu kasutaja (näiteks süsteemiülema) õigustes programmide (terminali) käivitamine.