Open Source Programování

Podobné dokumenty
Linuxová distribuce Debian

Vývoj software pro Linuxové distribuce. Installfest Praha,

Instalace Debianu pomocí debootstrap

Debian a jeho instalace. Příprava pro kurz Administrace UNIXu

Open Source Programování

Linuxové distribuce. Michal Dočekal

Úvod do Linuxu SŠSI Tábor 1

Linuxové distribuce. Michal Dočekal

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

Jak funguje GNU/Linux

Uvedené dílo (s výjimkou obrázků) podléhá licenci Creative Commons Uved te autora 3.0 Česko.

Operační systém GNU/Linux

Distribuce. Úvod do GNU/Linuxu. Michal Dočekal. 8. února 2007

DISTRIBUCE GNU/LINUXU

IT ESS II. 1. Operating Systém Fundamentals

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

Středisko UN*Xových technologií

Linux historie a současnost

INSTALACE SW V GNU/LINUXU

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

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

Alpine Linux: minimalistická distribuce nejen na server

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

Balíčkové systémy. Vlastnosti balíčkových systémů KAPITOLA 5

Open Source Programování

Sekundární architektury ve Fedoře. Openmobility Brno,

Svět svobodného softwaru

Security Enhanced Linux (SELinux)

LINUX A JEHO DISTRIBUCE

Open Source Programování

Svobodný software, open source, licence. Michal Dočekal

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

JAK SE DAŘÍ KOMERČNÍMU LINUXU? Ondřej Suchý Enlogit s.r.o.

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

Instalace Linux Debian ve VirtualBoxu JAKUB MAZUCH BŘEZEN 2018

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

Linux jako alternativní operační systém

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

Profesionální služby kolem Linuxu

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

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

Sekundární architektury ve Fedoře. InstallFest Praha,

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

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.


ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE

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

Seznámení s open source vývojem a open source řešeními pro mobilní zařízení

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

Novinky v projektech Knot DNS a Knot Resolver. Daniel Salzman

VirtualBox desktopová virtualizace. Zdeněk Merta

PSK3-11. Instalace software a nastavení sítě. Instalace software

Open source a Free software

JAK SE DAŘÍ KOMERČNÍMU OPEN SOURCE? Ondřej Suchý Enlogit s.r.o.

Počítačové sítě a Linux. Radek Pilař Gymnázium Tanvald Oktáva 2008/2009

Správa softwaru v GNU/Linuxu. Michal Dočekal

Linux na desktopu Pro Běžně Frustrované Uživatele

Linux (nejen) v Low End routerech

Operační systémy: funkce

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

Základní principy Open Source

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

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

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

Historie UNIXu a LINUXu - 1

GRAFICKÁ PROSTŘEDÍ GNU/LINUXU

Licence software. Přednáška číslo 10

Open Source alternativy

Infor ERP Baan / ERP LN. Návaznost podporovaných OS na implementované SP a FP. Zdeněk Špidla

O projektu Nasazení OpenOffice.org v praxi

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

Operační systémy 2. Debian, jeho instalace, překlad jádra Přednáška číslo 5

Cobbler, Puppet, Func

Ochrana software. Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Alžběta Krausová, 2011

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

Software programové vybavení. 1. část

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

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

STUDIJNÍ MATERIÁL PRO TECHNICKOU CERTIFIKACI ESET Server Security, Serverové produkty

Komunity a vývoj SW. Autor: Petr SiLK Koloros

9. Sítě MS Windows. Distribuce Windows. Obchodní označení. Jednoduchý OS pro osobní počítače, pouze FAT, základní podpora peer to peer sítí,

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

Poznámky k vydání pro Kerio Workspace 2.0.1

KAPITOLA 1. Pracujeme s Linuxem

Rudolf Marek. Kompilujeme jádro a aplikace (Mplayer) ALL YOUR BASE ARE BELONG TO US!

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

Návod na instalaci operačního systému Debian GNU/Linux pomocí Businesscard ISO obrazu Ota Trkola

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

Open source a komerční linuxové distribuce Libor Pecháček

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

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

Hynek Cihlář Podnikový architekt Od Indoše ke Cloudu

VY_32_INOVACE_INF.20. OS Linux

Úvod do OpenWRT. Ondřej Caletka. 1. března Uvedené dílo podléhá licenci Creative Commons Uveďte autora 3.0 Česko.

Red Hat Enterprise Virtualization

Linux na prapodivných deskách. LinuxDays 2017, Lenka Kosková Třísková Technická univerzita v Liberci

