Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Unix – úvod. 2 Obsah přednášky Literatura Úvod do práce s Unixem Formát příkazů v Unixu Systém souborů a adresářů Příkazy pro práci se soubory a adresáři.

Podobné prezentace


Prezentace na téma: "Unix – úvod. 2 Obsah přednášky Literatura Úvod do práce s Unixem Formát příkazů v Unixu Systém souborů a adresářů Příkazy pro práci se soubory a adresáři."— Transkript prezentace:

1 Unix – úvod

2 2 Obsah přednášky Literatura Úvod do práce s Unixem Formát příkazů v Unixu Systém souborů a adresářů Příkazy pro práci se soubory a adresáři Procesy a práce s nimi Systémové proměnné

3 3 Literatura Hála, T.: Základy práce v Unixu. 3. vyd. Brno: Konvoj, s. ISBN (Lze zakoupit na sekretariátu Ústavu informatiky za 20 Kč.) Petrlík, L.: Jemný úvod do systému UNIX. 1. vyd. České Budějovice: Kopp s. ISBN Brandejs, M.: UNIX–Linux: praktický průvodce. 1. vyd. Praha: Grada, s. ISBN Herborth, Ch.: Unix a Linux – Názorný průvodce. 1. vyd. Brno: Computer Press, s. ISBN X. Liška, R.: Úvod do Unixu. [online] Dostupný z WWW:

4 4 Úvod do Unixu Unix je víceuživatelský operační systém pro obecné použití, který vytváří shodné prostředí na různých hardwarových platformách Vytvořila firma AT&T Denis Ritchie a Ken Thompson 1973 Pro potřeby vývoje Unixu byl stejnými autory vyvinut jazyk C

5 5 Úvod do Unixu Firma AT&T byla v rámci antimonopolního řízení americké vlády nucena zříci se své počítačové divize a převedla UNIX za velmi výhodných podmínek na některé univerzity. Vznikla tak varianta BSD (Berkeley System Distribution). V následujících letech pak vznikaly další verze Unixu, ať už založené na základech systému firmy AT&T nebo na BSD. Vznikl např. IBM AIX, HP-UX, SGI IRIX, Cray Unicos, Sun Solaris a další. Všechno to však byly operační systémy pro sálové počítače.

6 6 Použitelnost Unixu Potřebujeme-li sdílet data Propojujeme-li počítače do sítí Pracujeme-li s rozlehlými databázemi Potřebujeme-li bezpečný a stabilní OS Pracujeme-li na výkonnější technice, než je PC Potřebujeme-li se orientovat na otevřené systémy (tj. založené na standardech, snadno rozšiřitelné)

7 7 Pravidla vývoje Unixu Vývoj Unixu se od počátku řídil těmito pravidly: Psát programy, které budou dělat právě jednu věc, a tu budou dělat dobře. Psát programy tak, aby mohly navzájem spolupracovat. Psát programy tak, aby povely přijímaly hromadně ze vstupu v textové podobě. Psát programy tak, aby výstupy produkovaly v textové podobě a mohly být použity jako vstupy do programů dalších.

8 8 Příčiny popularity Unixu Systém je napsán programovacím jazykem vyšší úrovně. Jsou dostupné zdrojové texty systému (u některých BSD variant). Má jednoduché a zdokumentované uživatelské rozhraní. Nabízí prostředky na budování komplexních programů z jednodušších. Poskytuje jednoduché konzistentní rozhraní periferních zařízení. Jednotný standard POSIX.POSIX

9 9 Struktura Unixu Vrstvy koordinující svoji činnost Nejnižší – jádro (kernel) – také vrstvy: –ovladače zařízení (drivery) – práce s periferiemi –programy pro přidělování paměti, prostředků systému a diskového prostoru –řízení procesů Systémové programy

10 10 Struktura Unixu

11 11 Funkce jádra Unixu Řízení provádění procesů (vytváření, ukončení, komunikace, přístup k periferiím,...) Správa systému souborů (alokace, uvolňování, ochrana, udržování konzistence,...) Přidělování paměti, ochrana paměti, odkládání dočasně nepoužívaných dat z paměti (swapping, resp. paging) Plánování procesů pro sdílení času CPU (plánovací algoritmus, přidělování časových kvant, priority,...)

