Aplikace lze v případě OS typu Linux instalovat v zásadě dvěma základními způsoby - pomocí tzv. balíčků nebo kompilací zdrojového kódu. Následující kapitola obsahuje stručný popis obou těchto možností.
Softwarový balíček je ve své podstatě standardizovaný „balík“ souborů nezbytných pro spuštění určitého programu. S jednotlivými balíčky je možné „manipulovat“ pomocí některého ze systémů pro správu balíčků. Správce balíčků se používá pro konzistentní instalaci, aktualizaci a odebírání aplikací.
Fedora Core používá balíčky rpm (Read Hat Package Manager). rpm sice v dnešní době představuje především formát softwarových balíčků, avšak jméno samotné se vyvinulo z původního správce balíčků, který byl používán pro jejich správu. Tento správce je sice ve Fedora Core stále k dispozici, avšak z hlediska funkcionality byl překonán vyspělejším správcem balíčků yum. Existují také další „balíčkové“ standardy a správci - například Debian1) používá balíčky deb a správce balíčků apt.
O jaký balíček se jedná, lze velice jednoduše poznat podle jeho koncovky. Balíčky rpm tak mají koncovku .rpm, balíčky deb pak koncovku .deb. To, že se jedná o balíček rpm, není dostačující podmínkou pro to, abyste byli schopni ho nainstalovat. Balíčky tohoto standardu totiž používají také jiné distribuce jako např. Mandriva. Navíc musí být balíček určen pro architekturu Vašeho počítače (např. i386, i686, x86_642)). Některé balíčky nejsou závislé na architektuře počítače (např. dokumentace) - tyto balíčky jsou v názvu označeny slovem noarch. Zkratka src označuje zdrojové kódy, které jsou také shodné pro všechny architektury. Dále je velmi doporučeníhodné, aby daný balíček byl určen přímo pro Vaši verzi distribuce. Všechny potřebné údaje jsou zakompovány do názvu balíčku. Například
xmms-1.2.10-23.fc5.x86_64.rpm
je balíčkem multimediální aplikace xmms verze 1.2.10-23 určeným pro Fedora Core 5 a architekturu x86_64.
Balíčky se nacházejí na instalačním CD/DVD v adresáři RPMS. Na Internetu jsou balíčky k dispozici např. na www.rpmseek.com a v tzv. repozitářích (viz. dále).
Balíčky .rpm lze instalovat pomocí
rpm -ivh package_file.rpm
a odinstalovat pomocí
rpm -e package_name
Následující příkaz Vám vypíše všechny nainstalované balíčky seřazené vzestupně podle datumu instalace.
rpm -qa --last | tac
Základní nevýhodou správce balíčků rpm je, že neohlídá závislosti mezi jednotlivými balíčky. Jeden balíček totiž může pro svou instalaci vyžadovat balíček jiný. Tato závislost může být několikanásobná - Vámi požadovaný balíček může být závislý na dalších třech, které mohou zase vyžadovat další balíčky atd. Snadno se tak dostanete do situace, která je označována jako „rpm hell“. Nainstalovat / odebrat konkrétní balíček pak může být úkol vskutku nadlidský. Proto byl vyvinut správce balíčků yum, který umí tyto závislosti ohlídat a nainstaluje / odebere všechny potřebné balíčky za Vás.
Poznámka: Bližší informace o příkazu rpm viz. man rpm
nebo info rpm
.
Jak bylo zmíněno v kapitole Instalování / odinstalování balíčků pomocí rpm, nejlepším způsobem, jak instalovat aplikace, je použít správce balíčků yum. Abychom však mohli yum používat, musíme mít nastaveny tzv. repozitáře. Repozitáře jsou servery, na nichž jsou uloženy soubory určené pro distribuci po Internetu. Z repositářů je možné si stáhnout balíčky pro rozšíření / aktualizaci Vaší Fedora Core (např. nejrůznější kodeky a aplikace, které nejsou standardní součástí instalačního CD/DVD). Následující text předpokládá funkční připojení k Internetu.
Váš systém standardně obsahuje odkazy na repozitáře fedora-core, fedora-development, fedora-extras, fedora-extrax-development, fedora-legacy, fedora-updates a fedora-updates-testing. Velice užitečnými repozitáři jsou také repozitáře livna, livna-devel a livna-testing. Tyto repozitáře přidáte pomocí příkazu
rpm -Uvh http://rpm.livna.org/livna-release-6.rpm
Příslušné konfigurační soubory pro jednotlivé repozitáře jsou uloženy v adresáři /etc/yum.repos.d
.
Poznámka: Vedle těchto standardních repozitářů existují také další. Mezi nejznámější z těchto repozitářů patří např. freshrpms nebo atrpms. Používání těchto repozitářů však může mít za následek konflikty mezi nainstalovanými balíčky.
GNU Privacy Guard (GnuPG nebo také GPG) je náhradou kryptografického softwaru PGP. GPG používá asymetrického šifrování (tj. konceptu veřejného a soukromého klíče).
K zadání následujících příkazů musíte být přihlášen jako superuživatel. Pomocí příkazů
rpm --import /etc/pki/rpm-gpg/* rpm --import http://rpm.livna.org/RMP-LIVNA-GPG-KEY
stáhnete veřejné klíče k výše zmiňovaným repozitářům. Klíče pak slouží k účelům autentifikace balíčků stažených přes Internet. Tento způsob by Vám měl poskytnout jistotu, že balíčky skutečně pocházejí z daného repozitáře.
Jestliže nemáte funkční připojení k Internetu, je možné si z Vašeho instalačního DVD vytvořit ISO obraz a ten následně připojit jako repozitář. Výhody a nevýhody lokálního repozitáře jsou zřejmé - na jedné straně je velice rychlá instalace balíčků, na druhé straně stojí absence baličků z repozitáře livna a po nějakém čase neakuální balíčky. Dále není vhodné míchat dohromady balíčky z repozitářů umístěných na Internetu a lokálního repozitáře.
Vytvořte adresář /opt/fc
, ve kterém bude umístěn ISO obraz instalačního DVD. K tomu, abyste byli schopni vytvořit ISO obraz, budete potřebovat 3.5 GB volného diskového prostoru.
mkdir /opt/fc
Předpokládejme, že soubor zařízení Vaší DVD mechaniky je /dev/cdrom
. ISO obraz instalačního DVD vytvoříte v adresáři /opt/fc
pomocí příkazů
cd /opt/fc umount /dev/cdrom dd if=/dev/cdrom of=fc.iso bs=1024
Dále vytvořte adresář /opt/lokalni_repozitar/dvd
. Do tohoto adresáře se bude připojovat ISO obraz.
mkdir /opt/lokalni_repozitar/dvd
Ten připojíte pomocí
mount -r -o loop /opt/fc/fc.iso /opt/lokalni_repozitar/dvd
Následně se přesuňte do adresáře /opt/lokalni_repozitar
.
cd /opt/lokalni_repozitar
Níže uvedeným příkazem nainstalujete balíček createrepo
a vygenerujete seznam balíčků obsažených na instalačním DVD. Tato operace může trvat až několik minut v závislosti na výkonu Vašeho počítače.
rpm -Uvh dvd/Fedora/RPMS/createrepo* createrepo .
Aby nebylo nutné pokaždém restartu systému ISO obraz připojovat ručně, otevřete soubor /etc/fstab
gedit /etc/fstab
a na jeho konec přidejte řádek
/opt/fc/fc.iso /opt/lokalni_repozitar/dvd iso9660 ro,loop 0 0
Poznámka: Soubor fstab
musí vždy končit prázdnou řádkou - v opačné případě bude systém hlásit chybu.
Dále je třeba přidat nově vytvořený repozitář do seznamu repozitářů určených pro aktualizaci systému - to umožní aplikaci yum použít tento repozitář pro aktualizaci systému. Vytvořte soubor lokalni_repozitar.repo
.
gedit /etc/yum.repos.d/lokalni_repozitar.repo
Do nově vytvořeného souboru zkopírujte řádky
[lokalni_repozitar] name=Lokalni repozitar baseurl=file:///opt/lokalni_repozitar enable=1 gpgcheck=0
a soubor uložte.
Poznámka: Jestliže repozitář uložíte na sdílený disk, lze tímto způsobem vytvořit repozitář, který je možné následně využívat v rámci lokální sítě.
Pomocí následujícího příkazu naistalujete grafickou nadstavbu yumex pro příkaz yum
. Pomocí aplikace yumex možné instalovat/odebírat nejen aplikace, ale také přidávat depozitáře.
yum -y install yumex
Aplikaci yumex spustíte pomocí Aplikace → Systémové nástroje → Yum Extender.
Jestliže máte do systému přidány repozitáře, můžete používat správce balíčků yum. Jak již bylo několikrát zmíněno, slouží yum ke konzistentní instalaci, aktualizaci a odebírání balíčků. Navíc yum ohlídá závislosti mezi jednotlivými balíčky4) a tím značně zjednoduší jejich instalaci. Velice se doporučuje provádět správu balíčků právě prostřednictvím yum.
usage: yum [options] < update | install | info | remove | list | clean | provides | search | check-update | groupinstall | groupupdate | grouplist | groupinfo | groupremove | makecache | localinstall | erase | upgrade | whatprovides | localupdate | resolvedep | shell | deplist > options: -h, --help show this help message and exit -t, --tolerant be tolerant of errors -C run entirely from cache, don't update cache -c [config file] config file location -R [minutes] maximum command wait time -d [debug level] debugging output level -e [error level] error output level -y answer yes for all questions --version show Yum version and exit --installroot=[path] set install root --enablerepo=[repo] enable one or more repositories (wildcards allowed) --disablerepo=[repo] disable one or more repositories (wildcards allowed) --exclude=[package] exclude package(s) by name or glob --obsoletes enable obsoletes processing during updates --noplugins disable Yum plugins
Na první pohled se používání příkazu yum může jevit složité, ale ve skutečnosti je velice jednoduché.
Příklady:
Následující příkaz vygeneruje seznam všech balíčků, které souvisí s aplikací jmeno_aplikace
.
yum search jmeno_aplikace
Chceme-li získat o určitém balíčku více informací stačí zadat
yum info jmeno_aplikace
yum může také projít všechny Vámi nastavené repozitáře a podat informaci o tom, kde je možné získat příslušný balíček.
yum list available
Přehled nainstalovaných balíčků získáte zadáním
yum list installed
yum také umožňuje získat přehled jednotlivých skupin balíčků (např. Administration Tools, Sound and Video, MySQL Database apod.).
yum grouplist
Jestliže chcete získat přehled balíčků v repozitáři jmeno_repozitare, zadejte do příkazové řádky
yum list jmeno_repozitare
Nové aplikace lze nainstalovat pomocí
yum install jmeno_aplikace
yum také umožňuje instalaci celé skupiny aplikací. Například skupinu aplikací pro přehrávání audia a videa lze snadno nainstalovat pomocí
yum groupinstall „Sound and Video“
Jestliže jste stáhli rpm balíček do adresáře /path/to/the/rpm
můžete jeho instalaci provést pomocí následujícího příkazu. yum se postará o případné závislosti a stáhne požadované balíčky.
yum localinstall /path/to/the/rpm
yum je také schopen aktualizovat systém bez interakce uživatele, budete-li si to přát5).
yum update
V případě, že si nejste jisti, zda-li máte aktuální balíčky, zadejte
yum check-update
Pomocí příkazu yum můžete odinstalovat nejen daný balíček ale také balíčky, které instalaci tohoto balíčku podmiňují, a které byly s tímto balíčkem nainstalovány.
yum remove jmeno_aplikace
Poznámka: Více informací o správci balíčků yum lze získat pomocí man yum
popř. info yum
.
Aplikace je možné také instalovat pohodlně pomocí programu Přidat/Odebrat Software, který se nachází v přímo v nabídce Aplikace. Jedná se o podobné rozhraní, pomocí kterého jste mohli vybírat jednotlivé balíčky v průběhu instalace.
Při kompilaci zdrojových kódů překládáme programový kód pomocí tzv. kompilátoru. Standardně se jedná o kompilátor gcc, který je součástí vývojových balíčků. Tyto balíčky musíte mít nainstalovány, abyste byli schopni zdrojový kód zkompilovat. Nejprve stáhněte požadovaný soubor obsahující zdrojový kód např. zde. Soubor rozbalte6) a prostudujte přiložené soubory README popř. INSTALL. V nich je vysvětleno krok za krokem, jak postupovat při samotné kompilaci. Ve většině případů je postup následující
su ./configure & make & make install
Kompilace aplikací ze zdrojových kódů s sebou přináší výhody i nevýhody. Výhodou je, že „ručně“ zkompilovaný program je zpravidle méně náročný na systémové zdroje, což může být zejména na slabších strojích pádný argument. Nevýhodou je, že tento způsob instalace vyžaduje relativně podrobnou znalost systému Linux a že o splnění případných závislostí se musí uživatel postarat sám. Z těchto důvodů se jednoznačně upřednostňuje instalace programů pomocí správce balíčků yum. Ke kompilaci ze zdrojových kódů je možné přistoupit v případě, že požadovaná aplikace není součástí repozitářů.
Poznámka: Některé aplikace je možné používat okamžitě po jejich rozbalení. Jednou z takovýchto aplikací je např. FPS hra Sauerbraten.
uname -m
. Dále je dobré vědět, že balíčky pro architekturu i386 je možné používat pro všechny architektury typu x86 - tj. i386, i486, i586 a i686.