Brno. 30. května 2014

Open Solaris. Ladislav Pecen Client Solutions Sun Microsystems Czech

FLATPAK. Revoluce v distribuci linuxových aplikací? Jiří Eischmann, Red Hat Desktop Engineering Manager

Vývoj programů. ÚVOD DO OPERAČNÍCH SYSTÉMŮ

Transkript:

Linuxové distribuce, balíčky a vydání Open Source Programování http://rtime.felk.cvut.cz/osp/ Pavel Píša <pisa@fel.cvut.cz> http://cmp.felk.cvut.cz/~pisa Michal Sojka František Vacek DCE FEL ČVUT Copyright 2004 2010, Pavel Píša, Michal Sojka, František Vacek, Free Electrons.com, GNU.org, kernel.org, Wikipedia.org, distrowatch.com Creative Commons BY SA 3.0 license Latest update: 7. V. 2015 1

Binární distribuce Samotné jádro nestačí, je potřeba nástrojů pro userspace Pokud však získáme pouze zdrojové kódy, bez již běžícího systému (i třeba jiného) a nástrojů, tak jsou nepoužitelné Pro zavedení systému je tedy potřeba binární distribuce jádra, základních nástrojů (pro další vývoj minimálně kompilátor) a nějaký instalátor/zavaděč, který systém přenese na disk nebo alespoň do paměti Některé systémy vlastní boot proces neřeší, například Novell Netware 3 a 4.x startuje z DOSu. LoadLin to umožňuje i Linuxu. Plnohodnotný systém však instalaci a boot řešit musí Boot je řešen většinou s pomocí jednodušší aplikace postavené nad BIOSem (LILO, GRUB, NTLDR) nebo přímo HW (U Boot) Instalátor je vetšinou řešen aplikací napsanou pro minimální konfiguraci přímo cílového systému, která je nějak (boot sector, SySLinux, ISOLinux, PXELinux) zavedena do paměti 2

Vznik GNU/Linux distribucí Z počátku (1991) bylo možné Linux vyvíjet a nainstalovat pouze z Minixu Prapůvodní samostatné distribuce H. J. Lu: Boot root dvě diskety, jedna jádro, druhá root H. J. Lu později se stal správcem větve Linux LibC 5 Větev FSF GLibC 1994 1997, vznikla z důvodu pomalého vývoje GLibC 2.0 MCC Interim Linux Manchester Computing Centre, Anglie, únor 1992 Linux kernel 0.12, RAM disk od Theodore Tso pro využití místa z prvního disku TAMU, Texas A&M University Softlanding Linux System (SLS), Peter MacDonald, půle roku 1992 první nabídla ne jen jádro ale i základní nástroje včetně TCP/IP a X Windows Yggdrasil Linux/GNU/X, první Linuxová distribuce na CD ROM 8.12.1992 1995 První distribuce byly většinou jen dočasným počinem, špatná údržba SLS a komerčnost Yggdrasil Computing, Incorporated vedly další k novým řešením Slackware Patrick Volkerding 1993, vychází ze SLS a je stále vyvíjen Podstatný byl přechod z a.out (OMAGIC, ZMAGIC) na ELF formát Slackware 3.0 (1995) jádro 1.2.13, 1.3.1, to SLS nezvládlo a zcela zmizelo 3

Slackware Linux Autor Patrick Volkerding, od roku 1992 do současnosti Technicky čistě založená distribuce, snaha o maximální jednoduchost (KISS keep it simple and stupid) Minimální úpravy začleněných programů a projektů a téměř žádné vlastní nástroje, správa balíčků jsou pouze bash scripty pkgtool Balíčky.tgz (přímo gzip+tar + dir install) od 13.0.txz (lzma+tar) Pojmenování balíčků autoconf 2.59 noarch 1.tgz, tcpip 0.17 i486 29.tgz V roce 1995 80% instalací Linuxu, dnes ústup, příp. Arch a SLAX Stabilní, čistá řešení, minimum chyb, drží se UNIXových principů Neexperimentuje na uživatelích, revoluční řešení nechává na jiných Omezené množství oficiálních balíčků (např. není GNOME), konzervativní ve výběru a někdy i verzích balíčků, složitý upgrade Instalace: CDs a DVD pro 32 bit (i486) a 64 bit (x86_64) 4

