Unix – úvod.

Slides:



Advertisements
Podobné prezentace
UŽIVATEL, SKUPINA, PROCES Systém bez uživatele je jedině Matrix? Uživatelé se seskupují a řídí práci. SPŠ Teplice - 3.V.
Advertisements

© 2000 VEMA počítače a projektování spol. s r. o..
Dynamické dokumenty na straně klienta Informatika pro ekonomy II.
Obecně o operačních systémech
Vizuální Systém Fotbal
Operační systém UNIX Soubory a adresářová struktura Roman Danel
Vytváření, použití dávkových souborů
SOFTWARE dálkové studium PODNIKÁNÍ 2. listopad 2006.
Přednáška č. 5 Proces návrhu databáze
M. Štulc, J. Šváb, J. Kolena SIMULACE OPERAČNÍHO SYSTÉMU
Souborové systémy.
Operační systémy. OPERAČNÍ SYSTÉMY pomoc operátorovi, podpora vlastností reálného času, víceuživatelských a více úlohových systémů.
Operační systém Adam Greguš, 4.A.
NÁSOBENÍ ČÍSLEM 10 ZÁVĚREČNÉ SHRNUTÍ
VY_32_INOVACE_INF_RO_12 Digitální učební materiál
Vzdělávací materiál / DUMVY_32_INOVACE_02B10 Příkazový řádek: úvod AutorIng. Petr Haman Období vytvořeníListopad 2012 Ročník / věková kategorie3. ročník.
Vzdělávací materiál / DUMVY_32_INOVACE_02B15 Příkazový řádek: uživatelské účty AutorIng. Petr Haman Období vytvořeníLeden 2013 Ročník / věková kategorie3.
Zábavná matematika.
Čtení myšlenek Je to až neuvěřitelné, ale skutečně je to tak. Dokážu číst myšlenky.Pokud mne chceš vyzkoušet – prosím.
Přístupová práva, maska přístupových práv Jiří Hořejší.
Základy práce na PC Ing. Jan Roubíček.
Dělení se zbytkem 8 MODERNÍ A KONKURENCESCHOPNÁ ŠKOLA
Náhoda, generátory náhodných čísel
PHP – Základy programování
Shell Team Jan Kupka Petr Kykal Tomáš Paríšek si Vám dovoluje představit
Operační systém UNIX - vznik v roce 1969, Bell Laboratories (AT&T), Denis Ritchie, Ken Thompson (důraz na souborový systém) - reakce na krachující MULTICS,
ANOTACEPrezentace obsahuje informace o elektronické komunikaci, využití u. Druh učebního materiáluDUM Očekávané výstupy Žáci si vytvoří ovou.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Celní služby 2000 Radek Sedláček TranSoft a.s Radek Sedláček TranSoft a.s
Výpočetní technika a algoritmizace I
Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou I NFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE Ing. Jan Roubíček.
2 Ing. Jan Keprt Centrální správa uživatelů 3 Jak to bylo dosud Bylo třeba nastavení uživatelů provést zvlášť, v každém modulu samostatně. Uživatel si.
Uživatelské profily, vlastnosti uživatelského účtu
KONTROLNÍ PRÁCE.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost Číslo projektu: CZ.1.07/1.5.00/ Číslo materiálu: VY_32_INOVACE_PSK-4-09.
WWW – hypertextový informační systém
UNIX — doplňky Informatika pro ekonomy II přednáška 9.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
DATABÁZOVÉ SYSTÉMY. 2 DATABÁZOVÝ SYSTÉM SYSTÉM ŘÍZENÍ BÁZE DAT (SŘBD) PROGRAM KTERÝ ORGANIZUJE A UDRŽUJE NASHROMÁŽDĚNÉ INFORMACE DATABÁZOVÁ APLIKACE PROGRAM.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Obchodní akademie a Střední odborná škola, gen. F. Fajtla, Louny, p.o. Osvoboditelů 380, Louny Číslo projektu CZ.1.07/1.5.00/ Číslo sady 28Číslo.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
SAMBA umožňuje linuxovému systému sdílení prostředků a služeb prostřednictvím sítě používá SMB (server message block) protocol - identický protokolu.
Příkazový řádek v OS Windows
Operační systém GNU Linux
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
OPERAČNÍ SYSTÉMY.
JUI přednáška Vstup a výstup, cykly RNDr. Jiří Dvořák, CSc.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
doc. RNDr. Zdeněk Botek, CSc.
Operační systém UNIX Příkazové prostředí UNIXu: příkaz [argumenty] [jméno] Ve jménech příkazů a parametrech se rozlišují malá a velká písmena.
Výpočetní technika a algoritmizace I Základní příkazy příkazového řádku v systému Windows a unixových systémech.
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
Operační systém (OS) Základní funkce operačního systému: – Zajištění komunikace s okolím. – Řízení a zpracování programů. – Údržba informací na externích.
Základní škola T. G. Masaryka a Mateřská škola Poříčany, okr. Kolín VY_32_INOVACE_ICT_04 ORGANIZACE DAT V PC Zpracovala: Mgr. Květoslava Štikovcová Číslo.
SOFTWAROVÁ PODPORA PRO VYTVÁŘENÍ FUZZY MODELŮ Knihovna fuzzy procedur Ing. Petr Želasko, VŠB-TU Ostrava.
NÁZEV ŠKOLY:SOŠ Net Office, spol. s r.o. Orlová Lutyně
Vypracoval / Roman Málek
Služby Windows Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Inf Elektronická komunikace
OPERAČNÍ SYSTÉMY Číslo projektu CZ.1.07/1.5.00/ Název školy
Vlastnosti souborů Jaroslava Černá.
Operační systémy - úvod
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
Dávkové soubory Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Operační systémy 9. Spolupráce mezi procesy
DIGITÁLNÍ UČEBNÍ MATERIÁL
Linux-příkazový řádek
Práce s procesy Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí Autor:
Systém souborů 1.
Transkript prezentace:

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 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/

