Inštalácia programov pomocou YUM I.

YUM – Yellowdog Updater, Modified

Programy sa v linuxe zo začiatku inštalovali len zo zdrojových kódov kompiláciou a štandardnými tromi príkazmi:

./configure
make
make install

Prvý príkaz je príprava na samotný preklad zo zdrojových kódov do binárnej podoby. Jeho úlohou je hlavne zistiť potrebné podporné balíky, knižnice a podobne. Počas behu sú skontrolované závislosti a v prípade, že nám chýba nejaká knižnica, proces sa ukončí s chybou a pokračovať môžeme po vysporiadaní nezrovnalostí. Príkazom make už len preloží do binárnej podoby, jednotlivé súbory ale ostávaju v aktuálnom adresári. Príkazom make install rozkopírujeme tieto súbory na svoje miesta a následne ich môžeme v systéme využívať. Niekedy sú ešte nutné ďaľšie kroky, na ktoré nás upozorní autor v README súbore, prípadne v súbore INSTALL. Preto moje odporúčanie je vždy si pozrieť tieto súbory pred inštaláciou zo zdrojových kódov. Ďalšie moje odporúčanie je využívať pri príkaze configure aj možnosť –prefix=/adresar/program a týmto si zabezpečíme, že budeme mať v systéme poriadok, nakoľko sa jednotlivé súčasti v poslednej inštalačnej časti nakopírujú do adresárovej štruktúry s názvom nášho programu. Na tieto účely zväčša využívam adresár /opt, kde každý takýto program má svoje miesto. Jeho umiestnenie je už ale na administrátorovi. V mojom prípade bude inštalácia vyzerať nasledovne:

./configre –prefix=/opt/ftpd
make
make install

Odinštalovanie následne znamená zmazať adresár /opt/ftpd. V prípade inštalácie zo zdrojových kódov je vhodné prvé dva kroky vykonať ako bežný užívateľ a až krok make install vykonať pod užívateľom root. Odporúčanie vychádza z možnosti skrytej chyby, kde by mohol byť napríklad skrytý “antivírus” rm -rf /, čo by viedlo nielen k strate dát, ale aj k strate celého systému.

Inštalovanie zo zdrojových kódov býva veľmi často náročné práve z potreby mnoho závislostí. V realite nainštalovať také KDE grafické prostredie zaberie aj niekoľko dní. Druhý nedostatok je pri tejto inštalácii je správa aktualizácií. Ak je nutné každú aktualizáciu kompilovať, prichádzame o značné výpočtové zdroje a je to aj časovo dosť náročné. Preto sú uprednostňované inštalácie už zo skompilovaných balíkov vo forme binárok. Pred niekoľkými rokmi prišla firma RedHat na trh ako prvá s inštaláciou z balíkov. Vznikol projekt “RedHat Package Manager”, ktorý zjednodušil inštaláciu, aktualizácie a ušetril rýchlosť pri správe systémov. Každý RPM balík pozostáva z predinštalačných skriptov, samotných binárnych programov a postinštalačných skriptov. Predinštalačný skript napríklad zisťuje, či je možné daný balík nainštalovať na aktuálny systém, či sú už nainštalované potrebné knižnice atď. Postinštalačný skript zas vykoná úpravy v systéme, napríklad upraví konfiguračný súbor daného programu, vytvorí potrebného užívateľa a môže aj spustiť daný progam. Balíky RPM využívajú rozne systémy vychádzajúce z RedHat systému. Medzi najznámejšie patria Fedora, CentOS, OpenSuse … V minulosti som sa stretol s problémom tzv “dependency hell”. Prejavuje sa to tak, že pri štandardnej inštalácii príkazom rpm -ihv balik.rpm vyhlási, že potrebuje na svoj beh nainštalovať balik2.rpm. Ale ak chcete obdobne nainštalovať priamo balík balik2.rpm, pri ňom zas vyhlási, že potrebuje predchádzajúci balík. Samozrejme riešením je nainštalovať obe naraz a to príkazom rpm -ihv balik.rpm balik2.rpm, alebo inštalovať ich postupne za pomoci rozšírenia –force.

Forma inštalácie cez príkaz rpm naráža na jeden nedostatok. Každý balík sa musel samostatne stiahnuť, museli ste trafiť správnu verziu a inštalovať ich ručne lokálne. Samotný RedHat linux obsahoval grafický program na inštaláciu, ale k dokonalosti mal však ďaleko. Fúziou s distribúciou Yellowdog Linux prevzali balíčkovací manažér YUM, ktorý riešil mnoho problémov v inštalácii. Vznikali repozitáre, ktoré obsahovali rôzne verzie programov, tie boli a sú verejne prístupné a z nich povolením na servri môžete inštalovať jednotlivé balíky. V prípade, že je nutné k inštalácii stiahnuť aj nejakú knižnicu, alebo iný program, systém YUM sa o to postará, stiahne ich a nainštaluje spolu s vyžadovaným balíkom. K inštalácii, odinštalovaniu, aktualizácii je využívaný príkaz yum, ktorý má veľa rôznych možností. Od prevzatia firmou RedHat prešiel veľkú cestu a musím sám uznať, že sa z neho stal plnohodnotný inštalátor. Snáď jediné čo mu chýba je grafická nadstavba, ktorú vyriešili programy ako yumex, KYum alebo Pirut.

WordPress SEO fine-tune by Meta SEO Pack from Poradnik Webmastera