Debian GNU/Linux Projek založil Ian Murdock v roce 1993 Od začátku předpokládal kompletně nekomerční projekt vyvíjený stovkami dobrovolníků a přesto, že v to okolí nevěřilo, tak se právě toto povedlo Přes 1 000 dobrovolníků, přes 43 512 balíčků, 12 architektur 120 dalších distribucí a Live CD založeno na Debianu Vývoj ve větvích experimental, unstable (trvale nazývaná sid), testing (bude 9.0 Stretch). Zmrazený stav stable (nyní 8.0 jessie). Předchozí oldstable verze 7.0 wheezy a 6.0 lenny. Velmi stabilní, výjimečný systém řízení/kontroly kvality, mnoho balíčků a nejvíce podporovaných architektur ve světě Linuxu alpha, amd64, arm, armel, hppa, i386, ia64, mips, mipsel, powerpc, s390, sparc Konzervativní, ne vždy poslední technologie (i kvůli množství architektur), pomalý vývojový cyklus (1 3 roky), v diskuzních konferencích si vývojáři neberou servítky 5

Debian Historie vydání 0.01 až 0.90 srpen až prosinec 1993 0.91 leden 1994, 0.93R5 1995, 0.93R6 master hostován u HP 1.x 1.0 se nepovedla, špatná/nebootujicí verze na CD po přechodu z a.out na ELF 1.1 Buzz (červen 1996) Bruce Perens pracovník u Pixar (Toy Story), 474 pkg 1.2 Rex (prosinec 1996) 848 pkg, 120 dev 1.3 Bo (červen 1997) 974 pkg, 200 dev 2.0 Hamm (červenec 1998) 1500 pkg, 400 dev, m68k arch 2.1 Slink (březen 1999) 2250 pkg, Sparc, Alpha, apt 2.2 Potato (srpen 2000) 3900 b/2600 s pkg, 450 dev, ARM, PPC 6

Debian Vydání do současnosti 3.0 Woody (červenec 2002) 8500 pkg, 900 dev, KDE Qt lic OK 3.1 Sarge (červen 2005) 15400 pkg, OpenOffice.org, unofficial AMD64, 15400 pkg, 900 dev 4.0 Etch (duben 2007) AMD64, m68k, 18000 pkg, 1030 dev 5.0 Lenny (únor 2009) ARM EABI, 23000 b/12000 s pkg, 1000+ dev 6.0 Squeeze (únor 2011) podpora 70 jazyků 7.0 Wheezy (květen 2013) multiarch, LibreOffice, UEFI 8.0 Jessie (duben 2015) systemd pro správu služeb OS i386, sparc, powerpc,ppc64el, mips, mipsel,ia64, amd64, armel, armhf, s390x linux image rt amd64, linux image rt 686 pae 7

Debian podporované architektury Zdroj: http://en.wikipedia.org/wiki/debian 8

Pro připomenutí: Svobodný software Svobodný software je software, který respektuje svobodu svých uživatelů a poskytuje jim čtyři základní svobody, které svobodný software definují: 0. svoboda používat program za jakýmkoliv účelem 1. svoboda zkoumat a upravovat program (předpokladem je přístup ke zdrojovému kódu) 2. svoboda šířit původní verzi programu 3. svoboda šířit upravenou verzi programu do 70 tých let běžné, v 80 tých letech nástup copyrightu Richard Stallman definice a boj o zachování svobod GNU projekt 1984, publikace FSF 1986 překlad definice a více např.: Michal Dočekal na http://www.poznejlinux.cz/terminy/svobodny_software 9

Debian Společenská smlouva "Společenská smlouva" s komunitou svobodného softwaru 1. Debian zůstane stoprocentně svobodný Zaručit použitelnost pro všechny, ale základ vždy nezávislý na nesvobodných částech 2. Přispívání komunitě svobodného softwaru Vše dělat co nejlépe, opravy chyb, vylepšení a požadavky uživatelů předávat do mainline 3. Nebudeme skrývat problémy Veřejná databáze a správa chyb 4. Našimi prioritami jsou uživatelé a svobodný software Všem bez omezení, i pro komerční použití a využití v derivátech 5. Díla nesplňující naše standardy pro svobodný software Pro uživatele, kteří vyžadují/potřebují i ne zcela svobodné balíky, vytvořeny oblasti "contrib" a "non free", které umožnují a zjednodušují jejich použití v Debianu 10

Zásady svobodného softwaru pro Debian 1. Volná další distribuce 2. Zdrojový kód 3. Odvozená díla 4. Integrita zdrojového kódu autora 5. Zákaz diskriminace osob a skupin 6. Zákaz diskriminace oblastí 7. Šíření licence 8. Licence nesmí být jen pro systém Debian 9. Licence nesmí omezovat jiný software 10. Příklady svobodných licencí ("GPL", "BSD" nebo "Artistic") 11

