- p�edchoz� �l�nek - n�sleduj�c� �l�nek - obsah -

Linuxov� noviny Leden 1998

Instalujeme bal�ky ve form�tu RPM

Jan "Yenya" Kasprzak, 7. ledna 1998

[ RPM logo ]  
V minul�m ��sle Linuxov�ch novin jsem popsal RPM bal�k, jeho ��sti a informace, kter� jsou v tomto bal�ku uvedeny o jeho jednotliv�ch souborech. Dne�n� ��st je zam��ena na instalaci RPM soubor� do syst�mu.

Prvn�m p�edpokladem instalace bal�ku je m�t tento bal�k k dispozici v RPM form�tu pro danou architekturu (nebo noarch bal�k pro libovolnou architekturu). RPM bal�k je mo�no m�t na pevn�m disku nebo na vzd�len�m FTP serveru.

Cesta k bal�ku je jedn�m z parametr� p��kazu rpm. Je mo�no uv�st bu�to cestu do souborov�ho syst�mu (absolutn� nebo relativn�), nebo URL pro p��stup p�es FTP:

  • /cdrom/RedHat/RPMS
    /ssh-1.2.21-1i.i386.rpm
  • ftp://ftp.redhat.com/pub/redhat
    /contrib/i386/squid-1.NOVM.18-5.i386.rpm

Pokud je bal�k z nezn�m�ho zdroje, je dobr� p�ed jeho instalac� zkontrolovat signaturu. K tomu je pot�eba syst�mu RPM sd�lit, kde m�me ulo�eny svoje svazky kl��� pro PGP. Do souboru /etc/rpmrc vlo��me ��dek podobn� n�sleduj�c�mu:

   pgp_path:       /home/kas/.pgp

Ve svazku ve�ejn�ch kl��� mus�me pochopiteln� m�t ve�ejn� kl�� autora bal�ku. U bal�k� pat��c�ch k distribuci je to jednoduch� - ve�ejn� kl�� Red Hat Software je na ka�d�m distribu�n�m CD nebo na mirrorech. Je-li bal�k vyroben n�k�m jin�m, je nutno si ve�ejn� PGP kl�� obstarat jinak.

Kontrolu v�ech signatur v RPM bal�ku provedeme n�sleduj�c�m p��kazem:

   $ rpm --checksig <bal�k>.rpm
   <bal�k>.rpm: size pgp md5 OK

V�stup znamen�, �e bal�k m� spr�vnou velikost i MD5 sou�et a �e souhlas� i PGP podpis.

Instalace bal�k�

Bal�k ve form�tu RPM instalujeme pomoc� programu rpm s p�ep�na�em -i. Instalace prob�h� v n�kolika kroc�ch:

Kontrola z�vislost�
- n�kter� bal�ky vy�aduj� ke sv� �innosti, aby v syst�mu byly p��tomny jin� bal�ky (nap��klad po�tovn� klient m��e vy�adovat program /usr/sbin/sendmail, program v X11 m��e cht�t svoje dynamicky linkovan� knihovny a podobn�). Kontrola z�vislost� tak� ov���, jestli bal�k nezp�sob� probl�my jin�mu ji� nainstalovan�mu bal�ku (nap��klad v syst�mu sm� b�t pouze jeden program pro doru�ov�n� po�ty jako je sendmail nebo qmail).

Kontrola konflikt�
- nen� nap��klad mo�n� nainstalovat tent�� bal�k je�t� jednou, nebo instalovat bal�k star�� verze, ne� v syst�mu pr�v� je (toto lze obej�t, pokud skute�n� chceme nainstalovat star�� verzi). Nelze tak� instalovat bal�k, kter� by p�epsal soubory pat��c� jin�mu bal�ku.

O�et�en� v�skytu konfigura�n�ch soubor�
- je-li v syst�mu ji� p��tomen konfigura�n� soubor n�jak�ho programu (nap��klad nainstalovan�ho mimo syst�m RPM), instala�n� program se sna�� takov�to soubor zachovat. P�esn� pravidla pro nakl�d�n� s verzemi konfigura�n�ch soubor� pop��eme, a� budeme hovo�it o upgradech - instalac�ch nov�j��ch verz� bal�k�.

Spu�t�n� preinstala�n�ho scriptu

Rozbalen� soubor�, obsa�en�ch v bal�ku

Spu�t�n� postinstala�n�ho scriptu

Ulo�en� informac�
o nainstalovan�m bal�ku do datab�ze RPM

Dal�� mo�nosti

K vlastn� instalaci (p�ep�na� -i) lze specifikovat i dal�� podrobn�j�� volby:

