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



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

Souborový systém (File System FS) Souborové systémy. Souborová fragmentace. Disková fragmentace. Organizace dat na pevném disku

Úvod do Linuxu SŠSI Tábor 1

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

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.

99 % všech desktopů na platformě MS Windows

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

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

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

Operační systém GNU/Linux

Operační systémy (OS)

IT ESS II. 1. Operating Systém Fundamentals

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

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

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

úvod Historie operačních systémů

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

GRAFICKÁ PROSTŘEDÍ GNU/LINUXU

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

VirtualBox desktopová virtualizace. Zdeněk Merta

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)

Srovnání Linuxu a BSD z pohledu jádra. Jan Dyrczyk


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

Osnova. Úkoly OS. BIOS (Basic Input-Output System) programy; kontrola nad přístupem k jednotlivým prostředkům hardwaru (procesoru, paměti,

Principy operačních systémů. Lekce 7: Souborový systém

Základy informatiky. 05 Operační systémy. Zpracoval: Pavel Děrgel Upravil: Daniela Szturcová

Computer Press Brno 2003

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

Operační systémy 1. Přednáška číslo Souborové systémy

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

LINUX A JEHO DISTRIBUCE

Alternativní operační systémy. Martin Drlík, Daniel Krotil OSY2A, ITV

Základy informatiky. 04 Operační systémy. Michal Kačmařík Upraveno dle materiálů od: Daniela Szturcová, Pavel Děrgel

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

Ú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. Tomáš Hudec.

O aplikaci Parallels Desktop 7 for Mac

Stručná instalační příručka SUSE Linux Enterprise Desktop 11

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

Linuxové distribuce. Michal Dočekal

09. Operační systémy PC 1. DOS. Nejdůležitější zástupci DOSu:

Software. RNDr. Krejčí Jan, Ph.D. 5. listopadu RNDr. Krejčí Jan, Ph.D. (UJEP) Software 5. listopadu / 6

Středisko UN*Xových technologií

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

Software. Mgr. Krejčí Jan (UJEP) Software 23. října / 6

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

Systém souborů (file system, FS)

Logická struktura pevného disku

Jak nasadit Windows 10 ve škole

Přednáška. Systémy souborů. FAT, NTFS, UFS, ZFS. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Systém souborů. Účel souborového systému. Organizace dat na disku

1. Jak pracuje počítač 3. Už víme, jak pracuje počítač, ale jak se pracuje s počítačem? 9

E.C.S. řada nová generace obrat o 360 ( Systém vyvinut ve Florencii v r.2009 )

USNESENÍ VLÁDY ČESKÉ REPUBLIKY č. 624/2001

Historie UNIXu a LINUXu - 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ů.

MS WINDOWS I. řada operačních systémů firmy Microsoft *1985 -? Historie. Práce ve Windows XP. Architektura. Instalace. Spouštění

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

Základy informatiky. 04 Operační systémy. Kačmařík/Szturcová/Děrgel/Rapant

Jak funguje GNU/Linux

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

Linux (nejen) v Low End routerech


Svět svobodného softwaru

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

Minimální požadavky na systém Linux a Windows na jednom disku Zrušení instalace Mandriva Linuxu... 23

Software programové vybavení. 1. část

Linux jako alternativní operační systém

Zpráva o plnění cílů projektu VISK3. WebArchiv - vytvoření podmínek pro zpřístupnění českých webových zdrojů

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

Výklad učiva: Co je to počítač?

Souborové systémy a logická struktura dat (principy, porovnání, příklady).

Linuxové distribuce. Michal Dočekal

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

INFORMAČNÍ TECHNOLOGIE

Linux historie a současnost

Opakování k maturitní zkoušce z informatických předmětů

INFORMAČNĚ TECHNOLOGICKÝ ZÁKLAD

Projekt implementace OS Linux do výuky informačních technologií

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ě

Michal Musílek,

O projektu OpenOffice.org a IBM OS/2 OS/2 a Open Source

Úvod Používané konvence Seznámení s Outlookem...17

B a k a l ářská práce

Porovnání instalací linuxových distribucí Fedora x Debian Administrace počítačových sítí (2010/2011)

Systémy souborů (File Systems)

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Vysoká škola ekonomická v Praze. Bakalářská práce Karel Koubek

Linuxová distribuce Debian

Karel Johanovský Petr Jelínek. Aneb, co všechno je potřeba

Před instalací 25 Minimální požadavky na systém Linux a Windows na jednom disku Zrušení instalace Mandriva Linuxu...

Souborové systémy Mgr. Josef Horálek

Popis licencování, nastavení a ovládání replikací - přenosů dat

Nasazení EIS JASU CS v rezortu Ministerstva zdravotnictví ČR vč. všech podřízených OSS

Operační systémy Rozdělení a popis. Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1124_Operační systémy Rozdělení a popis_pwp

Linuxové distribuce operačních systémů. Bc. Lukáš Uhlíř

2. přednáška pro začátečníky

Transkript:

V Š B T e c h n i c k á u n i v e r z i t a O s t r a v a Hornicko geologická fakulta Institut ekonomiky a systémů řízení O d d ě l e n í a u t o m a t i z a c e v h o r n i c t v í Učební texty pro předmět 545 0043/01 Operační systém Unix (OSUX) Tento text vypracoval kolektiv autorů Ostrava 2009

Předmluva Tento dokument vznikl, jako učební pomůcka pro předmět: 545 043/01 Operační systém Unix, který seznamuje posluchače s operačními systémy typu Unix / Linux a je převážně zaměřen na úplné začátky práce s tímto druhem operačních systémů. V tomto předmětu se studenti seznámí s některými druhy jednotlivých distribucí, avšak hlavní zaměření bude na distribuci, která je uváděna pod názvem Ubuntu. Tato distribuce operačního systému Linux, je podle některých dokumentů hlavně zaměřena, aby byla co nejvíce uživatelsky přívětivá. Dále budou posluchači seznámení se základy architektury, grafickým rozhranním, s druhy souborových systémů, apod. Vzhledem k velkému množství dokumentace o této i jiných distribucích operačního systému Unix / Linux, je tento dokument zaměřen pouze na některé vybrané kapitoly. Tyto kapitoly byly vybrány na základě nejčastějších dotazů studentů z minulých ročníků. Při psaní jakékoliv dokumentu je obtížné zvolit, jak detailně se věnovat jednotlivým tématům. Vzhledem k tomu, že tento předmět absolvují i studenti, kteří nemají s tímto operačním systémem žádnou zkušenost, může být velké množství detailních informací velmi matoucí a tím i demotivující. Z tohoto důvodu byl tento dokument vytvořen studenty. Každá kapitola byla vypracována jedním autorem (studentem nebo studentkou) a vyučujícím, který zasahoval do obsahové stránky jen minimálně. Tímto způsobem vznikla učební pomůcka, která snad bude srozumitelnější studentům, kteří začínají pracovat s tímto typem operačního systému. Na závěr je nutné učinit jedno upozornění a to, že tento text nenahrazuje přednášky. Naopak tento text může být doplňován výkladem na přednášce. Vyučující předmětu - 545 043/01 Operační systém Unix Ing. Michal Řepka, Ph.D. 2

Obsah 1. HISTORIE VZNIKU OPERAČNÍCH SYSTÉMŮ UNIX/LINUX... 5 1.1 SPECIFICKÁ FILOZOFIE UNIXOVÝCH SYSTÉMŮ... 5 1.2 FENOMÉN OPEN-SOURCE... 6 1.3 JAK VZNIKL Z UNIXU LINUX... 7 1.4 DĚLENÍ DISTRIBUCÍ... 8 1.4.1 Ubuntu... 10 1.4.2 Debian... 11 1.4.3 Fedora... 11 1.4.4 Gentoo Linux... 12 1.4.5 Mandriva Linuxu... 13 1.5 POUŽITÁ LITERATURA... 14 2. LICENCE PRO SVOBODNÝ A KOMERČNÍ SOFTWARE... 15 2.1 LICENCE PRO SVOBODNÝ SOFTWARE... 15 2.2 LICENCE PRO PROPRIETÁRNÍ SOFTWARE... 17 2.3 SHRNUTÍ... 18 2.4 POUŽITÁ LITERATURA... 18 3. SOUBOROVÉ SYSTÉMY POUŽITELNÉ V LINUXU... 19 3.1 SOUBOROVÝ SYSTÉM V OBECNÉ ROVINĚ... 19 3.2 POJEM SOUBOR V OS LINUX... 22 3.3 STRUKTURA ADRESÁŘŮ V LINUXU... 23 3.4 ŽURNALOVÁNÍ... 25 3.5 ODKLÁDACÍ PROSTOR LINUXU - SWAP... 26 3.6 EXT 2... 27 3.7 EXT 3... 27 3.8 FAT... 28 3.9 NTFS... 30 3.10 POROVNÁNÍ SOUBOROVÝCH SYSTÉMŮ... 32 3.11 ZÁVĚR... 32 3.12 POUŽITÁ LITERATURA... 33 4. UKÁZKY ADMINISTRACE OS LINUX... 34 4.1 PŘÍKAZOVÝ ŘÁDEK (SHELL)... 34 4.2 BASH (BOURNE AGAIN SHELL)... 35 4.2.1 Příklad k interpretu BASH... 35 4.3 ROURY A PŘESMĚROVÁNÍ... 35 4.3.1 Přesměrování vstupů a výstupů... 36 4.3.2 Roury... 36 4.4 NÁPOVĚDA V LINUXU... 37 4.5 PŘEHLED VŠECH SKUPIN:... 38 4.6 PŘÍKLADY PŘÍKAZŮ V SHELLU... 39 4.6.1 Práce s adresáři... 39 4.6.2 Vlastnictví souborů... 39 3

4.6.3 Přístupová práva... 40 4.7 UŽIVATELSKÉ ÚČTY A SKUPINY... 40 4.7.1 Přístupová práva... 41 4.7.2 Skupiny (groups)... 42 4.8 DÁVKOVÉ ZPRACOVÁNÍ ÚLOH... 42 4.9 POUŽITÁ LITERATURA... 43 5. FORMÁTY GRAFICKÝCH SOUBORŮ... 44 5.1 GRAFICKÉ FORMÁTY... 44 5.2 BITMAPOVÉ FORMÁTY... 45 5.2.1 JPEG... 47 5.2.2 PNG... 47 5.2.3 GIF... 47 5.2.4 BMP... 47 5.2.5 TIFF... 47 5.2.6 TGA... 48 5.3 VEKTOROVÉ FORMÁTY... 48 5.3.1 SVG... 49 5.3.2 CDR... 49 5.3.3 DXF... 49 5.4 STRUKTURA PNG... 49 5.4.1 Hlavička souboru PNG... 50 5.4.2 Tělo souboru PNG... 52 5.5 POUŽITÁ LITERATURA... 61 4

Historie vzniku operačních systémů Unix/Linux 1. kapitola 1. Historie vzniku operačních systémů Unix/Linux Autor: Petra Fuchsíková Pod slovem UNIX se skrývají slova UNiplexed Information and Computing. Jedná se o operační systém, podobně jako například MS Windows. V roce 1969 vnikl samotný operační systém UNIX, který již neexistuje. Největší rozdíly oproti jiným operačním systémům jsou: 1. Specifická filozofie 2. Fenomén Open-Source 1.1 Specifická filozofie UNIXových systémů Základem operačního systému je specifická architektura, která vychází z několika základních předpokladů: Architektura v UNIXu je předem definována, je veřejná a není utajována před veřejností [6]. Operační systém je architekturou rozdělen na části : na jádro - kernel a na to ostatní knihovny [7] (viz obrázek č.1). Rozdílné pojetí UNIXU je patrné v přístupu systému ke všemu (včetně HW zařízení), jakoby to byl soubor a pak s ním také pracuje jako se souborem. Velkou výhodou UNIXU je možnost uživatele si předělat to co mu nevyhovuje. Obr. č. 1 Základní popis UNIX architektury [6] 5

Historie vzniku operačních systémů Unix/Linux 1. kapitola Pro větší přehlednost architektury UNIXu přidávám ještě podrobnější obrázek: Obr.č. 2 Podrobná architektura UNIXu [6] 1.2 Fenomén Open-Source Software s otevřeným zdrojovým kódem. Otevřenost zde znamená jak technickou dostupnost kódu, tak legální dostupnost - licenci software, která umožňuje, při dodržení jistých 6

Historie vzniku operačních systémů Unix/Linux 1. kapitola podmínek, uživatelům zdrojový kód využívat, například prohlížet a upravovat. Tím jsou uživatelé schopni reagovat na změny a nové technologie. 1.3 Jak vznikl z UNIXu LINUX Linux se začal vyvíjet v roce 1991 jako jádro systému Unixového typu, které nakonec dostalo jméno Linux. Původně ho začal psát finský student helsinské univerzity Linus Torvalds jako svůj koníček. Torvalds vycházel z Minixu, což byl zjednodušený klon Unixu napsaný Andrewem Tanenbaumem pro účely výuky návrhu operačních systémů. Avšak Tanenbaum nikomu nedal svolení k úpravám svého systému, a tak Torvalds napsal vlastní náhradu Minixu. Linux začal jako emulátor terminálu napsaný v jazyce symbolických adres procesoru IA-32 a jazyce C, který byl pak zkompilován do binární podoby a nabootován z diskety, takže mohl běžet mimo původní operační systém. V terminálovém emulátoru běžela dvě vlákna: jedno pro odesílání znaků na sériový port a druhé pro příjem. Když pak Linus chtěl číst nebo zapisovat data na disk, rozšířil tento terminál, který uměl přepínat úlohy, o celý ovladač souborového systému. Poté se začal pomalu rozvíjet v celé jádro operačního systému určené pro systémy kompatibilní se standardem POSIX. První verze linuxového jádra (0.01) byla vydána na Internetu 17. září 1991, další následovala v říjnu téhož roku. Od té doby se na tomto projektu podílely tisíce vývojářů z celého světa. [8] Historie Unixu Historie unixu začíná v šedesátých letech minulého století v Bellových laboratořích (patřící pod společnost AT&T). V té době probíhá vývoj komplexního operačního systému Multics. Ale protože systém nesplňoval všechny požadavky, měl špatný výkon a také by byl velmi drahý, byl jeho vývoj zastaven. Ken Thompson, který byl z projektu odsunut, pracoval na hře Space Travel. Právě při jejím vývoji se začaly vytvářet základy unixu. Počítač, na němž pracovali, byl PDP-7 a měl velmi omezené systémové prostředky. Ona šetrnost je vidět dodnes v názvech jako cp, mv, etc, usr. V roce 1970 se ukázalo, že dosavadní PDP-7 je zastaralý, proto Ken Thomspon požádal o nákup nového PDP-11. Bellovy laboratoře projekt podpořily, protože zastavením vývoje Multics neexistoval žádný systém, který by mohly používat. Jelikož jsou příkazy jednoúčelové, je většinou nutné jich zkombinovat více. Řešením byla roura (pipe, v 7

Historie vzniku operačních systémů Unix/Linux 1. kapitola shellu se zadává pomocí), která elegantně přesměrovala výstup z prvního programu na vstup druhého. Tím byla vytvořena základní idea unixu: Program dělá pouze jednu věc, zato ji dělá perfektně. K dosažení cíle je nutné programy kombinovat. Univerzálním komunikačním prostředkem je text, který se čte ze standardního vstupu a posílá na standardní výstup. Původní verze byly napsány v assembleru, ale Ken Thompson toužil po vyšším programovacím jazyce. Jelikož žádný vhodný neexistoval, vytvořil Dennis Ritchie programovací jazyk C, do něhož byl kód následně přepsán. Vzhledem k tomu, že napsat kompilátor jazyka C je relativně snadné, bylo možné unix portovat na jiné počítače, což ostatní, v assembleru napsané systémy neuměly. V polovině sedmdesátých let se unix rozšířil v akademickém prostředí a na univerzitě v Berkeley vznikla distribuce BSD (Berkley Software Distribution) a spousta užitečného softwaru. Postupně došlo k rozštěpení na dvě hlavní větve, BSD a SystemV od AT&T. BSD byl časem uvolněn k volnému použití pod BSD licencí a dnes je z něj svobodný software a je základem systémů jako FreeBSD, OpenBSD, NetBSD, DragonFlyBSD, atd. V roce 1980 vznikla verze Xenix pro procesor intel 8086, za kterou stály firmy Microsoft a SCO (Santa Cruz Operation). Mezi další známé unixové systémy patří: Solaris od Sun Microsystems, HP-UX od Hewlett- Packard, AIX od IBM. 1.4 Dělení distribucí Operační systém Linux lze získat v tzv. distribucích - to je souhrn nejrůznějších aplikací sloužících k práci s počítačem. Níže je uveden seznam několika distribucí určených široké veřejnosti. Uvádím základní informace o nejznámějších distribucích pro desktop - nejedná se zdaleka o všechny. Seznam distribucí [9] Zde se dozvíte základní informace o nejznámějších (nejoblíbenějších) distribucích pro desktopové počítače. Nejedná se zdaleka o všechny! 8

Historie vzniku operačních systémů Unix/Linux 1. kapitola Ubuntu Tato distribuce vhodná pro začátečníky vychází z Debianu. Je volně dostupná, včetně možnosti bezplatného zaslání instalačních CD poštou. Ubuntu zajišťuje komunitní i profesionální podporu. Nové verze vychází dvakrát do roka. Kromě Ubuntu existuje ještě Kubuntu, které používá grafické uživatelské rozhraní KDE, nebo Xubuntu, které používá grafické uživatelské rozhraní Xfce na rozdíl od Ubuntu, které používá GNOME. Také existuje Edubuntu, které je zaměřeno na výuku. Debian Tato distribuce je jedna z nejstarších. Jejím zakladatelem je Ian Murdock. Distribuce je pojmenována po jeho ženě (Debra). Je to přísná open-source distribuce, která je vyvíjena dobrovolníky z celého světa. Debian nabízí on-line repozitář (server, kde jsou uloženy zdrojové kódy) softwarových balíků. Fedora Jedná se o distribuci, za kterou stojí (sponzoruje) Red Hat, protože je na tomto systému založena. Je to volná distribuce, která vzniká podobně jako Debian. Klade důraz na otevřenost a bezpečnost. Red Hat Červený klobouk. Jedna z nejstarších distribucí. Dnes velmi komerční, hlavně díky Red Hat Enterprise Linuxu. V Red Hatu vznikl balíčkovací systém RPM. Na desktopech se již moc nepoužívá. Spousta uživatelů přešla na distribuce založené na Red Hatu. Slackware Jedna z prvních distribucí, je spíše pro pokročilejší uživatele. Po instalaci se musí ukázat hodně zdatnosti, než se propracujete alespoň k X Window. Mandriva (dříve Mandrakelinux) Tato distribuce používá balíčkovací systém RPM. Mandriva je vhodná pro začátečníky, protože po snadné instalaci je připraven již plně funkční sytém. Gentoo Je zcela odlišný od ostatních distribucí. Instalace totiž neprobíhá formou binárních souborů, ale kompiluje se přímo na PC. Po dlouhé instalaci uživatel dostává optimalizovaný systém a software na svůj počítač. SUSE Původně samostatná distribuce, později koupena firmou Novell. Další distribuce vhodná pro začátečníky. Je možné si koupit krabicovou verzi, ale dá se stáhnout zdarma z internetu. 9

Historie vzniku operačních systémů Unix/Linux 1. kapitola 1.4.1 Ubuntu Ubuntu je poměrně ě mladá distribuce vyvíjená komunitou za podpory firmy Canonical. Ubuntu je ovšem postaveno na velmi spolehlivém základě již mnoho let vyvíjené distribuce Debian GNU/Linux. Zatímco Debian se snaží být distribucí značně univerzální, jasným cílem. Ubuntu je přiblížit Linux uživatelům pro použití na osobních počítačích jako tzv. desktopové prostředí. Grafické prostředí Ubuntu je založeno na Gnome, někteří lidé ale více preferují grafické prostředí KDE. Proto vznikla varianta Ubuntu zvaná Kubuntu. Odlehčená verze s Xfce neboli Xubuntu je vhodná např. pro starší počítače. a) Kubuntu Kubuntu je linuxová distribuce odvozená od Ubuntu. Rozdíl mezi těmito distribucemi je v grafickém prostředí (GUI), Ubuntu používá grafické rozhraní GNOME, zatímco Kubuntu používá KDE. Obě distribuce jsou user friendly a jsou určené jak pro začátečníky, tak pro zkušenější uživatele. V současnosti se podle mnoha žebříčků jedná o jedny z nejoblíbenějších a nejpoužívanějších linuxových distribucí. Oba operační systémy používají stejné repozitáře a oba používají stejný balíčkovací systém a to APT. Z Ubuntu je možno vytvořit Kubuntu prostým nainstalováním balíčku kubuntu- desktop, toto je výhodné pro uživatele, kteří chtějí používat grafické prostředí KDE, ale nechtějí přeinstalovat celý systém. b) Xubuntu Xubuntu je oficiální odnož linuxové distribuce Ubuntu. Je to open source operační systém, který jako desktopové prostředí používá Xfce. Xubuntu je určen pro uživatele s méně výkonným počítačem.. Obsahuje převážně GTK+ aplikace.xubuntu bylo pojmenováno Breezy 10