Debian Organizace projektu appoints Project leader elect * appoints Developers Officers Users Technical committee appoints/approves Project secretary Release team Delegates apply DAM NM team / advocates applicants FTP masters approve Security team Press contacts Administrators etc. Policy group Web/list/...masters CD team etc. Maintainers / porters Documentation / i18n teams Quality assurance etc. Software in the Public Interest (SPI) * Schulze method voting system developed in 1997 12

Debian Cyklus balíčků security patches upstream standard process special / optional process (manual) package upload automatic processing legend package installation maintenance, responsibility exchange, help, discussion submission, notification sources semi official repository security team security incoming developer / maintainer incoming packaging buildds BTS human / group transitional state unstable unstable experimental proposed updates by RM testing testing power user / developer unofficial archives testing security frozen volatile stable security updates proposed updates by stable RM stable user / production backports 13

Balíčkovací systém DEB DEB balíček se skládá ze tří souborů zabalených programem ar debian binary pouze identifikátor formátu. Současná verze "2.0" control.tar.gz veškeré meta informace o balíčku soubor control informuje o jménu, správci balíčku, závislostech atd. skripty preinst, postinst, prerm, postrm pro akce specifikované balíčkem pro jeho instalaci a odebrání soubor conffiles specifikuje, které soubory obsažené v balíčku jsou konfigurační a zaslouží si šetrné zacházení soubor shlibs informuje o sdílených knihovnách obsažených v balíčku, jejich verzích a závislostech data.tar, data.tar.gz, data.tar.bz2 nebo data.tar.lzma vlastní data/soubory v adresářové struktuře systému O instalaci a správu se na nejnižší úrovni stará dpkg Pro tvorbu pak existuje dpkg dev Vyšší vrstvy dselect, apt, aptitude, synaptic 14

Ubuntu a jiné Debian deriváty Mark Shuttleworth, rok 2004, multimilionář, vývojář projektu Debian, firma Canonical Ltd. zaměřena na placenou podporu Projekt obdržel dostatek financí což mu umožnilo i rozesílat CD zdarma Nabídl dobře zpracovaný web, dokumentaci a nástroje pro správu chyb a vývoj (launchpad.net) Pevný cyklus vydání, každých 6 měsíců, podpora 18 měsíců, LTS každé 2 roky, podpora 3 roky Přístupné začátečníkům, množství dokumentace a zaměřeno na desktop (ovladače, grafika, podpora multimédií) Není udržovaná kompatibilita s Debianem, dříve i slabší spolupráce s originálními autory SW (upstream) nyní jsou změny (patche) z Ubuntu vkládané do Debian Package Tracking System (PTS) Správa balíčků: Advanced Package Tool (APT), formát DEB Množství variant: Ubuntu, Kubuntu, Xubuntu, Ubuntu Studio a Mythbuntu pro 32 bit (i386) a 64 bit (x86_64) CPU, server i pro SPARC Další odvozené distribuce: KNOPPIX (Live CD), MEPIS Linux, Damn Small Linux (pro starší počítače), Xandros (komerční distribuce) 15

Red Hat RHEL Red Hat, Inc. (NYSE: RHT S&P 500, 2500 zam.) 1993 Bob Young, ACC Corp., distribuce UNIX SW 1994 Marc Ewing distribuce Red Hat Linux 1995 Bob Young koupil a sloučil firmy do Red Hat Software 1999 přechod na akciovou společnost a nákup Cygnus Solutions 2003 převzetí projektu Fedora a vznik Fedora Project a RHEL Red Hat je profesionálním hráčem na poli open source SW vývoj probíhá komunitně, firma však zajišťuje kvalitu, záruky a placenou podporu od vývoje, přes školení až po 24/7 služby Disribuce je podporovaná velkou firmou Placení vývojáři přímo přispívají do klíčových projektů (kernel, GCC, binutils), přitom zásada RHEL je že vše musí být OSS Dlouhá doba podpory RHEL 4.x (2005) podpora nového HW do roku 2009, opravy však stále k dispozici, RHEL 5.x (2007), aktuální řada 6.x (2010) Podpora/záruky/originál je drahý (CentOS), pomalý distribuční cyklus (2 3 roky), spíše na servery než desktop Správa balíčků: formát RPM Achitektury: x86 (IA 32), x86_64, powerpc, s390, IBM z, S390x 16

