Urpmi na maximum — instalace softwaru

logo-mandrivaV tomto — předposledním — díle seriálu o urpmi, si ukážeme jak nainstalovat balíček do systému včetně mnoha upravujících parametrů. Instalace jakéhokoli programu či knihovny probíhá prostřednictvím instalace příslušného balíčku, který byl pro daný účel vytvořen. RPM balíček je vytvořen tak, aby zajistil řádnou instalaci programu, záznam do databáze rpm, pre a poinstalační nastavení systému a instalovaného programu (například jazyková nastavení, přidání do systémového menu, případné konverze nastavení či dat z předchozích verzí atp.), instalaci nezbytných komponent (balíčky uvedené v závislostech) a některé další činnosti.

Základní příkazy a příslušné parametry

Jednoduchá instalace

Instalace balíčků se provádí pomocí příkazu urpmi. Nejjednodušší příklad, kdy není zapotřebí žádných dalších voleb jsme si již ukázali:

urpmi lyx

nainstaluje textový editor lyx. Podobně

urpmi mplayer

nainstaluje přehrávač multimedií mplayer.

Aktualizace systému

Další velmi častou činností je aktualizace. Ať již jde o aktualizace bezpečnostní, běžné (odstranění chyb v některých programech) či přechod na novější verzi nějakého programu, obvykle jde o činnost žádoucí:

urpmi --auto-update

Příkaz provede v prvním kroku aktualizaci zdrojů (jako by jstesamostatně zadali příkaz urpmi.update) a následně nabídne seznambalíčků k aktualizaci. Takto ovšem aktualizuje i ze zdrojů, jenž jsou pouze instalační, nikoli jen aktualizační!

Použít můžeme třebas tuto kombinaci příkazů a parametrů:

urpmi.update -a

zaktualizuje indexové soubory pro jednotlivé zdroje

urpmi --update --auto-select

provede vlastní aktualizaci ze zdrojů, které jsou označeny příznakem update (viz minulý díl seriálu)

Druhý z příkazů nabídne seznam balíčků k aktualizaci. Podotýkám, že k aktualizaci se vždy nabízejí jen ty balíčky, jejichž starší verze je v systému nainstalována.

Parametry pro stahování

Typická instalace se sestává z vyhledání požadovaného souboru, jeho stažení z repozitáře do dočasného umístění v /var/cache/urpmi/rpms, rozbalení archívu, kontrola podpisu, kontrolního součtu md5sum, zkopírování instalovaných souborů do příslušných adresářů, provedení instalačních/aktualizačních scriptů, zápis do databáze rpm, smazání balíčků z dočasného adresáře a ukončení instalace.

Stahování balíčků z ftp serverů je tedy obvyklou součástí instalace. Chceme, aby stahování bylo rychlé, spolehlivé i v případech méně kvalitního připojení. Urpmi proto používá kvalitní stahovací programy, které můžeme některými volbami ovlivnit dle potřeby.

Volba stahovače

Program urpmi umí využít ke stažení rpm balíčku programy curl, wget, prozilla nebo aria2. Z různých důvodů můžete upřednostňovat ten či onen, ať již trvale, nebo jednorázově pro konkrétní instalaci. Pro výběr stahovacího programu slouží přepínač s názvem stahovače, například: --wget:

urpmi --wget

Každý z uvedených downloaderů umožňuje používat velké množství nejrůznějších přepínačů a nastavení. Systém urpmi je umí částečně zpřístupnit volbou --stahovač-options. Je-li parametr jen jeden, můžeme ho uvést přímo. Pokud se sestává z více slov (obsahuje mezery), je nutné je uzavřít do uvozovek. Například uvedu příkaz pro použití wgetu a přikáži mu zaznamenat svoji činnost do logovacího souboru logwget. Instaluji balíček bubblemon (parametr --no-instal říká systému, aby balíček jen stáhl, vlastní instalace neproběhne):