12 12 Charakteristické rysy Unixu Běžící program = proces Je víceúlohový – běží více procesů současně Základní proces – interpret příkazů shell (obecný název) – spouští se pro každého uživatele zvlášť po jeho přihlášení Pomocí shellu uživatel spouští další uživatelské procesy Systémové procesy se spouští zpravidla při startu systému Démon – typ systémového procesu (většinou čeká na výskyt události, kterou ošetřuje, probouzí se tedy na základě nějaké akce, příp. periodicky)

13 13 Vlastnosti Unixu Unix udržuje seznam uživatelů – mají svá omezení – přístupová práva Superuživatel – bez omezení Současně může pracovat více uživatelů – víceuživatelský Umí využívat víceprocesorovou architekturu Velmi propracované a silné prostředky pro práci v sítích Jde o otevřený systém – může být doplňován komponentami od různých výrobců

14 14 Uživatelské účty Zavedeny z důvodů ochrany systému a dat mezi uživateli Jsou jimi definována přístupová práva k prostředkům systému Účet zřizuje administrátor Obnáší mj.: uživatelské jméno, heslo, plné jméno, uživatelské číslo, domovský adresář, soubor.profile, volbu shellu a poštovní schránku

15 15 Práce v OS Unix Je třeba mít vytvořený účet na počítači (serveru) s Unixem Se systémem se pracuje na dálku, pomocí emulátoru terminálu (např. putty). putty Pro přihlášení uživatele je třeba zadat adresu serveru, např. akela.mendelu.cz.

16 16 Přihlášení do systému Jde o identifikaci uživatelů systému První je výzva login: – zadáme uživatelské jméno Další dotaz je na heslo password: Heslo se neopisuje na obrazovku Je-li přihlášení v souladu s tabulkou oprávněných uživatelů – definuje se prostředí

17 17 Změna hesla Příkazem passwd Na nejvýznamnějších Unixových serverech MENDELU jsou login a heslo synchronizovány s UIS, heslo se proto mění pomocí UIS: –https://is.mendelu.cz/auth/system/zmena _hesla.plhttps://is.mendelu.cz/auth/system/zmena _hesla.pl

18 18 Definice prostředí (po přihlášení) Stanovení domovského adresáře Jeho nastavení jako aktuálního Definice přístupových práv k souborům, adresářům a ostatním prostředkům systému Aktivace shellu – první je spuštění souborů /etc/.profile a.profile

19 19 Příkazový interpret – shell Program, který zabezpečuje komunikaci s uživatelem. Vytváří příkazový řádek, kterému předchází systémová výzva (odezva, prompt). Na příkaz. řádek píšeme příkazy včetně případných přepínačů a parametrů, odesíláme klávesou Enter. Shell je buď schopen příkaz splnit sám (interní příkazy), nebo spustí jiný program (externí příkaz).

20 20 Ukončení práce Příkazem exit Změnou uživatelské identifikace –příkazem login – dojde k ukončení činnosti a přechodu na jiného uživatele syntaxe: login [username] –příkazem su – spustí subshell s novým uživatelem, po jeho ukončení – návrat k původnímu uživateli syntaxe: su [-] [username]

21 21 Volba hesla – zásady Jako heslo nepoužívat login! Jako heslo nepoužívat žádné slovo, které by mělo souvislost s Vaší osobou či s Vaší prací (křestní jména, zdrobněliny, název pracovního úkolu, telefonní číslo). Nepoužívat smysluplná slova, vhodné je proto použít alespoň jeden nepísmenný znak. Na různých počítačích u různých služeb používat různá hesla. Heslo nezaznamenávat na papír, uživatel si je musí pamatovat. Hesla přiměřeně často měnit.

22 22 Volba hesla – zásady Nepoužívat písmena „y“ a „z“ Možné postupy vytvoření hesla: –vybrat si nějakou říkanku a použít první (poslední) písmena slov, popř. doplnit o nějaký nepísmenný znak. Např. z písničky „Běží liška k Táboru, nese pytel zázvoru“ lze vytvořit heslo BlkTnpz –z dvojice (trojice) souvisejících slov vybrat první (poslední) slabiky a spojit je nějakým nepísmenovým znakem. Např. ze spojení Hloupé počítače lze vytvořit heslo Hlou*po –další…

23 23 Nápověda v Unixu Sestává se z textových souborů popisujících jednotlivá hesla Jsou v adresáři /usr/man (většinou) Zpřístupnění příkazem man syntaxe: man [nastavení] [sekce] heslo Někdy také příkazy toolman, usage, help

24 24 Formát příkazů v Unixu Jednoduchý příkaz – znamená provedení jedné specifikované akce Syntaxe: příkaz volby soubory přesměrování Volby (přepínače) většinou začínají znakem - Soubory (parametry) – jména souborů nebo adresářů oddělená mezerou Každý příkaz vrací výstupní kód (0 = OK)

25 25 Zástupné znaky Mohou se používat u jmen souborů, zpravidla když chceme najednou pojmenovat více souborů (např. za účelem jejich zkopírování, smazání apod.) * zastupuje libovolné množství libovolných znaků (tzn. i žádný) ? zastupuje právě jeden libovolný znak Závorky [ ] reprezentují právě jeden znak z množiny povolených. V závorkách uvádíme seznam povolených znaků – jsou buď zapsány za sebou, nebo odděleny pomlčkou, pak se berou všechny znaky mezi krajními hodnotami. –Např. d[0-9A-Za-z]_?.* reprezentuje všechny soubory/adresáře, které mají v názvu první písmeno „d“, druhý znak je písmeno nebo číslice, třetí znak je podtržítko, čtvrtý znak je libovolný, pátý znak je tečka a zbytek názvu tvoří libovolné množství (včetně 0) libovolných znaků. Použitím zástupných znaků vzniká tzv. maska názvu souboru.

26 26 Zástupné znaky Příklad: které názvy souborů odpovídají masce u?*[ly].txt ? 1.ukol.txt 2.ukoly.txt 3.uzmenebavichoditdoskoly.text 4.uly.txt 5.kuly.txt 6.ully.txt Řešení: 1, 2, 4, 6

27 27 Zástupné znaky Příklad: které názvy souborů odpovídají masce [0-9a-f]?[0-9a-f]* ? 1.abcd 2.a_b_c_d 3.9_Ab.pdf 4.5:h.txt 5.c.c Řešení: 1, 2, 5

28 28 Zástupné znaky Příklad: kterým maskám odpovídá název souboru Moje_nove_auto.jpg ? 1.*_????*_* 2.?[a-nr-z]*.jpg 3.?*[a-nr-z]*.jpg 4.*t?[:.,]* 5.*.* 6.* Řešení: 1, 3, 4, 5, 6

29 29 Přesměrování Ze standardního vstupu/výstupu jinam nežli na terminál Přesměrování výstupu – >soubor Pokud soubor, do kterého provádíme přesměrování neexistuje – vytvoří se, pokud existuje – přepíše se S připojením na konec souboru, pokud existuje – >>soubor Přesměrování vstupu –

30 30 Složené příkazy 1/4 Vznikají kombinováním jednoduchých příkazů za pomoci operátorů Výstupní kód je roven výstupnímu kódu posledního příkazu provedeného na popředí oddělující znak ; syntaxe: příkaz1;příkaz2 provede se příkaz1, po ukončení příkaz2

31 31 Složené příkazy 2/4 & – paralelní běh syntaxe: příkaz1 & příkaz2 příkaz1 & Pokud je za některým příkazem uveden &, je tento proces spuštěn na pozadí – shell nečeká na jeho dokončení a pokračuje příkazem 2 V druhé variantě se zobrazí prompt

32 32 Složené příkazy 3/4 | – roura (programový kanál)roura syntaxe: příkaz1 | příkaz2 Oba příkazy jsou spuštěny paralelně a příkaz1 předává standardní výstup na standardní vstup příkazu2 Tato roura je anonymní (viz snímek Pojmenovaná roura).

33 33 Složené příkazy 4/4 &&, || – konjunkce, disjunkce syntaxe: příkaz1 && příkaz2 Napřed je proveden příkaz1, skončí-li úspěchem, provede se i příkaz2 U disjunkce naopak