Red Hat Dlouhodobá podpora Zdroj: http://en.wikipedia.org/wiki/red_hat_enterprise_linux 17

Fedora Projekt vznikl v roce 2003 jako náhrada původního Red Hat Linuxu pro komunitní uživatele Původně vysloveně testovací laboratoř, postupně oddělení od firmy (FESCo Fedora Engineering Steering Committee, Fedora Board 50%:50%), přesto personálně i finančně silně provázaná Nové vydání přibližně po 6 měsících, podpora končí 2 měsíce po přespříštím vydání (okolo 13 měsíců) Inovativní, bezpečnost, množství balíčků Striktně dodržuje filozofii Free Software (např. pouze Noveau) Vývoje se zúčastní autoři klíčových komponent systému Prioritou je podpora enterprise vlastností, nikoliv desktop Jedná se především o technologický vývoj pro RHEL především snaha otestovat technologii, v poslední době však i cíl ukázat výkladní skříň a proto již lepší podpora běžných uživatelů Správa balíčků: YUM jak grafický tak z řádky, formát RPM Architektury: x86 32 bit (i386), 64 bit (x86_64) a PowerPC (ppc) 18

RPM Balíčky Soubor <name> <version> <release>.<architecture>.rpm Hlavička identifikující RPM Digitální signatura pro ověření integrity a původu Sekce obsahující metadata (jméno balíčku, verzi, architekturu, závislosti, seznam souborů atd.) Vlastní distribuované soubory: cpio+gzip, novější star+bzip2/lzma/xz, ve verzi RPM 5.0 je použit xar Tvorba balíčků podle.spec souborů. Zdrojové balíčky.src.rpm Komentáře (Comment) pro vývojáře, RPM je ignoruje Popisky (Tag) definují data Výkonné skripty (Script) jsou vykonávané v při konkrétních akcích Makra (Macro) pro vykonání posloupnosti skripů Seznam souborů (%files list) které mají být uloženy do balíčku Definice (Directives) používané v seznamu souborů pro specifické zacházení Architekturně nebo systémově závislý překlad (Conditionals) 19

opensuse Projekt založili němečtí nadšenci v roce 1992 SuSE Z počátku Slackware od roku 1996 vlastní distribuce Základem RPM balíčky a správce YaST 2003 SuSE Linux koupen Novellem, uvolnění YaST pod GPL a vývoj plně otevřen komunitě opensuse, Novell nyní koupen Attachmate SUSE Linux Enterprise Desktop a SUSE Linux Enterprise Server s plnou komerční podporou Kromě nešťastné dohody o patentech s Microsoftem velmi vstřícné jednání směrem ke komunitě Kombinovaná jak grafická tak i textová správa balíčků a veškeré systémové konfigurace, repozitory s množstvím balíčků, velmi dobrá webová infrastruktura (Build Service s webovým ale i řádkovým interfacem. tištěná dokumentace, podpora češtiny Velmi provázané grafické nástroje na zprávu jsou občas považované za zbytečnou zátěž a mohou komplikovat manuální zásahy Architektury: x86 32 bit (i386), 64 bit (x86_64), PowerPC (ppc) SLES i586, IA64, PowerPC, s390, s390x and x86_64 architectures 20

Gentoo Linux Projekt založil v roce 2000 Daniel Robbins původně pracoval na Stampede Linux, FreeBSD a EGCC Správa balíků a kompilační infrastruktura převzata z FreeBSD (Portage) Kvalitní infrastruktura pro správu SW, nejlepší možnosti pro úpravu a optimalizaci SW, dokonalá dokumentace na webu Občas díky kontinuálnímu vývoji dočasně nestabilní Projekt nemá až tak jednotnou vizi a dochází k rozbrojům Veškerý SW se typicky kompiluje, na odstartování jsou k dispozici předkompilované balíky (stages) Architektury: minimální CD a live CD (GNOME) pro Alpha, AMD64, HPPA, IA64, MIPS, PPC, SPARC a x86 21

Odkazy DistroWatch http://distrowatch.com/ Slackware Debian RedHat opensuse Gentoo LWN ABClinuxu Root.cz Wikipedia http://slackware.com/ http://www.debian.org/ http://www.redhat.com/ http://en.opensuse.org/ http://www.gentoo.org/ http://lwn.net/ http://www.abclinuxu.cz/ http://www.root.cz/ http://en.wikipedia.org/wiki/linux_distribution 22