1 / 86

Unix – úvod

Unix – úvod. 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é. Literatura.

knox
Download Presentation

Unix – úvod

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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 • Procesy a práce s nimi • Systémové proměnné

  3. Literatura • Hála, T.: Základy práce v Unixu. 3. vyd. Brno: Konvoj, 2002. 40 s. ISBN 80-7302-040-8.(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 1995. 189 s. ISBN 80-85828-28-6. • Brandejs, M.: UNIX–Linux: praktický průvodce. 1. vyd. Praha: Grada, 1996. 344 s. ISBN 80-7169-170-4. • Herborth, Ch.: Unix a Linux – Názorný průvodce. 1. vyd. Brno: Computer Press, 2006. 288 s. ISBN 80-251-0978-X. • Liška, R.: Úvod do Unixu. [online] 28. 4. 2009. Dostupný z WWW: http://kfe.fjfi.cvut.cz/~liska/unix/index.html. • http://www.fi.muni.cz/usr/brandejs/unix/ • http://www.abclinuxu.cz/ • http://www.root.cz/ • http://www.linux.cz/

  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. Ú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. 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. 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 produkovalyv textové podobě a mohly být použity jako vstupy do programů dalších.

  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.

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

  10. Struktura Unixu

  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. 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. 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. Uživatelské účty • Zavedeny z důvodů ochrany systému a dat mezi uživateli • Jsou jimi definována přístupová právak 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. 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). • Pro přihlášení uživatele je třeba zadat adresu serveru, např. akela.mendelu.cz.

  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. 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.pl

  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. Příkazový interpret – shell • Program, který zabezpečuje komunikacis 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. 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ávratk původnímu uživateli syntaxe: su [-] [username]

  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. 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 kTá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. 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. 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. 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. Zástupné znaky • Příklad: které názvy souborů odpovídají masce u?*[ly].txt? • ukol.txt • ukoly.txt • uzmenebavichoditdoskoly.text • uly.txt • kuly.txt • ully.txt • Řešení: 1, 2, 4, 6

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

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

  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 – <soubor

  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. 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. Složené příkazy 3/4 • |–roura (programový kanál) • 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. 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. 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. 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. 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. 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. 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. 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. Příkaz ls • ls – vypsání obsahu adresáře • syntaxe: ls [-laCRF] [adresář, soubor nebo maska] -lpodrobný výpis atributů souboru -a vypisuje i skryté soubory -C výpis do sloupců -R výpis i podadresářů -F za jménem adresáře je uveden znak /, za spustitelným souborem *

  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 d adresář p pojmenovaná roura l symbolický link b speciá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 c speciá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. 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) w zápis do souboru povolen (write) x spouštění souboru povoleno (execute) • pokud není některé právo přiděleno, vyskytuje se -

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

  44. Podrobný výpis atributů souboru 4 -rwxr-x--x 1novakgroup59Jun 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. Pojmenovaná roura • Vytvoření:mknod název typ,např.mknod abc pnebomkfifo název,např.mkfifo abc • Použití – vstup:ls > abc & • Použití – výstup:sort < abc

  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] -s nevypisuje chybová hlášení, pokud chybí soubory -vt vypisuje netisknutelné znaky jako ^X - bere znaky ze standardního vstupu

  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. 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. Příkaz rm • rm – odstranění souborů z adresáře • syntaxe: rm [-irf] soubor…|adresář... -i každé vymazání musí být potvrzeno uživatelem -f potlačí dotazy při mazání -r je-li parametrem adresář, je vymazán celý podstrom

  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í povelk akci (mezerník, Enter, q)

More Related