Historie vzniku operačních systémů Unix/Linux 1. kapitola Badger (verze 5.10 Ubuntu linie). Datum vydání první verze Xubuntu je 1. června 2006, stejně jako linie Ubuntu 6.06 (včetně Kubuntu a Edubuntu) s kódovým označením Dapper Drake. c) Edubuntu Edubuntu je verze linuxové distribuce Ubuntu, která se specializuje na školství. V Edubuntu je k dispozici Linux Terminal Server Project a mnoho výukových aplikací včetně GCompris, KDE Edutainment Suite a Schooltool Calendar. První vydání Edubuntu bylo 13. října 2005 v den vydání Ubuntu 5.10, který měl kódové označení Breezy Badger.. Edubuntu CD se mohou zdarma objednat nebo stáhnout na Shipit (Shipit - http://cs.wikipedia.org/wiki/edubuntu). Na vývoji Edubuntu spolupracují učitelé a technici z mnoha zemí. Edubuntu je postaveno na základě Ubuntu a začleňuje architekturu klienta LTSP a také výukové aplikace, které jsou zaměřeny na věkovou kategorii 6 18 let. 1.4.2 Debian Debian je svobodný operační systém (OS) určený k provozu na mnoha různých typech počítačů. Operační systém se skládá ze základního programového vybavení a dalších nástrojů, kterých je k provozu počítače třeba. Vlastním základem OS je jádro. Jelikož Debian používá jádro Linux a většina základních systémových programů ů byla vytvořena v rámci projektu GNU, nese systém označení GNU/Linux. Debian GNU/Linux je však více než jen samotný operační systém. Obsahuje přes 18733 balíčků s (předkompilovanými) programy a dokumentací, připravených pro snadnou instalaci. 1.4.3 Fedora Fedora je kompletní operační systém Linux (tzv. distribuce), která vznikla jako nekomerční odnož Red Hat Linuxu. Vyvíjí ho komunita vývojářů za podpory firmy Red Hat. Na základě Fedory pak Red Hat připravuje své komerční distribuce Red Hat Enterprise 11

Historie vzniku operačních systémů Unix/Linux 1. kapitola Linux. Fedora je známa svou pokrokovostí a zpravidla přináší v každé verzi několik zásadních novinek. Distribuce je značně univerzální, se znatelným zaměřením na použití na osobních počítačích. Základní charakteristika distribuce - Univerzálně použitelná Linuxová distribuce vhodná i pro začínající uživatele - Dostupná zdarma pro všechny hlavní platformy - x86 (PC), x86_64 (AMD64), PowerPC (Mac) - Kvalitní integrovaná desktopová prostředí Gnome, KDE, Xfce - Množství volně dostupných aplikací přímo v distribuci - včetně OpenOffice.org a vývojového prostředí Eclipse - 3D efekty a průhlednost grafického rozhranní - NTFS, WIFI, práce několik uživatelů naráz a jejich rychlé přepínání - distribuce soustředící se na nové a vývojové technologie 1.4.4 Gentoo Linux Gentoo je distribuce operačního systému Linux vyvíjená, podobně jako Debian, komunitou. Je ovšem na rozdíl od ostatních založena na zdrojových kódech, takže si každý přeloží svůj unikátní systém dle svých požadavků. Překládání ale není nutností. Zakladatel Daniel Robbins. Obsahuje systém balíčků zvaný Portage, který řeší závislosti a předání parametrů pro překlad, takže instalaci a správu systému zvládne i poučený začátečník. Výhody a nevýhody Gentoo: Výhody: maximální možnost nastavení jednotlivých aplikací a součástí, přehledná konfigurace systému, optimalizace pro konkrétní hardware, časté aktualizace. Nevýhody: náročnost na výpočetní výkon v průběhu instalace nebo aktualizace systému a aplikací, délka kompilace, pokud se nevyužívají předkompilované balíky. 12

Historie vzniku operačních systémů Unix/Linux 1. kapitola 1.4.5 Mandriva Linuxu Mandriva Linux (dříve Mandrake Linux) je kompletní operační systém vybavený stovkami aplikací pro každodenní použití. Jednou z jeho hlavních výhod je velmi rychlá instalace a snadné základní nastavení. Právě díky této uživatelské přívětivosti patří mezi nejoblíbenější linuxové distribuce na světě. A nejen ve světě. V České a Slovenské republice patří podle průzkumů mezi nejpoužívanější a nejoblíbenější distribuce a již několik let je zde s velkým náskokem neprodávanějším Linuxem. Výhody Mandriva Linuxu Proč je Mandriva Linux tak oblíben u českých a slovenských uživatelů? Důvodů bude zřejmě více, jmenujme alespoň některé z nich: Snadná instalace a obsluha - většinu vlastností počítače lze velmi rychle nastavit v Ovládacím Centru. Konfigurační nástroje jsou k dispozici v grafickém režimu, jsou přehledné a intuitivní. Instalace celého systému je jednoduchá a s kompletním softwarovým vybavením jde o záležitost na pár desítek minut. Kvalitní české produkty - produkty Mandriva Linux jsou vyráběny v České republice a reflektují potřeby českých a slovenských uživatelů. Obsahují kvaliní a oceňovanou dokumentaci v podobě několika knih, které vás provedou instalací a nastavením systému nebo ovládáním linuxových programů. Množství softwaru - produkty Mandriva Linux obsahují několik CD a DVD, které jsou plné softwaru. Vše máte po ruce vždy, když to potřebujete. Download edice poskytovaná na FTP serverech jsou tři CD nebo jedno DVD plné softwaru. Pokud k tomu připočítáte další zdroje aplikací, dostanete obrovské množství aplikací, které je k dispozici v podstatě zdarma. Inteligentní správa softwaru (balíčků). Mandriva používá systém balíčků rpm ale pomocí svých nadstaveb řeší nejčastější problém při instalaci: závislosti na jiných balíčcích. Také aktualizace balíčků (např. opravy) je při nastavených zdrojích až neskutečně jednoduchá. Jedním příkazem nebo několika kliknutími máte rázem stáhnuty a nainstalovány všechny dostupné opravy pro Váš systém. 13

Historie vzniku operačních systémů Unix/Linux 1. kapitola Podpora je silná především ze strany linuxové komunity. Mandriva provozuje pro své uživatele několik serverů, kde se mohou ptát (mohou i odpovídat, pokud vědí) Na těchto serverech najdete i spousty dokumentace zajímavostí od ostatních uživatelů. Naším záměrem je poskytnout pro česky hovořící uživatele adekvátní místo - tento server. 1.5 Použitá literatura [1] Lasser, Jon. Rozumíme UNIXu.1.vyd. Praha: Computer Press, 2002. 252s. 80-7226-706-X. [2] Raymond, Eric S. Umění programování v UNIXu. 1. vyd. Brno: Computer Press, 2004. 509 s. 80-251-0225-4. [3] http://cs.wikipedia.org/wiki/seznam_distribuc%c3%ad_linuxu [4] http://www.linux.cz/ [5] http://beta.dvojmo.cz/vody-unixu-slovo-uvodem-dil-1/ [6] http://autnt.fme.vutbr.cz/szz/2006/bp_mestan.pdf [7] http://beta.dvojmo.cz/vody-unixu-slovo-uvodem-dil-1/ [8] http://cs.wikipedia.org/wiki/linux [9] http://cs.wikipedia.org/wiki/linuxov%c3%a1_distribuce 14

Licence pro svobodný a komerční software 2. kapitola 2. Licence pro svobodný a komerční software Autor: Václav Hulva Softwarové licence umožňují používání softwaru na základě Licenční smlouvy ujednaní, které upravuje vztah mezi poskytovatelem licence a jejím nabyvatelem. Většina softwarových licencí je tvořena autory softwaru, kteří určují podmínky pro užívání nabytí licence, ale existuje sada ochranných licencí, které můžeme rozdělit do dvou skupin. Na licence pro svobodný software a proprietární software. Operační systémy typu Unix/Linux, obvykle patří do kategorie svobodného software. Avšak některé distribuce (verze) těchto operačních systémů lze nalézt také v kategorii proprietárního software. 2.1 Licence pro svobodný software Hlavní licence, která spadá do licencí pro svobodný software je GNU licence. Ta vznikla při GNU projektu ( Projekt GNU je projekt zaměřený na svobodný software, inspirovaný operačními systémy unixového typu. Původní cíl byl vyvinout operační systém se svobodnou licencí, který však neobsahuje žádný kód původního UNIXu. Jeho jméno je rekurzivní zkratka pro GNU's Not Unix (GNU Není Unix). ) Postupem času došlo k úpravám a vznikly jejich modifikace. GNU General Public License Zkráceně GPL,,Všeobecná veřejná licence'' je licence, která podporuje zásady a vlastnosti svobodného software a to zejména svobodné nakládání se softwarem a rovnocenné zveřejnění binárních kódů i jejich zdrojových kódů. GPL nepožaduje, aby byla pozměněná verze zveřejněna. Můžete provést nějakou změnu a používat takový program soukromě, bez toho, abyste jej zveřejňovali. To se vztahuje i na organizace (včetně společností). Organizace může vytvořit modifikovanou verzi a interně jí používat bez toho, aby jí zveřejnila mimo tuto organizaci. Ale pokud modifikovanou verzi nějakým způsobem zveřejníte, GPL vám ukládá povinnost zveřejnit i zdrojový kód této modifikované verze a to pod GPL. GPL vám tedy dává povolení zveřejnit modifikovaný 15

Licence pro svobodný a komerční software 2. kapitola program určitým způsobem a ne jiným, ale rozhodnutí, zda jej vůbec zveřejnit, je na vás. (citace z www.gnu.org) GPL licence také zaručuje trvání i po dalším šíření softwaru tudíž přechod práv a povinností na třetí osobu. Viz modifikované verze, které distribuujete, musí být licencovány všem třetím stranám pod GPL. Znamená to pouze, že od vás mají licenci na tuto vaši verzi pod GPL. (citace z www.gnu.org) Svobodný software neznamená, že vlastní výtvor musíme distribuovat zdarma, GPL dává každému právo prodávat kopie. Toto je součástí definice svobodného software. Viz Za distribuci kopie programu si můžete zvolit poplatek, jaký chcete. Jestli poskytujete ke stažení binární verzi, musíte zajistit stejný přístup'' i ke zdrojovým kódům. To znamená, že poplatek za stažení zdrojových kódů nesmí být vyšší než poplatek za stažení binární verze. (citace z www.gnu.org) GNU Lesser General Public Licence Byla navržena pro vyplnění mezery pro svobodný software v silně copyleftovou licenci GNU General Public License (GPL) a permisivními (svobodnějšími) licencemi, jako jsou BSD licence nebo MIT Licence. Dá se tedy říct že LGPL je odvozen z GPL. Jednoduše je jeho okleštěnější verzí. LGPL aplikuje copyleftové restrikce na program samotný, neuplatňuje je však na jiný software, který tento program linkuje. Existují však určité další restrikce na tento software. Odlišnosti od GPL Hlavním rozdílem mezi GPL a LGPL je, že dílo pod LGPL lze linkovat (v případě knihovny "užívat") programem, která nemá licenci (L)GPL, a který může být svobodný software nebo software proprietární. Tento program (který není pod (L)GPL) lze šířit pod libovolnými licenčními podmínkami, pokud nejde o odvozené dílo. Program, který neobsahuje žádnou část odvozenou od kterékoli části knihovny, ale je navržen tak, aby s knihovnou pracoval zkompilováním nebo slinkováním s ní, se nazývá jako "dílo, které používá knihovnu". Takové dílo, izolované, není odvozeným dílem knihovny a proto spadá mimo působnost této licence. V zásadě musí být možné linkovat software s novější verzí programu pod LGPL. Nejčastěji používanou metodou, jak to udělat, je použít "vhodný mechanismus pro linkování sdílené 16

Licence pro svobodný a komerční software 2. kapitola knihovny". Alternativně je povoleno použít staticky linkovanou knihovnu, pokud se poskytne buď zdrojový kód nebo linkovatelné objektové soubory. Jednou z vlastností LGPL je, že kdokoli může kteroukoli část softwaru šířeného pod LGPL převést pod licenci GPL. To je užitečné pro přímé použití kódu pod licencí LGPL v knihovnách nebo aplikacích, které mají licenci GPL, nebo pokud někdo chce vytvořit verzi s tímto kódem, kterou nebude možné používat v proprietárních produktech. (citace z www.wikipedia.cz) Jelikož LGPL smlouva je takto volná může nastat situace, že někdo začne prodávat váš produkt, který poskytujete zdarma a za splnění podmínek tak bude činit legálně. 2.2 Licence pro proprietární software V tomto případě se jedná většinou o komerční software a proto se tyto dva výrazy často zaměňují. Nejpoužívanější licencí ve světě proprietárního software je tzv. EULA (End-User- License-Agreement) což v překladu znamená licence pro koncového uživatele. Tato licence určuje podmínky, za kterých bude licence udělena a hovoří se o zákazu editace a šíření tohoto software. EULA licence umožňuji striktně vymezit práva a povinnosti nabyvatele, který s nimi před instalací musí souhlasit. K softwarům získaným pod EULA nemá uživatel většinou přístup k zdrojovým kódům. Tento software se nesmí nijak upravovat a získaná licence se nemůže použít ke komerčním účelům, což je logické vzhledem k omezením. Mezi typické omezení patří - omezení v počtu instalací (zpravidla 1 PC) - omezení v počtu procesorů na PC (zpravidla 1-2) - omezení v možnosti přenést licenci na jiný počítač EULA dává v některých případech možnost změny licence v čase. Zejména u produktů, které vyžadují aktualizace, bez kterých se uživatel neobejde (např. operační systém). Eventuelní změna licence může být přibalená k bezpečnostní aktualizaci. V ujednání může být určen i operační systém, na kterém může být proprietární software používán. Často také bývá 17

Licence pro svobodný a komerční software 2. kapitola také klauzule o omezení a odškodného kdy se prodávající de facto zříká škod způsobené užíváním softwaru. 2.3 Shrnutí Ještě bych uvedl názor, který jsem si k těmto licencím udělal a to takový že v případě GNU, jde o licenci, která se řídí pravidlem, že co není výslovně zakázáno je povoleno. Tudíž dává značnou svobodu nabyvateli licence a tím plně podporuje ideologii svobodného softwaru. EULA se naopak přikloňuje k tomu, že co není povoleno, je automaticky zakázáno. Je pak zřejmé, že se jedná o programy komerčního rázu. 2.4 Použitá literatura www.gnu.org www.wikipedia.com 18

Souborové systémy použitelné v Linuxu 3. kapitola 3. Souborové systémy použitelné v Linuxu Autor: Filip Beneš Tuto práci jsem zaměřil v prvé řadě na vysvětlení pojmu souborový systém v obecné rovině a důvodů proč ho používáme. Dále jsem popsal souborové systémy používané v OS Linux, rozdíly mezi jednotlivými souborovými systémy a na vysvětlení jejich specifik, výhod a nevýhod. 3.1 Souborový systém v obecné rovině Dříve než začnu popisovat jednotlivé typy souborových systémů, tak jak mi velí název práce, pokusím se vás seznámit se základními pojmy týkající se této problematiky. V duchu naší doktríny o systémovém myšlení se pokusím vysvětlit je na té nejobecnější úrovni a postupně je konkretizovat. Soubor Pod pojmem soubor budeme v našem případě uvažovat pojmenovanou uspořádanou množinu dat uloženou na nějakém datovém médiu (viz např. pevný disk, disketa, DVD, Flash disk atd..). Typ souboru se v různých operačních systémech zjišťuje různým způsobem: (či kombinací způsobů) pomocí přípony názvu souboru (např..exe v Microsoft Windows) pomocí atributu souboru (např. atribut executable v Linuxu) pomocí obsahu souboru (první byty souboru obsahují jednoznačný identifikátor) Systém Účelově definované množina prvků a vazeb, které vykazuje určité cílové chování. Souborový systém Jak jsme si již řekli soubory jsou uloženy na nějakém datovém médiu. Nejsou tam ovšem naházeny jen tak náhodně, ale podle pevného řádu. Zmíněnému řádu se říká souborový systém a jak je v počítačovém světě zvykem, existuje jich celá řada s různými jmény a specifiky. Systém by měl podle definice vykazovat určité cílové chování, asi tím nejobecnějším cílem 19

Souborové systémy použitelné v Linuxu 3. kapitola Souborového systému je vnést řád a pevné pravidla do správy a organizace souborů na datovém médiu. Informace uložené v souborovém systému můžeme rozdělit na metadata a data. Toto rozdělení bude blízké našemu oboru, protože krkolomnou definici metadat dobře známe (jedná se o strukturovaná data popisující data) Metadata popisují strukturu systému souborů a nesou další služební a doplňující informace, jako je velikost souboru, čas poslední změny souboru, čas posledního přístupu k souboru, vlastník souboru, oprávnění v systému souborů, seznam bloků dat, které tvoří vlastní soubor atd. Metadata (atributy) souborů, která jsou nečastěji uchovávaná: jméno - jedinečný název souboru velikost - okamžitá velikost typ - informace pro OS, určuje jak zacházet s obsahem umístění ochrana - kdo smí jak nakládat se souborem vlastník - uživatel/skupina vlastnící soubor časové informace o o o čas vytvoření poslední přístup k souboru poslední modifikace souboru Pojmem data pak míním vlastní obsah souboru, který můžeme přečíst, když soubor otevřeme. Obecná struktura uspořádaní dat Na obecné úrovni můžeme říci, že soubory se v souborovém systému ukládají do stromové struktury, která je tvořena soubory a adresáři. Adresář má schopnost v sobě obsahovat další adresáře a také soubory. Ukázka viz Obr.1 20

Souborové systémy použitelné v Linuxu 3. kapitola Obr1. Ukázka stromové struktury organizace dat v souborovém systému Geneze souborových systémů Většina souborových systémů vznikla současně s vývojem nějakého operačního systému, jiné jsou standardem pro zápis na určité speciální médium (např. souborový systém ISO 9660 určený pro CD a DVD). DOS například podporuje systémy FAT, po instalaci CD/DVD driveru také ISO 9660. V operačním systému Windows nalezneme navíc podporu i pro souborové systémy NTFS. V Linuxu nalezneme kromě již zmíněných také ext2, ext3, ReiserFS, JFS, XFS a mnoho dalších. A například pro operační systém SOLARIS je typické používat především UFS a ZFS. Poznámka: Pokud Vás překapuje, že většina názvu souborových systémů obsahuje písmenka FS, vězte že tato skutečnost odvozena jest od anglického File System. Více Souborových systému na jednom disku? Pevné disky jsou obvykle logicky rozděleny na oddíly (partition), souborový systém se rozkládá jen na konkrétním oddílu a ne na celém disku. To umožňuje mít na pevném disku více nezávislých souborových systémů, které mohou být různého typu. 21

Souborové systémy použitelné v Linuxu 3. kapitola Zde bych ukončil povídání o Souborových systémech v obecné rovině a soustředil se na specifika souborových systémů v Linuxovém prostředí. 3.2 Pojem Soubor v OS Linux Asi nejdůležitější informace v linuxovém pojetí souborových systémů je věta: V Linuxovém systému je všechno soubor. Pokud něco není soubor je to proces. Teď se logicky nabízí otázka co je v tom případě adresář? Odpověď je jednoduchá Linux nerozlišuje mezi souborem a adresářem. Adresář je totiž pouze soubor, který obsahuje názvy jiných souborů. Programy, služby, texty, obrázky a podobně, všechno je uloženo jako soubory. I vstupní a výstupní zařízení, obecně jakékoli zařízení, systém chápe jako soubory. Většina souborů je podobna souborům, které známe např. z OS Windows. Jsou to tedy takové které obsahují textová data, obrázky, spustitelné soubory, atd. Krom těchto však v linuxu existují další typy souboru a jsou to: Adresáře: Soubory, které obsahují seznam jiných souborů. Speciální soubory: Představují I/O zařízení a jsou soustředěny v adresáři/dev. Odkazy: Mechanismus umožňující zpřístupnit soubor či adresář na více místech souborového stromu. Sockety a pojmenované roury: Speciální typ souborů, sloužící jako prostředek komunikace mezi procesy. Nyní si ukážeme identifikaci typu souboru použitím příkazu ls s přepínačem l. Pomocí tohoto příkazu jsem ukázal obsah adresáře documents. Zaměřme se na poslední tři řádky, reprezentují výpis tří souborů. Jejich první značka nám říká o jaký soubor se jedná. filip:~/documents> ls-l total 3 - rw -rw-r - - 1 filip filip 31744 Feb 21 17:56 intro linux.doc - rw -rw-r - - 1 filip filip 31744 Feb 21 17:56 linux.doc drwxrwxr - x 2 filip filip 4096 Feb 25 11:50 course 22

Souborové systémy použitelné v Linuxu 3. kapitola Znak Význam - Normální soubor d Adresář l Odkaz c Znakové zařízení (speciální soubor) s Socket p Pojmenovaná roura b Blokové zařízení (speciální soubor) Tab 1. Identifikace souboru podle prvního písmena ve výpisu ls-l 3.3 Struktura adresářů v Linuxu Nerad bych se na tomto místě dotkl případných čtenářů, ale pokud jste jako já odkojeni na OS Windows možná Vás v Linuxu překvapí absence písmenek, reprezentujících kořenové adresáře jednotlivých disků a přídavných zařízení. V Linuxu existuje prostě jeden kořenový adresář, ze kterého dále vyrůstá vlastní struktura vnořených adresářů - adresářový strom. Tento adresář se nazývá root a značí se pomocí /. Veškeré další oddíly a disky (floppy, cdrom, síťové disky...) se připojují do nějakého adresáře v této struktuře. (příkaz mount). Ačkoli napříč rozličnými distribucemi systému Linux mohou nastat v tomto pravidlu drobné odchylky, existují určité konvence pro rozvržení adresářů a souborů v rámci Souborového systému (např. umístění globálních konfigurací do adresáře "/etc", dočasných souborů" do "/tmp" apod.). Na takovéto uspořádání se můžeme podívat na obrázku 2. 23

Souborové systémy použitelné v Linuxu 3. kapitola Obr. 2 Hierarchie souborového systému v OS Linux Popis jednotlivých adresářů naleznete v příloze číslo 1. Cesty Cesta je adresářová hierarchie, kterou je nutno projít pro nalezení daného souboru. Může být specifikována vzhledem k počátku adresářového stromu (tedy od kořenového adresáře). V takovém případě cesta začíná lomítkem / a říká se jí absolutní cesta. Cesty, které lomítkem nezačínají se jmenují relativní cesty. Existují speciální označení pro aktuální adresář a adresář nadřazený. Aktuální adresář se označuje jednou tečkou, nadřazený dvěma tečkami. Rozdíl mezi těmito cestami si ukážeme na příkladu. Máme-li tedy soubor test, jenž je uložen na tomto místě /home/jumper/bin/wc/test tento zápis se nazývá absolutní cesta. Relativní cesta k souboru test například z adresáře bin bude znít./wc/test. 24

Souborové systémy použitelné v Linuxu 3. kapitola Absolutní cesta: /home/jumper/bin/wc/test Relativní cesta:./wc/test Zásady pro pojmenování souborů a adresářů v Linuxu Tyto zásady berte prosím jako orientační, jak se dozvíme později existují v Linuxu třeba souborové systémy pro které neplatí zásada číslo 1 přesně v tomto znění. Ovšem pro lepší kompatibilitu se doporučuje tyto zásady dodržovat. 1. Název souboru smí obsahovat písmena, čísla a některé další znaky. Vyvarujte se však různých speciálních znaků jako * / znaku NULL (binární nula). 2. Rozlišují se velká a malá písmena. Názvy Soubor a soubor označují dva různé soubory. 3. Jména smí být velice dlouhá: (maximálně je to 256 znaků) 4. V Linuxu se typy souborů obecně nerozlišují podle přípon jako ve Windows. Jméno souboru proto nemusí příponu vůbec obsahovat, nebo jich naopak může mít několik. Standardně se zachovávají přípony u různých dat jako obrázky či filmy (obrazek.jpg, film.avi. Dvě přípony mívají například komprimované soubory (typicky.tar.gz). 5. Existují tzv. skryté soubory a adresáře, které se nezobrazí při normálním výpisu obsahu adresáře. Jejich název začíná vždy tečkou. Soubory začínající tečkou "." jsou skryté a nevidíme je, pokud si je extra nevyžádáme (přepínač "-a" u přikazu ls ap.) 3.4 Žurnalování Jeden z rozdílů mezi jednotlivými Souborovými systémy je i podpora Žurnalování. Vysvětlíme si proto co to znamená. Jak již bylo řečeno souborové systémy jsou velmi komplexními datovými strukturami. Při změně v souborech nebo adresářích je nutné vykonat řadu jednotlivých operací. 25

Souborové systémy použitelné v Linuxu 3. kapitola Pokud se však stane, že během vykonávání těchto operací například vypneme počítač, může dojít k tomu, že data na disku ztratí integritu (jsou narušeny vazby, které data spojují ve smysluplný celek). Uvedení dat do opětovné integrity znamená naplánovanou transakci dokončit nebo se vrátit k původnímu stavu před započetím transakce. Žurnálování umožňuje velmi rychle a bezpečně uvést souborový systém do konzistentního stavu. Souborové systémy, které žurnálování nepodporují, je nutné kompletně zkontrolovat speciálním programem (např. scandisk, fsck), což je časově velmi náročná operace a může to navíc způsobit ztrátu dostupnosti dat, které nebyly havárií postiženy přímo. Princip žurnálu Žurnál je pro ochranu prováděné transakce využíván následujícím způsobem: 1. do žurnálu je zapsáno, co a kde se bude měnit 2. je provedena vlastní série změn 3. do žurnálu je zapsáno, že operace byla úspěšně dokončena 4. záznam v žurnálu je zrušen Pokud dojde v kterémkoliv okamžiku k přerušení, je možné pomocí dat uvedených v žurnálu uvést systém souborů do konzistentního stavu buď návratem zpět ke stavu před započetím transakce nebo dokončením přerušené transakce. 3.5 Odkládací prostor Linuxu - SWAP Nedávno jsem měl možnost na vlastní kůži zakusit instalaci Linuxu. Vybral jsem si jeho distribuci FEDORA s jádrem 9. Hned na počátku samotné instalace mě překvapil první zásadní rozdíl při rozdělování oddílu disku. Termín SWAP asi znáte jako uživatelé Windows pod názvem virtuální paměť. Je to určitý prostor na disku (většinou na stejném oddílu jako instalace Windows), který operační systém využívá podobným způsobem jako paměť RAM. V Linuxu (alespoň ve verzi kterou jsem instaloval) má však tato paměť vlastní diskový oddíl, který je vyhrazen přímo pro ni. Uvádím ho tady protože při rozdělování oddílů mě instalátor nenechal pokračovat v instalaci dokud jsem jeden oddíl nevyhradil právě pro SWAP. Moudrá kniha Linux dokumentační projekt, ze které jsem načerpal mnoho informací říká, že výhodné je 26

Souborové systémy použitelné v Linuxu 3. kapitola nastavovat velikost tohoto odkládacího prostoru na dvojnásobek paměti RAM daného počítače. Čili pokud máte např. 2GB paměti RAM, nastavte si SWAP disk na 4GB [1]. 3.6 EXT 2 Ext2 je souborový systém užívaný v Linuxu. Je to nástupce systému ext, jež byl první souborový systém vytvořený speciálně pro operační systém Linux. Umožňuje nastavit práva UGO (uživatele, skupiny, ostatních) Název souboru na ext2 může obsahovat libovolné znaky kromě znaku NULL a lomítka. Systém ext2 neobsahuje speciální podporu pro národní znakové sady, ale není problém na něj ukládat soubory v ISO-8859-2 nebo UTF-8 (použití UTF-16 není možné). Maximální délka jména souboru je 255 bytů (dle specifikace rozšiřitelná až na 1012 bytů). Maximální délka souboru jako takového je 2 64 bytů. (To je teoretický horní strop daný přímo souborovým systémem. V závislosti na použitém programovém vybavení může být nižší, na 32bitových systémech může být velikost souboru omezena na 2 31 bytů.) 3.7 EXT 3 Ext3 je v podstatě nástupce systému Ext2 a je implicitním souborovým systémem mnoha populárních Linuxových distribucí. (čili instalujete Linux, pravděpodobně Vám bude nabídnut jako první možnost při výběru souborového systému na daném diskovém oddíle). Souborový systém ext3 nabízí oproti svému předchůdci ext2: žurnálování (informace o dokončených operacích) možnost změnit velikost souborového systému za běhu V Linuxové implementaci ext3 jsou dostupné tři způsoby žurnálování: žurnál - metadata i obsah souborů se ukládají do žurnálu a teprve poté jsou zapsány na disk. Nejspolehlivější, ale zároveň nejpomalejší metoda, protože jsou data zapisována dvakrát. 27

Souborové systémy použitelné v Linuxu 3. kapitola writeback - metadata se žurnálují, ale obsah souborů ne. Toto je nejrychlejší způsob, ale přináší riziko, že při pádu budou data zapsána tam, kam nemají. Při dalším mountu se tedy může stát, že k souborům, se kterými systém v tu chvíli pracoval, budou na konec zapsány různé nesmysly. ordered - podobné jako writeback, s tím rozdílem, že si vynucuje zapsání souboru, než jej v metadatech označí jako zapsaná. Tento způsob je dobrým kompromisem mezi výkonem a stabilitou, a z toho důvodu je použit jako výchozí. 3.8 FAT FAT je jednoduchý souborový systém, proto je podporován prakticky všemi operačními systémy. Mezi FAT souborové systémy patří FAT12, FAT16, a FAT32. Mezi nimi nenajdeme zásadní odlišnosti liší se pouze v několika aspektech (velikostí záznamů v tabulce FAT, umístěním kořenového adresáře). Systém FAT12 je již celkem nezajímavý, protože jej využívaly diskety (nelze s ním formátovat média s velkou kapacitou). FAT16 se používá na USB flash discích, pokud jejich kapacita nepřesahuje řádově několik GB. FAT32 na pevných discích do velikosti 32 GB. Struktura Boot sektor (VBR, spouštěcí záznam svazku) První sektor logické oblasti disku obsahující souborový systém FAT se skládá ze dvou částí: blok parametrů disku a spouštěcí kód svazku. Blok parametrů disku Obsahuje specifické informace o svazku jako např. verze, počet sektorů na cluster, počet rezervovaných sektorů před první FAT, počet FAT, počet sektorů kořenového adresáře, celkový počet sektorů na disku, počet sektorů v jedné FAT, název svazku (volume label). 28

Souborové systémy použitelné v Linuxu 3. kapitola Spouštěcí kód svazku Program, který zahájí proces spouštění operačního systému. Alokační tabulka souborů (FAT) Tato tabulka popisuje přiřazení každého clusteru v oddílu (1 záznam odpovídá 1 clusteru). Obvykle existují 2 kopie (obě jsou uloženy bezprostředně za sebou) ta druhá je použita v momentě, kdy první se stane nečitelnou. Přiřazení clusteru může nabývat různých specifických hodnot jako např. volný (0x0000), vadný (0xFFFE), cluster indikující konec souboru (0xFFFF), nebo obsahuje číslo následujícího clusteru souboru. Kořenový adresář V původní verzi obsahoval jednoduchou databázi obsahující veškeré informace o všech souborech, které jsou známé operačnímu systému, v příslušném oddílu. Se zavedením podadresářů (tedy dalších adresářů kromě tohoto) se stal kořenem stromové hiearchie adresářů: záznam o podadresáři v něm uložený neobsahuje žádné informace o souborech uložených v tomto podadresáři, pouze informace o podadresáři. U FAT12 a FAT16 byla jeho velikost stanovena napevno při vytváření souborového systému, od verze FAT32 může být uložen kdekoliv a jeho velikost může libovolně narůstat. Nedostatky FAT Fragmentace Ztracené clustery (pokud jsou ve FAT tabulce clustery označené jako používané avšak k žádnému souboru nejsou přiřazeny) Překřížené soubory (pokud ve FAT tabulce jsou pro 2 nebo více souborů vyhrazeny clustery se stejným číslem) Poškozená FAT (pokud je souboru přiřazen blok několika clusterů, avšak ukazatel v některém z těchto clusterů ukazuje za konec disku nebo partice) Neumí žurnálování 29

Souborové systémy použitelné v Linuxu 3. kapitola 3.9 NTFS NTFS (New Technology File System) je moderní souborový systém vyvinutý společnostmi IBM a Microsoft, který jej poprvé zavedl ve svém operačním systému Windows NT. Vlastnosti NTFS byl navržen jako nativní souborový systém pro Windows NT a (zejména oproti zastaralému filesystému FAT) obsahoval spoustu novinek: žurnálování všechny zápisy na disk se zároveň zaznamenávají do speciálního souboru, tzv. žurnálu. Pokud uprostřed zápisu systém havaruje, je následně možné podle záznamů všechny rozpracované operace dokončit nebo anulovat a tím systém souborů opět uvést do konzistentního stavu. access control list podpora pro přidělování práv k souborům kompresi na úrovni souborového systému šifrování (EFS - Encrypting File System) umožňuje chránit data uživatele na úrovni souborového systému a je transparentní. diskové kvóty umožňují nastavit maximálně využitelné místo na diskovém oddíle, pro konkrétního uživatele. Do diskové kvóty se nezapočítávají komprimované soubory, ale jejich reálná velikost. dlouhá jména souborů (ve FAT původně nebyla a ve Windows 95 je bylo třeba doplňovat značně komplikovaným způsobem) NTFS používá 64-bitové adresy clusterů, takže diskový oddíl může být větší než u FAT (která ve své poslední verzi používala efektivně 28bitové adresování) a to konkrétně až 16 EB (což odpovídá přibližně 17 10^9 TB). Celý systém je řešen jako obří databáze, jejíž jeden záznam odpovídá souboru. Základ tvoří 12 systémových souborů, tzv. metadat, které vznikají bezprostředně po naformátování svazku. $Logfile je již výše zmíněné žurnálování; $MFT (Master File Table) je tabulka obsahující záznamy o všech souborech, adresářích a metadatech (jelikož $MFT je soubor, je i informace o něm v této tabulce); Nachází 30

Souborové systémy použitelné v Linuxu 3. kapitola se hned za boot sektorem; jelikož se jedná o soubor, lze jej teoreticky fragmentovat (prakticky je tomu zamezeno), avšak aby se tomu předešlo, systém kolem něj udržuje zónu volného místa $MFTMirr je soubor, zajišťující bezpečnost dat; nachází se uprostřed disku, obsahuje prvních 16 záznamů $MFT; pokud je $MFT z nějakédo důvodu poškozená, použije se tato kopie; $Badclus drží seznam známých vadných clusterů, které znovu nebudou použity; pokud nastane chyba při čtení dat, systém označí clustery za špatné a $Badclus se aktualizuje; $Bitmap je jednorozměrné pole bitů, které slouží ke sledování volného místa; když je bit 0, je volný a v opačném případě použitý; mezi další patří $Boot, $Volume, $AttrDef, $Quota, $Upcase, $Extend a. (kořenový adresář disku); NTFS je flexibilní všechny jeho soubory (včetně speciálních, s výjimkou boot sektoru) se dají přesunout. Atributy souborů Soubory mohou mít mnoho atributů; jejich definice obsahuje soubor $AttrDef. V různých verzích se atributy liší, teoreticky je dokonce možné přidávat si vlastní. Klasický soubor má mj. tyto atributy: $FILE_NAME struktura pro jméno souboru. Kromě něj obsahuje i velikost, reference na nadřízený adresář a různé příznaky. $SECURITY_DESCRIPTOR přístupová práva k souboru $DATA vlastní obsah souboru Adresáře Adresáře jsou v NTFS pojaty jako speciální druh souborů; používají jiné druhy atributů. Na disk jsou vkládány jako B-stromy (což zrychluje vyhledávání) se jmény souborů a odkazy na jejich záznamy v MFT. 31

Souborové systémy použitelné v Linuxu 3. kapitola 3.10 Porovnání Souborových systémů Souborový systém Maximální délka názvu souboru Použitelné znaky v názvech adresářů Maximální délka cesty Maximální velikost souboru Maximální velikost diskového oddílu Vyvinul Používáno od r. Původní operační systém FAT12 255b Unicode kromě NULL Bez omezení 32MiB 32MiB až (??) 512MiB Microsoft 1980 QDOS FAT16 8b (původně) / 255b (pouze LFN / VFAT) Unicode 16MiB Bez omezení 2 Gib / 4GiB kromě NULL až 4GiB Microsoft 1983 MS-DOS verze 2 FAT32 8b (DOS bez LFN) / 255b (pouze LFN / VFAT) Unicode kromě NULL Bez omezení 2 Gib / 4GiB 2 TiB7 Microsoft 1997 Windows 95c NTFS 255b Microsoft, Gary Unicode kromě NULL Bez omezení 16EB 16EB Kimura, Tom Miller 1995 Windows NT ext2 255b libovolný bajt kromě NULL Bez omezení a / 16GB až 2TB 2TB až 32TB Rémy Card 1993 Linux ext3 255b libovolný bajt kromě NULL Bez omezení a / 16GB až 2TB 2TB až 32TB Stephen Tweedie 1999 Linux ReiserFS V3 4032b/255znaků Libovolný bajt kromě NULL Bez omezení 8TB 16TB Namesys 2001 Linux ZFS 255b Libovolný Unicode znak Bez omezení 16EB 16EB kromě NULL Sun Microsystems 2004 Solaris 10 Tab. 2 Tabulka srovnání jednotlivých Souborových systémů 3.11 Závěr V práci jsem popsal důvody použití souborových systémů a seznámil čtenáře s některými specifiky vybraných systémů. Souborové systémy se stále vyvíjejí a vycházejí nové verze. Zajímavým specifikem Linuxu je jeho schopnost detekovat i souborové systémy, které nativně nepoužívá (nako NTFS a FAT). Windows naproti tomu souborové systémy Linuxu bere jako neznámé a neumí s nimi pracovat. Jako nejzajímavější souborový systém se mi tedy jeví NTFS, neboť obsahuje jednak moderní prvky, ale hlavně je kompatibilní na platformách Windows i Linux. 32

Souborové systémy použitelné v Linuxu 3. kapitola 3.12 Použitá literatura Knihy: [1] KOLEKTIV AUTORŮ Linux dokumentační projekt I. 4. vyd. Brno : Computer Press, 2007. 1334 s. ISBN 978-80-251-1525-1. [2] VALADE, J. Linux jdi do toho. 1. vyd. Praha : Grada Publishing, 2006. 279 s. ISBN 80-247-1455-8. Internet: http://www.root.cz/clanky/linux-pro-uplne-zacatecniky-3/ http://www.root.cz/clanky/linux-pro-uplne-zacatecniky-4/ http://cs.wikipedia.org/wiki/ntfs http://cs.wikipedia.org/wiki/fat http://cs.wikipedia.org/wiki/ext2 http://cs.wikipedia.org/wiki/ext3 33

Ukázky administrace OS Linux 4. kapitola 4. Ukázky administrace OS Linux Autor: Jaromír Holubec Tato kapitola je zaměřena na ukázky administrace OS Linux. Tyto příklady jsou shodné téměř ve všech distribucích Linuxu. 4.1 Příkazový řádek (SHELL) Je to jakýsi most mezi uživatelem a linuxovým jádrem. Umožňuje spouštět programy, psát skripty, komunikovat s jádrem... to vše se skrývá za tzv. command line. Pravdou je, že příkazová řádka může být nesmírně užitečný a rychlý nástroj, který usnadní práci se systémem. Obrázek 1 - ukázka SHELLu v systému Unix Historie UNIXové příkazové řádky je stará jako počítače samotné. Dávno před érou PC běžely na nejrůznějších platformách různé klony unixových systémů. Svoji oblibu získaly především pro svou rychlost, stabilitu a vyzrálost. 34

Ukázky administrace OS Linux 4. kapitola 4.2 Bash (Bourne Again Shell) V dnešní době je asi nejpoužívanějším interpretem BASH. Pochází z projektu GPL a je tedy dostupný zdarma, včetně zdrojových kódů. Jeho název je složen ze slov Bourne Again Shell. Mezi další oblíbené shelly (jak se také příkazovému řádku říká) patří sh (Bourne shell), csh (C shell), ksh (Korn shell) nebo tcsh (TENEX C shell). Rozdíly mezi jednotlivými interprety jsou různé, většinou však nepříliš velké. Příkazový procesor Bourne shell byl nazván podle svého autora, kterým je Steven Bourne. Ten vytvořil původní příkazový procesor pro operační systém Unix a většina příkazových procesorů vytvořených od té doby končí písmeny sh. Tím se indikuje, že další příkazové procesory jsou rozšířením původního příkazového interpretu. Dnes existuje spousta implementací původního příkazového interpretu Bourne shell. Jiný typ představují tzv. C shelly (původně je navrhl pan Bill Joy), jež se rovněž hojně používají. Obecně platí, že příkazové interprety typu Bourne shell se používají z důvodu kompatibility s originálním příkazovým interpretem, zatímco C shell se používá pro interaktivní zpracování příkazů. Příkazové interprety typu C shell se vyznačují tím, že mají lepší vlastnosti pro interaktivní práci, ale mají poměrně nepružné vlastnosti z hlediska programátorského. 4.2.1 Příklad k interpretu BASH Předpokládejme tedy, že máte přístup k bashi a na obrazovce bliká výzva k zadávání příkazů. Pro zjístění Vašeho operačního systému zkuste napsat uname a stiskneme enter. Pokud jste v systému na platformě Linuxu, mělo by se Vám vypsat slovo Linux. Pro výpis všech základních informací zkuste zadat uname -a. Přepínač -a říká něco jako all. Nyní zkuste zadat df h. Tento příkaz nám řekne kolik je místa na disku. 4.3 Roury a přesměrování V linuxovém prostředí existují 3 základní virtuální soubory, které má otevřen každý program. Jsou to soubory reprezentující standartní výstup (stdout), standartní vstup (stdin) a standartní chybový výstup (stderr). Všechny jsou také označeny čísly počínaje nulou (pro stdin, 1 - stdout a 2 - stderr). 35