-v
- podrobn�j�� v�pis o pr�b�hu instalace.
-vv
- je�t� podrobn�j�� v�pis. Zobrazuje i informace o pr�b�hu instalace jednotliv�ch soubor�.
-h
- zobrazuje znaky #, kter� ukazuj�, jak postupuje instalace.
--percent
- zobrazuje v procentech informaci o postupu instalace bal�ku. V�stup z rpm s t�mto p�ep�na�em je ur�en pro grafick� programy, kter� pak mohou zobrazovat na z�klad� tohoto v�stupu nap��klad progress-bar.

Pr�b�h instalace lze modifikovat n�sleduj�c�mi p�ep�na�i:

--test
- neprovede ��dn� akce, pouze kontroluje, jestli lze bal�k nainstalovat (tj. nen�-li konfliktn� nebo nevy�aduje-li je�t� n�jak� dal�� bal�k).
--replacepkgs
- provede instalaci, i kdy� je bal�k ji� nainstalov�n. Je vhodn� zejm�na v p��pad�, kdy dojde n�jak�m zp�sobem k po�kozen� p�vodn� nainstalovan�ch soubor� a chceme bal�k prost� "p�einstalovat".
--replacefiles
- p�ep��e soubory, kter� jsou obsa�eny je�t� v jin�m bal�ku. Pou�ije se v p��pad�, kdy nov� bal�k obsahuje tent�� soubor jako n�kter� ji� nainstalovan� bal�k, a kdy� chceme RPM p�inutit p�esto nov� bal�k nainstalovat.
--nodeps
Neprov�d� kontrolu z�vislost� mezi bal�ky. Lze pou��t, pokud chceme nap��klad pou��vat jen ur�itou ��st bal�ku (nap��klad v bal�ku ssh-clients je program ssh-add, kter� pot�ebuje knihovny X11; chceme-li nainstalovat ssh-clients na stroji, kde X11 knihovny nejsou, m��eme pou��t --nodeps s t�m, �e nebude mo�no spustit program ssh-add).
--force
- tento p�ep�na� je zkratkou za --replacepkgs a --replacefiles.
--excludedocs
- nainstaluje bal�k bez dokumentace. Nepot�ebujeme-li dokumentaci, m��eme nainstalovat bal�k bez soubor�, kter� v n�m byly ozna�eny jako dokumenta�n�. Typicky jsou to manu�lov� str�nky a soubory v adres��i /usr/doc.
--includedocs
- opak p�edchoz�ho. Je-li v /etc/rpmrc zak�z�no instalovat dokumenta�n� soubory, m��eme t�mto p�ep�na�em specifikovat, �e pro tento konkr�tn� RPM bal�k se m� dokumentace nainstalovat.
--noscripts
- nainstaluje bal�k, ani� by se spustily p��slu�n� preinstala�n� a postinstala�n� scripty.
--ignorearch
- nainstaluje bal�k i p�esto, �e byl p�vodn� ur�en pro jinou architekturu.
--ignoreos
- nainstaluje bal�k, p�vodn� ur�en� pro jin� opera�n� syst�m.
--ftpproxy, --ftpport
- umo�n� specifikovat adresu a port FTP proxy serveru. Pou�ije se p�i instalaci bal�k� z FTP, je-li po��ta� odd�len od FTP serveru proxy serverem.
--prefix <cesta>
- instaluje relokovateln� bal�k. Relokovateln� bal�k je takov�, kter� m��e b�t nainstalovan� do libovoln� adres��ov� struktury. Spr�vce syst�mu se pak m��e rozhodnout, kam bal�k nainstalovat. Jedna z tradi�n�ch mo�nost� je /usr/local, jin� mo�nost je nap��klad /opt, pro pokusnou instalaci m��eme zvolit /tmp/<bal�k>.
--rcfile <soubor>
- ur�� alternativn� cestu ke konfigura�n�mu souboru (implicitn� je /etc/rpmrc). Z konfigura�n�ho souboru se berou parametry pro PGP, implicitn� instala�n� prefix pro relokovateln� bal�ky a podobn�.
--root <cesta>
- instaluje tak, �e adres�� <cesta> je pova�ov�n za ko�enov�. Pod adres��em <cesta> se o�ek�v� kompletn� syst�m v�etn� RPM datab�ze a dal��ch program�. RPM se do tohoto adres��e p�epne a nastav� jej jako ko�enov� pomoc� chroot(2).
--dbpath <cesta>
- jin� ne� implicitn� cesta k RPM datab�zi (implicitn� je /var/lib/rpm).

To je o instalaci RPM bal�k� zat�m v�echno. P���t� ��st na�eho seri�lu bude o upgradov�n� a ru�en� bal�k�. *


- p�edchoz� �l�nek - n�sleduj�c� �l�nek - obsah -