Instalujeme balφky ve formßtu RPM |
Jan "Yenya" Kasprzak, 7. ledna 1998 |
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.
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
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∙.
|