Ú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

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

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é)

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.

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.

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

Struktura Unixu

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, ...)

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)

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ů

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

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.

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í

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

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

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

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]

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.

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ší…

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

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)

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.

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

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

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

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

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

Složené příkazy 2/4 & – paralelní běh syntaxe: příkaz1 & příkaz2 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

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

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

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

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

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

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í /

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

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ářů

Příkaz ls ls – vypsání obsahu adresáře syntaxe: ls [-laCRF] [adresář, soubor nebo maska] -l podrobný 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 *

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

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 -

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

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

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

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

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

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

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

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)

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

Příkaz find 2/4 -group jméno -type [f|d|b|l|c] - newer soubor 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

Příkaz find 3/4 -size [+/–] n[c] -links [+/–] n -mtime [+/–] n 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

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

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

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 \

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

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

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)

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ů: u vlastník g skupina o ostatní a všichni

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

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

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

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

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

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.

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.

ps ps – vypsání stavu procesů syntaxe: ps [-aefl] volby: -a vypíše procesy všech uživatelů v systému -e vypíše všechny procesy v systému -f podrobná forma výpisu -l jiný podrobný výpis

ps Vypisované údaje: UID uživatelský kód vlastníka procesu PID identifikační číslo procesu PPID identifikační číslo rodiče procesu NI,PRI priorita TIME čas procesoru spotřebovaný procesem CMD příkaz, kterým byl proces aktivován

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)

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, SIGTERM 15 standardní požadavek na ukončení procesu, SIGSTOP 17 zastavení (suspend) procesu, operaci nelze změnit, SIGTSTP 18 zastavení procesu po signálu z klávesnice. Bližší informace: http://en.wikipedia.org/wiki/Signal_(computing)

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: ^C SIGINT obvykle se používá pro ukončení procesu, ^\ SIGQUIT obvykle se používá na ukončení procesu, vypíše se mapa paměti do souboru core, ^Z SIGTSTP suspend – pozastavení běhu procesu (obnovení běhu  signál SIGCONT), ^Y SIGTSTP opožděný suspend – signál se pošle procesu až v okamžiku jeho požadavků o čtení z klávesnice,

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.

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... -sig Signá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

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.

Příkaz nice nice – změna statické priority procesu (při jeho spuštění) syntaxe: nice [-číslo] příkaz -číslo o 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.

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

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 &

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

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)

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

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)

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

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

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