MTAT.06.008 OPERATSIOONISÜSTEEMID Käsurida€¦ · MTAT.06.008 OPERATSIOONISÜSTEEMID KERSTI...

Post on 31-Jul-2020

2 views 0 download

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.