Úvod. unx-predn_01-uvod.odt 25.02.2008 16:13:43 1



Podobné dokumenty
Úvod do Linuxu. SŠSI Tábor 1

Přednáška 1. Úvod. Historie OS Unix. Architektura OS Unix. Interpret příkazů SHELL. Zpracování příkazové řádky. Speciální znaky. Zkratky příkazů.

Přednáška 1. Úvod. Historie OS Unix. Architektura OS Unix. Interpret příkazů. SHELL. Zpracování příkazové řádky. Speciální znaky. Zkratky příkazů.

konec šedesátých let vyvinut ze systému Multics původní účel systém pro zpracování textů autoři: Ken Thompson a Denis Ritchie systém pojmnoval Brian

Martin Kopta. Unixové shelly. Středisko Unixových Technologií, 2009

Úvod do Operačních Systémů

Systém souborů (File System)

Operační systémy. Tomáš Vojnar IOS 2009/2010. Vysoké učení technické v Brně Fakulta informačních technologií Božetěchova 2, Brno

Operační systém GNU/Linux

Operační systém UNIX

Lekce 25 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Úvod do UNIXu. Okruh č. 1 - přihlášení, historie, práce se soubory. Jakub Galgonek. verze r1. inspirováno materiály Davida Hokszy

Operační systémy. Cvičení 1: Seznámení s prostředím

Rozdělení operačních systémů

Úvod, jednoduché příkazy

Úvod do Operačních Systémů

Přednáška 8. Proměnné. Psaní a ladění skriptů. Parametry skriptu. Vstup a výstup. Konfigurační soubory shellu. Úvod do Operačních Systémů Přednáška 8

more Program se zastaví vždy po vypsání jedné stránky textu. Ukončení Ctrl+C less Umožňuje pohybovat se v souboru dopředu i dozadu.

Seznámení se shellem, textové editory numerické výpočty

PRACUJEME S SHELLEM Ať žije BASH.

IT ESS II. 1. Operating Systém Fundamentals

Základy programování Operační systémy (UNIX) doc. RNDr. Petr Šaloun, Ph.D. VŠB-TUO, FEI (přednáška připravena z podkladů Ing. Michala Radeckého)

ZOS CV1 Základy operačních systémů

BASH. Kouzla s příkazovou řádkou. Petr Koloros

Operační systémy (OS)

SÁM O SOBĚ DOKÁŽE POČÍTAČ DĚLAT JEN O MÁLO VÍC NEŽ TO, ŽE PO ZAPNUTÍ, PODOBNĚ JAKO KOJENEC PO PROBUZENÍ, CHCE JÍST.

SOU Valašské Klobouky. VY_32_INOVACE_01_15 IKT Operační systémy, základní vlastnosti, přehled. Mgr. Radomír Soural

UNIX. Historie a základní pojmy. Historie. Před ním. Začátek

Administrace OS Unix. Úvodní informace Principy administrace Uživatelé

Operační systémy. Tomáš Hudec.

Úvod do Operačních Systémů

Computer Press Brno 2003

Přednáška 7. Celočíselná aritmetika. Návratový kód. Příkazy pro větvení výpočtu. Cykly. Předčasné ukončení cyklu.

KURS UNIXU PRO ZAČÁTEČNÍKY. Tento materiál je úvodem do operačního systému Unix pro aplikační programátory a uživatele. 2 HISTORIE UNIXU 6

Architektura systému GNU/Linux. Bohdan Milar

PROGRAMOVÁNÍ V SHELLU

Rozdělení operačních systémů

Úloha 3 editor a skripty. připojte se vzdáleně na dray6.feld.cvut.cz heslo získáte na adrese

monolitická vrstvená virtuální počítač / stroj modulární struktura Klient server struktura

Tomáš Borland Valenta

Administrace Unixu a sítí. Tomáš Kouba <

Operační systémy. Tomáš Vojnar IOS 2010/2011. Vysoké učení technické v Brně Fakulta informačních technologií Božetěchova 2, Brno

Úvod do Operačních Systémů

Operační systémy. Tomáš Vojnar IOS 2014/2015. Vysoké učení technické v Brně Fakulta informačních technologií Božetěchova 2, Brno

Unix je víceuživatelský a víceúlohový OS

Historie UNIXu a Linuxu. Bohdan Milar bohdan.milar@liberix.cz

Základní příkazy OS UNIX

Přednáška 5. Identita uživatelů, procesů a souborů. Přístupová práva a jejich nastavení. Úvod do Operačních Systémů Přednáška 5

Základy operačních systémů

Úvod do Unixu. man: příkaz pro zobrazení nápovědy k danému příkazu, programu (pokud je k dispozici), např. man cp. pwd: vypíše cestu k aktuální pozici

B a s h. očima. Bohdana Milara

Nastroje na zpracovani textu:

Identita uživatele (procesu)

Aktualizace softwaru Uživatelská příručka

Operační systémy Linux, Mac OS X a jejich srovnání

Operační systémy. Cvičení 5: Volání jádra, procesy, vlákna.

Fides Card Reader

Střední odborná škola a Střední odborné učiliště, Hořovice

Skripty - úvod. Linux - skripty 2

OpenOffice.org 1.1 CZ

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2

Operační systémy. Operační systém - programové vybavení počítače, jehož úlohou je z{kladní řízení

Téma 2 Architektury OS a jejich služby

Téma 9: Administrace systému CentOS. Představení a používání aplikací pro administraci CentOS

Systémy souborů (File Systems)

Úvod do UNIXu. Libor Forst

Příkazová řádka. predn_02.odt :55:55 1

IBM TRIRIGA Application Platform Verze 3 Vydání 4.2. Příručka instalace a implementace

PŘÍKAZY PRÁCE SE SOUBORY

Úvod do operačního systému Linux Mgr. Josef Horálek

Principy operačních systémů. Lekce 1: Úvod

Domácí příprava k předmětu YD38UOS Úloha 10 práce s lokálními soubory pokračování

Základy operačního systému LINUX část I

Základní orientace v systémech UNIX

Vrstvy programového vybavení Klasifikace Systémové prostředky, ostatní SW Pořizování Využití

DUM 01 téma: Obecné vlastnosti tabulkového editoru, rozsah, zápis do buňky, klávesové zkratky

Administrace Unixu a sítí

Úvod do operačního systému Linux Mgr. Josef Horálek

Učební texty pro předmět /01 Operační systém Unix (OSUX) Hornicko geologická fakulta Institut ekonomiky a systémů řízení

Úvod do Linuxu SŠSI Tábor 1

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

Základy informatiky. Operační systémy

Definice OS. Operační systém je základní programové vybavení počítače, nezbytné pro jeho provoz.

Úvod do Operačních Systémů

Administrace služby - GTS Network Storage

Verze /10. Xerox ColorQube 9301/9302/9303 Internetové služby

Rozšíření ksh vůči sh při práci s proměnnými

Téma 2: Práce s commands. Téma 2: Práce s Commands

Operační systémy 2. Přednáška číslo 2. Přidělování paměti

C2110 Operační systém UNIX a základy programování

Základy operačního systému LINUX část III

Linux Teorie operačních systémů a realita

OPERAČNÍ SYSTÉM ZLÍNSKÝ KRAJ. Obchodní akademie, Vyšší odborná škola a Jazyková škola s právem státní jazykové zkoušky Uherské Hradiště

Sekvenční a podmíněné provádění

Jak na speciální klávesy v Linuxu

1. Administrace služby Bezpečný Internet přes webovou aplikaci WebCare GTS

Matematika v programovacích

INTEGRACE IS DO STÁVAJÍCÍ HW A SW ARCHITEKTURY

Základní příkazy UNIXu (Linuxu)

Transkript:

Úvod unx-predn_01-uvod.odt 25.02.2008 16:13:43 1

Operační systém UNIX Přednášky Jan Zajic, zajic@fel.cvut.cz, K226 Web service.felk.cvut.cz/courses Cíl předmětu pokročilý uživatel začínající administrátor Přednášky přehled z pohledu uživatele základní informace o administraci systému Cvičení praktické procvičování uživatelských příkazů programování v shellu unx-predn_01-uvod.odt 25.02.2008 16:13:43 2

Podmínky udělení zápočtu viz web Klasifikace zkoušky Body ze cvičení Písemka - 40 bodů je povolena libovolná literatura (ne v elektronické podobě) Klasifikace viz web [1] Přednášky (web) [2] Manuálové stránky Unixu [3] http://docs.sun.com [4] cokoliv o unixu, shellu... Literatura unx-predn_01-uvod.odt 25.02.2008 16:13:43 3

Historie konec 60. let AT&T + MIT + GE vyvíjí MULTICS (ultimate multi-userenv.) 1969 AT&T Bell Labs - začátek OS Unix (PDP7) Ken Thompson vytváří assembler, editor, shell a syst.soub. začátek 70. let kolem 1975 začátek 80. let konec 80. let AT&T vývoj OS Unix (PDP11/20). Ken Thompson vytváří interpret B, pak NB (NewB) Dunnis Ritchie vytváří C Kernel a shell přepsán do C University of California et Berkley (ucb) - BSD Unix Komerční zájem o OS Unix, DARPA Návrh standardů (POSIX, XPG, SVID), SVR4 Unix 1991 Linus B. Torvalds vytváří jádro OS Linux unx-predn_01-uvod.odt 25.02.2008 16:13:43 4

Vlastnosti (většinou nové myšlenky) víceúlohový běh více úloh ve sdílení času (timesharing), ochrana paměti, plánování procesů víceuživatelský možnost současné práce více uživatelů (každý má k dispozici virtuální počítač) identifikace a vzájemná ochrana uživatelů unifikované prostředí přenositelný mezi platformami (90% jádra v jazycec) interaktivní přístup s možností vytváření dávek příkazů shell jako rozhraní uživatele a interpret řídícího jazyka hierarchický systém souborů odpadá potřeba rezervovat místo pro vytvářené soubory přesměrování a řetězení vstupu a výstupu příkazů vše je soubor (i periferie, nyní iprocesy) unx-predn_01-uvod.odt 25.02.2008 16:13:43 5

Další rysy podpora práce v síti nejprve komunikace mezi dvěma počítači (uucp, mail) později protokoly TCP/IP a Internet grafické prostředí virtuální grafický terminál X-Window různá grafická uživatelská rozhraní (GUI) nad X - CDE, GNOME rozšíření pro práci v reálném čase jiné plánovací algoritmy, jiné třídy priorit, použití vláken v jádře (viz dále) podpora multiprocesorových systémů (SMP) přechod od plánování procesů na plánování vláken (thread) podpora vláken v jádře unx-predn_01-uvod.odt 25.02.2008 16:13:43 6

Architektura OS Unix programy interprety příkazů dávky příkazů (shells) (scripts) systémové procesy (daemons) knihovny Režim uživatelský jádro operačního systému (kernel) vrstva jádra závislá na HW (HAL) Režim jádra hardware unx-predn_01-uvod.odt 25.02.2008 16:13:43 7

Poprvé u terminálu Přihlášení do grafického prostředí necháme na cvičení Přihlášení do příkazové řádky (konzole, ssh) musíme znát uživatelské jméno a heslo jméno nesmí být napsáno velkými písmeny u hesla (podobně jako jinde v UNIXu) se rozlišují malá a velká písmena znaky hesla se nezobrazují pozor na používání numerické a české klávesnice login: zajic password: login incorrect login: zajic password: Last login: Sat Feb 24 21:31:36 from dilna Sun Microsystems Inc. SunOS 5.8 Generic February 2000 unx-predn_01-uvod.odt 25.02.2008 16:13:43 8

Změna hesla heslo se mění příkazem passwd z důvodů bezpečnosti nejméně 6 znaků, alespoň nějaký znak různý od písmen u standardního unixu se rozlišuje nejvíce 8 znaků heslo lze změnit pouze za podmínky, že známe původní heslo zapomenuté heslo nezjistí ani administrátor, může ho však změnit bez znalosti původního hesla $ passwd Old password: <zadat staré heslo> New password: <zadat nové heslo> Retype new password: <zopakovat nové heslo> Odhlášení současný stisk kláves Ctrl a D (značí se ^D) exit logout unx-predn_01-uvod.odt 25.02.2008 16:13:43 9

Jména souborů (adresářů) Maximální délka jména závisí na implementaci ( obvykle 255, s5-14 ) Jsou povoleny všechny znaky kromě lomítka (/) Nedoporučené znaky jsou: nezobrazitelné ( <Ctrl>A) znaky interpretované shellem ( *, #, $,mezery ) Poznámky: Malá a velká písmena se rozlišují. Tečka je platný znak. Jména souborů začínající tečkou se: nenahrazují na příkazové řádce při použití znaků * a? nevypisují příkazem ls (jen s přepínačem -a) proto jména konfiguračních souborů obvykle začínají tečkou:.profile,.kshrc,... Jména tečka (.) a dvě tečky (..) jsou rezervována pro:. - aktuální adresář.. - nadřazený adresář unx-predn_01-uvod.odt 25.02.2008 16:13:43 10

Adresářová struktura Absolutní (úplná) cesta (Absolute/Full Path) určení cesty k souboru úplným zápisem všech adresářů ( oddělených znaky / ) počínaje kořenovým adresářem (/) Aktuální (pracovní) adresář (Current/Working Directory) zobrazen příkazem pwd hodnota proměnné PWD mění se příkazem cd <nový pracovní adresář> je určen absolutní cestou v každém procesu může být jiný má synonymum (link) tečka (.) synonymum nadřazeného adresáře jsou dvě tečky (..) unx-predn_01-uvod.odt 25.02.2008 16:13:43 11

Relativní cesta (Relative Path) nezačíná / určuje cestu k souboru spolu s pracovním adresářem Cesta k adresáři (Path) + jméno souboru (Name) = cesta k souboru (Pathname) Domovský adresář (Home Directory) definován pro každého uživatele po přihlášení je pracovním adresářem jméno uloženo v eviroment proměnné HOME nastaví se jako pracovní příkazem cd bez parametrů obvykle /home/<username> nebo /home/<groupname>/<username> obvykle umožňuje uživateli zápis (vytváření souborů a podadresářů) unx-predn_01-uvod.odt 25.02.2008 16:13:43 12

Interpret příkazů Shell pouští se při přihlášení do příkazové řádky nebo startem emulátoruterminálu v GUI zajišťuje substituce na příkazové řádce a provedení příkazu: zabudovaný příkaz - provádí stejný shell dávka příkazů - provádí nový shell (nový proces) binární program - odstartován jakonový proces Interpret programovacího jazyka proměnné řídící struktury unx-predn_01-uvod.odt 25.02.2008 16:13:43 13

Co z toho plyne: příkaz díky substitucím může být ( a obvykle bývá) volán s jinými parametry, než je napsáno na příkazové řádce příkaz (obvykle) neanalyzuje řádku (spoléhá na shell). Parametry tedy musí být oddělovány mezerami nebo tabulátory. program nebo dávka příkazů běží v jiném procesu než původní shell. Uživatel může dále komunikovat s původním shellem (úloha běží na pozadí) nebo s úlohou (běží-li na popředí). unx-predn_01-uvod.odt 25.02.2008 16:13:43 14

Druhy shellů jméno jméno syntaxe vlastnosti Bourne sh Algol 68 základní C csh C opakování příkazů (history) práce s úlohami (jobs) přejmenovávání příkazů (alias) typované proměnné (set) Toronto C tcsh jako csh rozšířené csh opakování příkazů šipkami Korn ksh rozšířené sh Bourne Again bash rozšířené sh Posix sh rozšířené sh doplňování jmen tabulátorem rozšíření přibližně jako tcsh (jiná syntaxe) na historii nefungují šipky velice podobné ksh na historii fungují šipky drobná rozšíření proti ksh unx-predn_01-uvod.odt 25.02.2008 16:13:43 15

Příkazová řádka <výzva> <přiřazení hodnoty proměnné> nebo <výzva> <volání příkazu> kde: <výzva> je vypsána shellem před interaktivním čtením příkazu (u dávky ne) standardně # nebo $, může být změněna nastavením proměnné PS1 u pokračovací řádky >, může být změněna nastavením proměnné PS2 unx-predn_01-uvod.odt 25.02.2008 16:13:43 16

Přiřazení hodnoty proměnné: <proměnná>=<hodnota> kde <proměnná> jméno proměnné je identifikátor mezi jménem proměnné a znakem= nesmí být mezera příkaz nastaví proměnnou na hodnotu <hodnota> <hodnota> standardně textový řetězec obsahuje-li mezery, je třeba jej uzavřít do uvozovek $ PS1="Zadej prikaz:" Zadej prikaz:aaa="aaa > bbb" Zadej prikaz: unx-predn_01-uvod.odt 25.02.2008 16:13:43 17

Formát příkazu <jméno_příkazu> <argumenty> kde: <jméno_příkazu> je obvykle krátké (2 až 8 znaků) u zabudovaného příkazu vždy pouze jméno u dávky nebo programu: jméno (proveditelný soubor tohoto jména je hledán v adresářích uvedených v proměnné PATH, ne v aktuálním adresáři) cesta k proveditelnému souboru <argumenty> obvykle nejprve přepínače (uvozené znakem -), pak jména souborů přepínače obvykle jednopísmenové, někdy se dají sdružovat, jindy se musí psát zvlášť unx-predn_01-uvod.odt 25.02.2008 16:13:43 18

$ ps -ealf $ sed -n -e /Jan/s/Honza/ -f sed.cmds někdy přepínač vyžaduje upřesňující parametr bezprostředně následující(případně oddělený mezerou) - viz předchozí příklad výjimečně některé programy vyžadují přepínače a potom v odpovídajícím pořadí upřesňující parametry $ ufsdump 0fb /dev/rmt/0 20 / $ ufsdump 0bf 20 /dev/rmt/0 / stejný přepínač může mít u různých příkazů různý význam, stejnou funkci u různých programů mohou mít různé přepínače $ rm -i $ ls -i $ cut -d: -f1 /etc/passwd $ sort -t: /etc/passwd unx-predn_01-uvod.odt 25.02.2008 16:13:43 19

příkaz zabudovaný externí binární externí skript příkaz jednoduchý Oddělovače příkazu složený (for, case,..., necháme na později) příkaz na popředí na pozadí (&) kolona příkazů ( ) seznam (kolon) příkazů (;, &, &&, ) unx-predn_01-uvod.odt 25.02.2008 16:13:43 20

Některé speciální znaky Znaky interpretované ovladačem terminálu (stty -a, man stty): ^S - pozastavení výstupu na obrazovku ^Q - uvolnění pozastaveného výstupu ^C - předčasné ukončení běžícího procesu ^D - konec vstupních dat ^Z - pozastavení běžícího procesu (ne u sh) unx-predn_01-uvod.odt 25.02.2008 16:13:43 21

date who clear echo pwd man Některé jednoduché příkazy unx-predn_01-uvod.odt 25.02.2008 16:13:43 22

Manuálové stránky jsou podrobné a (většinou) přesné a správné, vypisují se příkazem man popis používání příkazu man získáme příkazem man man Manuálové stránky jsou členěny do sekcí. Obsah sekce bývá popsán v každé sekci ve stránce Intro Členění do sekcí se může lišit. Na Solarisu je následující: sekce číslo obsahuje popisy 1 příkazy.a aplikační programy Většinou se dále dělí na podsekce, např. 1M (dříve 8) - administrativní příkazy, 1B - BSD příkazy 2 služby jádra a chybové kódy 3 knihovních podprogramy a funkce 4 formáty souborů 5 standardy 6 hry a dema 7 speciální soubory a síťová rozhraní 9 ovladače unx-predn_01-uvod.odt 25.02.2008 16:13:43 23

Výpis manuálu z určité sekce: man -s <sekce> <název> Příklad: $ man -s 2 mount Výpis popisu systémového volání služby mount: Neuvede-li se číslo sekce, vypíše se v pořadí první nalezená stránka popisující zadaný název Příklad: $ man mount Podle okolností výpis systémového volání mount ze sekce 2 nebo příkazu mount ze sekce 1M: Výpis manuálů ze všech sekcí: man -a <název> Příklad: $ man -a mount unx-predn_01-uvod.odt 25.02.2008 16:13:43 24

Název NAME SYNOPSIS Členění manuálové stránky (v Solarisu) Význam Jméno příkazu a stručný popis (jeden řádek) jeho funkce. Formát (syntaxe) příkazu. Nepovinné parametry jsou uvedeny v hranatých závorkách. Jsou-li za některým parametrem tři tečky (...), může se tento parametr vícekrátopakovat DESCRIPTION Detailní popis funkce. OPTIONS EXAMPLES FILES SEE ALSO Popis významu jednotlivých parametrů Příklady použití. Jména systémových souborů, které příkaz používá nebo ke kterým má nějaký vztah. Odkazy další manuálové stránky, mající nějaký vztah k této stránce. DIAGNOSTICS Popis významu chybových hlášení a návratových kódů. BUGS (NOTES) Popis neočekávaného chování. Například špatná (nebo žádná) reakce na chybové situace. unx-predn_01-uvod.odt 25.02.2008 16:13:43 25

Vyhledávání stránek podle klíčových slov nebo použitých souborů stránky se hledají v adresářích uvedených v proměnné MANPATH stránky jsou uloženy v nezformátovaném tvaru příkazem catman lze všechny stránky zformátovat a vytvořit databázi obsahu pak lze vyhledávat podle klíčových slov v záhlaví nebo použitých souborů $ man -k assembler as as (1) - assembler dis dis (1) - object code disassembler javap javap (1) - Java class file disassembler $ man -f /etc/passwd passwd passwd (1) - change login password and password attr passwd passwd (4) - password file $ unx-predn_01-uvod.odt 25.02.2008 16:13:43 26