34 34 Systém souborů 1/2 Soubor – datová struktura uložená na vnějším médiu Jméno souboru – posloupnost znaků s výjimkou / Nedoporučuje se používat znaky: * ? “ ‘ ` \ { } # $ & | ; ( ) [ ] Není vhodné, aby jméno začínalo + - ~ Rozlišují se velká a malá písmena

35 35 Systém souborů 2/2 Soubory s názvem začínajícím tečkou jsou skryté, slouží zpravidla k uložení konfigurace určitých programů. Je možné použít tečku v názvu souboru a oddělit příponu souboru pro specifikaci jeho typu – např..c,.pdf,.java,.jpg,.avi Adresáře – zvláštní soubory obsahující informace o jiných souborech

36 36 Systém adresářů Adresáře tvoří stromovou strukturu Kořen – adresář / Cesta – řetězec jmen adresářů ve stromové struktuře, oddělené / Aktuální (pracovní) adresář – vždy právě jeden, v něm se právě nacházíme Absolutní cesta – od kořene Relativní – od aktuálního adresáře

37 37 Adresáře – pojmy Pracovní adresář (working directory) = adresář, ve kterém se uživatel momentálně nachází, označuje se. Rodičovský (nadřízený) adresář (parent directory): adresář o jednu úroveň výše směrem k pracovnímu adresáři, označuje se.. Domovský adresář (home directory) – adresář nastavený uživatelům po přihlášení do systému, pro každého uživatele jeden s příslušnými přístupovými právy – značení ~ Kořenový adresář (root directory) = počátek struktury systému souborů, vrchol stromu, domovský adresář superuživatele (roota) – značení /

38 38 Práce s adresáři cd – příkaz pro změnu aktuálního adresáře syntaxe: cd [adresář] bez parametru – nastaví domovský adresář jako aktuální pwd – výpis jména aktuálního adresáře

39 39 Tvorba a rušení adresářů mkdir – vytvoření adresáře syntaxe: mkdir [-p] jméno rmdir – zrušení adresáře syntaxe: rmdir [-p] jméno Rušený adresář musí být prázdný –lze specifikovat i více jmen adresářů –-p znamená vytvoření (zrušení jsou-li prázdné) mezilehlých adresářů

40 40 Příkaz ls ls – vypsání obsahu adresáře syntaxe: ls [-laCRF] [adresář, soubor nebo maska] -lpodrobný výpis atributů souboru -avypisuje i skryté soubory -Cvýpis do sloupců -Rvýpis i podadresářů -F za jménem adresáře je uveden znak /, za spustitelným souborem *

41 41 Podrobný výpis atributů souboru -rwxr-x--x 1 novak group 59 Jun 12 13:08.profile První znak udává typ souboru – obyčejný soubor dadresář ppojmenovaná roura lsymbolický link bspeciální soubor blokového zařízení jsou charakterizovány náhodným přístupem k datům, určitou velikostí bloků přenášených dat, existencí vyrovnávacích pamětí v jádře OS pro práci s těmito zařízeními, příklady: příklad: HDD, FDD cspeciální soubor znakového zařízení komunikace s těmito zařízeními probíhá po jednotlivých znacích, bez použití vyrovnávacích pamětí, příkladem jsou terminály, tiskárny, modemy, klávesnice

42 42 Podrobný výpis atributů souboru 2 -rwxr-x--x 1 novak group 59 Jun 12 13:08.profile Následují tři trojice přístupových práv – pro vlastníka, skupinu, ostatní uživatele –znaky v trojici rčtení souboru povoleno (read) wzápis do souboru povolen (write) xspouštění souboru povoleno (execute) –pokud není některé právo přiděleno, vyskytuje se -

43 43 Podrobný výpis atributů souboru 3 –Pokud jde o adresář a ne soubor, znaky znamenají rprávo adresář číst a získat z něj informace o souborech wprávo tvořit a rušit soubory v adresáři xprávo procházet adresářem – dostat se na podadresáře

44 44 Podrobný výpis atributů souboru 4 -rwxr-x--x 1 novak group 59 Jun 12 13:08.profile Druhá položka říká, kolik existuje vazeb na soubor (hardlinků) Třetí a čtvrtá položka určují vlastníka a skupinu souboru Pátá položka je velikost souboru ve slabikách (bajtech) 6. a 7. – datum a čas poslední změny 8. jméno souboru

45 45 Pojmenovaná roura Pojmenovaná roura Vytvoření: mknod název typ, např. mknod abc p nebo mkfifo název, např. mkfifo abc Použití – vstup: ls > abc & Použití – výstup: sort < abc

46 46 Příkazy pro práci se soubory file – vypisuje informaci o typu souboru syntaxe: file soubor cat – spojování a výpis souborů syntaxe: cat [-svt] [-] [soubory] [>vystup] -snevypisuje chybová hlášení, pokud chybí soubory -vtvypisuje netisknutelné znaky jako ^X -bere znaky ze standardního vstupu

47 47 Příkaz cp cp – kopírování souborů syntaxe:cp soubor1 soubor2 cp soubor adresář cp – kopírování adresářů včetně podstruktury syntaxe:cp -r ZdrojAdr CílAdr

48 48 Příkaz mv mv – přemístění a/nebo přejmenování souborů syntaxe: mv soubor1 soubor2 mv soubor cesta mv soubor1 adresář/soubor2

49 49 Příkaz rm rm – odstranění souborů z adresáře syntaxe: rm [-irf] soubor…|adresář... -ikaždé vymazání musí být potvrzeno uživatelem -fpotlačí dotazy při mazání -rje-li parametrem adresář, je vymazán celý podstrom

50 50 Příkazy pg, more pg, more – výpis souborů po obrazovkách syntaxe:pg soubor příkaz | pg more soubor příkaz | more vždy vypíší obrazovku a čekají povel k akci (mezerník, Enter, q)

51 51 Příkaz find 1/4 find – vyhledání souborů na disku syntaxe: find adresář… kritéria… kritéria -name jméno nalezení souboru dle jména, lze použít znaky *, ?, [] -user jméno hledá se soubor, jehož vlastníkem je uživatel jméno

52 52 Příkaz find 2/4 -group jméno vyhledání souboru podle jména skupiny -type [f|d|b|l|c] vyhledání souboru podle typu - newer soubor hledá soubory s časem poslední modifikace novějším, než má soubor

53 53 Příkaz find 3/4 -size [+/–] n[c] vyhledá soubory o velikosti (+ min., - max.) n bloků (512 B) nebo n bytů [c] -links [+/–] n vyhledá soubory se specifikovaným počtem (+ min., – max.) linků (odkazů) -mtime [+/–] n vyhledá soubory, které byly před n dny (+ min., – max.) modifikovány

54 54 Příkaz find 4/4 současné uvedení více kriterií – konjunkce kriterium1 -o kriterium2 vyjadřuje alternativu

55 55 Příkaz grep grep – vyhledání řetězců v textu syntaxe:grep [-in] „vzor“ soubor… příkaz | grep [-in] „vzor“ -iignoruje rozdíl mezi velkými a malými písmeny -nvypisuje čísla řádků

56 56 Příkaz grep vzor – metaznaky ^začátek řádku $konec řádku.libovolný znak * 0, 1, … opakování předchozího znaku [abc] jeden z z uvedených znaků, je-li na začátku ^, pak negace –pokud má být uveden metaznak jako součást řetězce – použijeme před ním \

57 57 Příkaz ln ln – tvorba odkazu na soubor či adresář syntaxe:ln [-s] soubor link -sznačí vytvoření symbolického linku soubor jméno souboru linkjméno linku (vazby)

58 58 Tvrdý odkaz (hardlink) Situace: vytvořili jsme soubor „jméno1“ ln jméno1 jméno3 rm jméno1

59 59 Symbolický odkaz („symlink“) Situace: máme soubor „jméno3“ ln -s jméno3 jméno9 Symbolické odkazy umožňují: Odkazy na adresáře Odkazy do jiného systému souborů (diskového oddílu)

60 60 Změna přístupových práv chmod – definuje přístupová práva k souboru nebo adresáři syntaxe: chmod [u|g|o|a] [+|-|=] [r|w|x] soubor nebo:chmod ugo soubor kategorie uživatelů: uvlastník gskupina oostatní avšichni

61 61 chmod operace: +přidání –odebrání =nastavení typ práva: rčtení w zápis xvykonávání

62 62 chmod – příklady Skupině přidáme právo ke čtení a spuštění souboru run : –chmod g+rx run Uživateli (vlastníkovi) nastavíme práva ke čtení a zápisu k souboru kalkulace.pdf (pokud měl původně i právo x, bude odebráno): –chmod u=rw kalkulace.pdf Skupině a ostatním odebereme právo k zápisu do souboru log.txt : –chmod go–w log.txt

63 63 chmod – druhý způsob ugo – zadání přístupových práv v oktalovém tvaru (3místným číslem) upráva pro vlastníka gpráva pro skupinu opráva pro ostatní –u práv znamená 4čtení 2 zápis 1 vykonání

64 64 chmod – příklady Příkaz chmod 644 soubor nastaví práva rw-r--r-- Příkaz chmod 755 soubor nastaví práva rwxr-xr-x Příkaz chmod 600 soubor nastaví práva rw Příkaz chmod 711 soubor nastaví práva rwx--x--x

65 65 Procesy Proces = běžící program Procesy jsou nezávislé a mohou probíhat paralelně (každý má jednoznačné číslo – PID, definovaná práva podle toho, kdo jej spustil, a vlastní data) Procesy mohou vzájemně komunikovat pomocí zasílání signálů (mají svá čísla – ty signály i ty procesy :-). Signály slouží dvěma hlavním účelům –uvědomit proces, že nastala určitá událost, –přinutit proces vykonat funkci na zpracování signálu (signal handler). Proces může v případě potřeby vytvořit další podprocesy Jednojádrový procesor počítače může být samozřejmě v daném okamžiku využíván jen jedním procesem, (pseudo)paralelní běh procesů je zajištěn střídáním přístupu k procesoru. Správu procesů zajišťuje speciální proces – správce procesů.

66 66 Procesy Neustále dochází k předávání řízení mezi jádrem a běžícími procesy. Jedním z procesů je příkazový interpret (shell), sloužící pro komunikaci uživatele se systémem. Každý uživatelský proces může být spuštěn pouze z jiného procesu  rodičovský a dceřinný proces. Proces spuštěný z příkazového řádku je spuštěn shellem. Každý proces je spuštěn s nějakou prioritou – předností při využívání procesoru.

67 67 Procesy a programová vlákna Proces je spuštěný program –Každý proces má přidělené jednoznačné číslo PID –Každý proces má svého rodiče a zná ho pod číslem PPID Vlákno (Thread) je spuštěný podprogram v rámci procesu. Proces tvořený více vlákny může být vykonáván na více procesorech současně (klasický jednovláknový proces pouze na jednom). Cílem rozdělení procesu do vláken je zkrácení doby zpracování procesu. Rozdělení provádí programátor při psaní programu výběrem částí, které jsou na sobě nezávislé a mohou tudíž pracovat současně. Je třeba použít programovací jazyk, který tvorbu vláken umožňuje – např. Java. Vytvoření nového vlákna v procesu je mnohem rychlejší než vytvoření nového procesu.

68 68 ps ps – vypsání stavu procesů syntaxe: ps [-aefl] volby: -avypíše procesy všech uživatelů v systému -evypíše všechny procesy v systému -fpodrobná forma výpisu -ljiný podrobný výpis

69 69 ps Vypisované údaje: UIDuživatelský kód vlastníka procesu PIDidentifikační číslo procesu PPIDidentifikační číslo rodiče procesu NI,PRIpriorita TIMEčas procesoru spotřebovaný procesem CMDpříkaz, kterým byl proces aktivován

70 70 Signály, rušení procesů Uživatel může pomocí příkazu kill předat některému svému procesu signál (specifické oznámení nebo požadavek). V okamžiku, kdy proces obdrží signál, přeruší provádění posloupnosti instrukcí a provede například jednu z následujících akcí: –exit – zrušení procesu, –core – zrušení procesu a uložení obsahu jeho paměti do souboru s názvem core (využívá se pro analyzování chyb), –ignore – ignorování signálu, –stop – pozastavení procesu, –continue – pokračování pozastaveného procesu. Proces má definovánu vlastní funkci na zpracování signálu (signal handler)

71 71 Signály, rušení procesů Speciální postavení má signál číslo 9 (SIGKILL), který vždy ukončí běh programu. Počet a význam jednotlivých signálů závisí na konkrétní implementaci Unixu. Nejčastější signály jsou následující: –SIGHUP 1 většinou se procesy po tomto signálu restartují a znovu načtou konfigurační soubory, –SIGINT 2 obvykle ukončení procesu, –SIGQUIT 3 ukončení procesu včetně vypsání mapy paměti, –SIGKILL 9 okamžité ukončení procesu, operaci nelze změnit, –SIGTERM15 standardní požadavek na ukončení procesu, –SIGSTOP17 zastavení (suspend) procesu, operaci nelze změnit, –SIGTSTP18 zastavení procesu po signálu z klávesnice. Bližší informace:

72 72 Signály, rušení procesů Signály nemusí být posílány pouze prostřednictvím jiného procesu (např. procesu kill), některé lze odeslat procesu na popředí následujícími kombinacemi kláves: –^CSIGINTobvykle se používá pro ukončení procesu, –^\SIGQUITobvykle se používá na ukončení procesu, vypíše se mapa paměti do souboru core, –^ZSIGTSTPsuspend – pozastavení běhu procesu (obnovení běhu  signál SIGCONT), –^YSIGTSTPopožděný suspend – signál se pošle procesu až v okamžiku jeho požadavkůo čtení z klávesnice,

73 73 jobs, bg, fg jobs – příkaz pro výpis spuštěných úloh Každá úloha má přidělené číslo, na které se lze odkazovat v příkazech bg a fg Úlohu pozastavenou pomocí ^Z lze spustit na pozadí pomocí příkazu bg nebo na popředí příkazem fg.

74 74 kill kill – příkaz k odeslání signálu zvolenému procesu. Používá se především k ukončení procesu. syntaxe:kill [-sig] PID... -sigSignál posílaný procesu. Buď číslo (9), nebo jménem (TERM). PIDčíslo procesu (process identifier) je-li zadáno číslo 0, pak je zaslán všem potomkům shellu

75 75

76 76 Priorita procesů Priorita procesu: –celé číslo z pevně daného intervalu, které určuje přednost procesu v přístupu k prostředkům (např. CPU), –je nastaveno systémem před spuštěním procesu, lze změnit i za běhu procesu, –nižší číslo znamená vyšší prioritu. Priorita: –statická: bývá obyčejně v průběhu běhu programu konstantní, stanoví se před zařazením procesu do fronty, –dynamická: odvozena od statické, ale v průběhu běhu programu se mění, neboť plánovač procesů ji snižuje u běžících procesů, –výsledek: vybírá se proces s nejvyšší dynamickou prioritou.

77 77 Příkaz nice nice – změna statické priority procesu (při jeho spuštění) syntaxe:nice [-číslo] příkaz -čísloo kolik má být priorita snížena. Superuživatel (root) může i zvýšit (zadá záporné číslo). Interval změny: 0–39, implicitně 10.

78 78 Příkaz renice renice – změna statické priority běžícího procesu syntaxe:renice [číslo] PID číslonová priorita

79 79 Příkaz nohup nohup – vytvoří proces, který bude pokračovat v práci i po odhlášení uživatele (tzn. nebude zrušen po zrušení jeho rodičovského procesu) syntaxe:nohup příkaz &

80 80 Příkaz time time – zobrazí čas procesoru spotřebovaný procesem v uživatelské fázi (instrukce programu), systémové fázi (služby jádra) a celkový (reálný) čas, po který byl příkaz zpracováván syntaxe:time příkaz

81 81 who who – seznam přihlášených uživatelů syntaxe:who who am I vypisuje jméno uživatele, terminál na kterém se přihlásil a čas přihlášení lze vypsat i jiné údaje údaje bere ze souboru /etc/utmp (/etc/wtmp za delší dobu)

82 82 finger finger – identifikace uživatelů pracujících na serveru syntaxe:finger finger uživatel finger Vypíše informaci o uživatelích na lokálním i vzdáleném uzlu

83 83 finger Vypisuje –uživatelské jméno –občanské jméno a příjmení –terminál –datum a čas přihlášení –informace ze souboru.plan (např. adresa, telefon,...) –informace ze souboru.project (na čem uživatel pracuje)

84 84 Elektronická pošta Přirozená součást UNIXu. Účet každého uživatele automaticky zahrnuje ovou adresu a schránku. Programy (poštovní klienti): pine, elm, mutt

85 85 Systémové proměnné 1/2 HOME – cesta do domovského adresáře SHELL – cesta k příkazovému procesoru USER – jméno uživatelova účtu PATH – seznam adresářů, ve kterých se automaticky hledají programy ke spuštění PWD – absolutní cesta do pracovního adresáře OLDPWD – absolutní cesta do pracovního adresáře Výpis obsahu proměnné: echo $proměnná Například: echo $PATH

86 86 Systémové proměnné 2/2 –Výpis obsahu všech proměnných najednou – příkaz env nebo set –Nastavení obsahu proměnné: –set proměnná=obsah nebo –env proměnná=obsah nebo –setenv proměnná=obsah –(Konkrétní příkaz záleží na shellu.)


Stáhnout ppt "Unix – úvod. 2 Obsah přednášky Literatura Úvod do práce s Unixem Formát příkazů v Unixu Systém souborů a adresářů Příkazy pro práci se soubory a adresáři."

Podobné prezentace


Reklamy Google