# urpmi --no-install --wget --wget-options "-o logwget" bubblemon
Aby byly splněny závislosti, budou nainstalovány následující balíčky:
   Balíček                        Verze        Vydání        Arch.
(zdroj "Main (Official2009.1-1)")
  libglib1.2                     1.2.10       22mdv2009.1   i586
  (zdroj "Contrib (Official2009.1-9)")
  bubblemon                      1.46         4mdv2009.0    i586
    galaxy-gtk12                   1.0.6        2mdv2009.1    i586    (navrhováno)
  gdk-pixbuf-loaders             0.22.0       14mdv2009.1   i586  (navrhováno)
  libgdk-pixbuf2                 0.22.0       14mdv2009.1   i586    (navrhováno)
  libgtk+1.2                     1.2.10       50mdv2009.1   i586
Navíc bude použito 2.4MB diskového prostoru.
Bude staženo 820KB balíčků.
Pokračovat v instalaci 6 balíčků? (A/n)  

[root@mandriva]#

Logovací záznam wgetu v souboru logwget najdete v pracovním adresářiurpmi, tedy v /var/cache/urpmi/partial/. Pro ostatní stahovače je použití obdobné.

Máte nestabilní připojení, které často “padá”. Použijte parametr --resume:

urpmi --resume bubblemon

Stahování bude navázáno tam, kde bylo minule přerušeno (pokud to podporuje server, na kterém je umístěn repozitář).

Reinstalace balíčku

Instalace balíčku byla přerušena, např. výpadkem elektřiny. Balíček je uveden v databázi rpm jako nainstalovaný, ale instalace neproběhla korektně až do konce a nainstalovaný program nefunguje. Bude nutné balíček přeinstalovat:

urpmi --replacepkg bubblemon

nebo v kombinaci s další volbou:

urpmi --replacepkg --replacefiles bubblemon

Ve druhém případě jsou ignorovány konflikty mezi soubory (např. soubor existuje, má stejné jméno ale jinou velikost ap.), tedy všechny existující soubory jsou při reinstalaci automaticky přepsány.

Pokud by z nějakého důvodu nezabraly předchozí možnosti, je zde ještě další možný postup:

rpm --nodeps --justdb -e bubblemonurpmi balicek

Příkaz odebere záznam o balíčku z databáze rpm a následně je balíček možné příkazem urpmi znovu nainstalovat.

Balíčky pro architekturu 32bitů na 64bitový systém

V některých případech je nutné vnutit 64bitovému systému balíček určený pro 32bitovou architekturu (typicky ovladače ap.). Ještě jednou bychom rádi upozornili, že v tomto případě musíte přesně vědět, co děláte a proč to děláte! Instalovat 32bitové balíčky do 64bitového systému není obecně dobrý nápad!

urpmi --ignorearch nazev_balicku

a balíček určený pro jinou architekturu (tedy balíček *i585.rpm do systému x86_64 a naopak) je nainstalován.

Pokud použijete tuto volbu, bylo by možná užitečné nejprve ověřit parametrem –test, zda instalace může korektně proběhnout: Instalace proběhne jen “naoko”, v systému se ve skutečnosti nic nezmění. Dozvíte se ale, zda příslušný balíček lze vůbec nainstalovat dříve, než si začnete v systému dělat “hokej”.

Ochrana před nežádoucími odinstalacemi

Některé balíčky při své instalaci vyžadují odinstalování jiných, konfliktních balíčků. Vy ale máte systém “vymazlený” a raději se instalovaného programu vzdáte, než aby jste dovolili cokoli v systému mazat. V tom případě jste adepty pro využití parametru --keep:

urpmi --keep bubblemon

Parametr –keep zajistí, (pokud je to možné) že v systému zůstanou existující balíčky a odmítne ty z požadovaných balíčků, které vyžadují odstranění jiných.

Žádné komentáře

Leave a comment

Sorry, you must be logged in to post a comment. Login