www.mikajik.info

[ ↓ navigace ↓ ]
Příjem digitální TV - levně a skladem!

RPM balíčkovací systém a distribuce openSUSE, 2. část

Úkolem druhé části článku bude říci si, o všech příkazech pomocí kterých můžeme instalovat / odinstalovat balíček.

Obsah článku

Seznam příkazů, které můžeme použít při instalaci balíčku

rpm -i (or --install) options file1.rpm … fileN.rpm


--test
test se hodí pro zjištění, které nám chybý součásti, potřebné pro správnou funkčnost balíčku.

                # rpm -i --test rpm-2.0.11-1.i386.rpm
/bin/rpm conflicts with file from rpm-2.3-1
/usr/bin/gendiff conflicts with file from rpm-2.3-1
/usr/bin/rpm2cpio conflicts with file from rpm-2.3-1
/usr/bin/rpmconvert conflicts with file from rpm-2.3-1
/usr/man/man8/rpm.8 conflicts with file from rpm-2.3-1
error: rpm-2.0.11-1.i386.rpm cannot be installed
#

--percent místo výpisu právě prováděné části instalce se zobrazí procentuální pozice instalce. 100% znamená kompletní instalce.

                # rpm -i --percent iBCS-1.2-3.i386.rpm
%f iBCS:1.2:3
%% 0.002140
%% 1.492386
%% 5.296632
%% 9.310026
%% 15.271010
%% 26.217846
%% 31.216000
%% 100.000000
%% 100.000000
#

--excludedocs RPM rozděluje instalační soubory do tří kategorií
1.konfigurační soubory
2.soubory obsahující dokumentaci
3.ostatní soubory
--excludedocs parametr znamená, že se zabrání instalaci souborů s dokumentací. V následujícím příkladu by měla být dokumentace uložena v adresáři /usr/man/man1/ ale zadali jsme, že dokumentaci instalovat nechceme a proto soubor s dokumentací neexistuje. Použití tohoto paremetru má význam pokud chcete ušetřit pár MB na vašem HDD.

                # rpm -iv --excludedocs cdp-0.33-3.i386.rpm
Installing cdp-0.33-3.i386.rpm
# ls -al /usr/man/man1/cdp.1
ls: /usr/man/man1/cdp.1: No such file or directory
#

--includedocs pokud má balíček ve svém konfiguračním souboru nastaveno že se nemá instalovat dokumentace excludedocs: 1, můžeme pomocí --includedocs instalaci dokumentace povolit

              # ls /usr/man/man1/cdp.1
ls: /usr/man/man1/cdp.1: No such file or directory
# rpm -iv --includedocs cdp-0.33-3.i386.rpm
Installing cdp-0.33-3.i386.rpm
# ls /usr/man/man1/cdp.1
-rw-r--r--   1 root     root         4550 Apr 24 22:37 /usr/man/man1/cdp.1
#

--replacepkgs použije se pokud chceme znovu nainstalovat již existující balíček (třeba pro jeho opravu) instalace balíčku

              # rpm -iv cdp-0.33-2.i386.rpm
Installing cdp-0.33-2.i386.rpm
#

balíček je již nainstalovaný a proto se znovu nenainstaluje a instalátor nám vypíše chybu

              # rpm -iv cdp-0.33-2.i386.rpm
Installing cdp-0.33-2.i386.rpm
package cdp-0.33-2 is already installed
error: cdp-0.33-2.i386.rpm cannot be installed
#

pokud ale přidáme --replacepkgs instalace proběhne v pořádku

              # rpm -iv --replacepkgs cdp-0.33-2.i386.rpm
Installing cdp-0.33-2.i386.rpm
#

--replacefiles pokud máme dva instalační balíky a ty se snaží nainstalovat do stejného adresáře soubor se stejným jménem dojde k chybě. Přiklád je instalace nové verze programu a náhrada jeho staré. pomocí --replacefiles můžeme říci aby se na starý soubor nehledělo a přepsal se.

              # rpm -iv cdp-0.33-3.i386.rpm
Installing cdp-0.33-3.i386.rpm
/usr/bin/cdp conflicts with file from cdp-0.33-2
error: cdp-0.33-3.i386.rpm cannot be installed
# Chyba
# rpm -iv --replacefiles cdp-0.33-3.i386.rpm
Installing cdp-0.33-3.i386.rpm
# OK

--force
instalace v každém případě (ikdyž nastane konflikt) je to spojení --replacepkgs a --replacefiles.

--noscripts
některé balíčky vyžadují před svou instalací aby jisté programy byly vykonané předtím, po, nebo před a po instalaci balíčku.
--noscripts zabrání vykonávání těchto pre- a post-install skriptů.

--prefix
některé balíčky umožňují aby si uživatel zvolil na které místo disku (do kterého adresáře) se bude balíček instalovat.

--ignorearch
když je balík vytvořen, RPM specifikuje architekturu, nebo typ počítačového hardwaru pro který byl balík vytvořen.
--ignorearch použijeme pokud nechceme aby se architektura nebo hardware kontroloval.
tento příkaz se doporučuje použív pouze v případě, že víte co děláte.

--ignoreos
když je balík vytvořen, RPM specifikuje operační systém pro který byl balík vytvořen.
--ignoreos použijeme pokud nechceme aby se operační systém kontroloval.
tento příkaz se doporučuje použív pouze v případě, že víte co děláte.

--nodeps nehledět na závislosti (potřeba mít nainstalovaný související program) a bez problémů ho nainstalovat.

              # rpm -i blather-7.9-1.i386.rpm
failed dependencies:
bother >= 3.1 is needed by blather-7.9-1
# Error
# rpm -i --nodeps blather-7.9-1.i386.rpm
# OK

--ftpproxy a --ftpport pro nastavení FTP proxy a portu

--httpproxy a --httpport pro nastavení HTTP proxy a portu

RPM balíčky lze instalovat i pomocí internetu resp. HTTP a FTP účtů někde v síti internetu. Pokud budete instalovat ze serveru chráněného heslem, můžete přihlašovací jméno přidat do adresy serveru před zavináč takto:


      ftp://user:pass@jmeno.domena/pub/SUSE10.2/balicek-0-2.i386.rpm
nebo
ftp://user@jmeno.domena/pub/SUSE10.2/balicek-0-2.i386.rpm
Ve druhém případě se rpm na heslo zeptá.
rpm -U ftp://jmeno.domena/pub/SUSE10.2/balicek-0-2.i386.rpm
Edward C. Bailey. Additional options to rpm -i [online]. [cit. 2007-03-06]. URL: <http://www.rpm.org/max-rpm/s1-rpm-install-additional-options.html>

Odinstalování balíčku

Odinstalování balíčků se provádí jednoduše pomocí volby -e. Rozdíl oproti instalaci je v tom, že rpm nepředáváte jméno souboru, ale jméno balíčku. Tzn. bez .rpm.


Obsah příštích článku

  • Získávání informací z databáze balíčků
  • URPMI
  • dpkg
  • YAST - Yet Another Setup Toolkit
  • Instalace openSUSE 10.2.
  • Literatura
Přidat komentář
Jméno: 33 + 24 =
Text: