RPM-Gebruik

Reggy Ekkebus, [email protected]

v0.1, 22 januari 2000


Dit document beschrijft hoe je met RPM programma's installeert, unïnstalleert en informatie opvraagt.

1. Introductie

Het belangrijkste doel van dit document is dat mensen RPM snel leren kennen en gebruiken.

1.1 Nieuwe versies van dit document

Nieuwe versies van dit document zullen te vinden zijn tussen de Nederlandse howto's op http://www.nl.linux.org/doc/HOWTO/.

1.2 Feedback

Ik verwelkom beslist elke feedback over deze RPM-Gebruik-Mini Howto. Het zou leuk zijn als je een mailtje stuurde als je kritiek hebt, suggesties, verbeteringen, etc. Ik hoop dat ik mensen kan helpen met deze Mini Howto en als ik dat deed stuur me dan een mailtje

[email protected]

1.3 Standaard Disclaimer

Er kan geen aansprakelijkheid voor de inhoud van dit document worden geaccepteerd. Alles mag gebruikt worden, maar op eigen risico. Ik neem hiervoor geen verantwoordelijkheid.

1.4 Copyright Informatie

Dit document valt onder het copyright (c)2000 Reggy Ekkebus en wordt onder de volgende voorwaarden gedistribueerd:

Dit document mag geheel of gedeeltelijk worden gedistributeerd en gereproduceerd, via elektronisch of fysiek medium. Zolang de copyright vermelding op alle kopieën behouden blijft. Voor vragen mail: [email protected]

2. Wat is RPM

RedHat Package Manager (RPM) is een open packaging systeem bruikbaar voor iedereen, en werkt op Red Hat Linux systemen, maar ook op andere Linux systemen bv Suse, Mandrake, etc voor rpm gebruik met slackware zie: RPM+Slackware Mini-Howto. RPM kan ook op andere Unix systemen zoals Tru64 Unix, AIX, Solaris en SunOS gebruikt worden. Met RPM kun je software met de extensie .rpm erachter installeren, unistalleren, verificeren, zoeken en zelf RPMS maken maar dit onderdeel wordt in dit document niet verder besproken.

3. De thuis basis van RPM

Bij de meeste distibuties wordt RPM standaard geinstalleerd en kun je hier rpm.org eventueel de nieuwste versie ophalen.

Tijdens het schrijven van deze Mini-Howto was de laatste versie

rpm-3.0.3.tar.gz of rpm-3.0.3-6x.i386.rpm

4. Het Installeren, Upgraden en Un-installeren van software

4.1 Software Installeren

Om software met RPM te installeren heb je om te beginnen software (packages) nodig die de .rpm extensie heeft. Deze zijn vooral te vinden op rpmfind.net

# rpm -i foo-1.2-3.i386.rpm

# rpm -ivh foo-1.2-3.i386.rpm
  
foo                      ##################################################

# rpm -ivh foo-1.2-3.i386.rpm

package foo-1.2-3 is already installed

# rpm -ivh bar-1.2.3.i386.rpm
error: failed dependencies:
        foo is needed by bar-1.2.3

# rpm -ivh bar-1.2.3.i386.rpm --nodeps
bar                      ##################################################

# rpm -ivh ftp://ftp.redhat.com/pub/redhat/rh-6.1/RPMS/foo-1.2-3.i386.rpm
foo                      ##################################################

4.2 Software Upgraden

Ook Software Upgraden met RPM is heel simpel.

# rpm -U foo-1.2-3.i386.rpm

# rpm -Uvh foo-1.2-3.i386.rpm
foo                      ##################################################

Ook tijdens het upgraden kunnen er dependies problemen zijn, deze kunnen ook hier worden genegeerd door de --nodeps optie mee te geven of de benodigde software installeren.

4.3 Software verwijderen

Ook software (packages) verwijderen gaat met RPM heel eenvoudig.

# rpm -e foo

Hier dus niet de naam van het pakket file, maar de naam van het pakket.

Ook kunnen tijdens het Un-installeren dependies problemen voorkomen, deze kunnen ook hier worden genegeerd door de --nodeps optie mee te geven, of de software (package) te laten staan omdat er anders problemen kunnen zijn met andere software.

5. Informatie opvragen

5.1 Informatie over te installeren software

Met RPM kun je allerlei informatie opvragen over de te installeren software.

# rpm -qpi ispell-3.1.20.i386.rpm
Name        : ispell                       Relocations: (not relocateable)
Version     : 3.1.20                            Vendor: Red Hat Software
Release     : 22                            Build Date: Tue 07 Sep 1999 07:03:29 PM CEST
Install date: Thu 21 Oct 1999 10:15:50 PM CEST      Build Host: porky.devel.redhat.com
Group       : Applications/Text             Source RPM: ispell-3.1.20-22.src.rpm
Size        : 6351115                          License: GPL
Packager    : Red Hat Software <http://developer.redhat.com/bugzilla>
Summary     : The GNU interactive spelling checker program.
Description :
Ispell is the GNU interactive spelling checker.  Ispell will check a
text file for spelling and typographical errors.  When it finds a word
that is not in the dictionary, it will suggest correctly spelled words
for the misspelled word.

You should install ispell if you need a program for spell checking
(and who dosn't...).

# rpm -qlp ispell-3.1.20.i386.rpm
/usr/bin/buildhash
/usr/bin/findaffix
/usr/bin/icombine
/usr/bin/ijoin
/usr/bin/ispell
/usr/bin/munchlist
/usr/bin/spell
/usr/bin/sq
/usr/bin/tryaffix
/usr/bin/unsq
/usr/doc/ispell-3.1.20
/usr/doc/ispell-3.1.20/README
/usr/info/ispell.info.gz
/usr/lib/ispell
/usr/lib/ispell/american.hash
/usr/lib/ispell/americanmed+.hash
/usr/lib/ispell/americanxlg.hash
/usr/lib/ispell/british.hash
/usr/lib/ispell/britishmed+.hash
/usr/lib/ispell/britishxlg.hash
/usr/lib/ispell/english.aff
/usr/lib/ispell/english.hash
/usr/man/man1/buildhash.1
/usr/man/man1/findaffix.1
/usr/man/man1/ispell.1
/usr/man/man1/munchlist.1
/usr/man/man1/sq.1
/usr/man/man1/tryaffix.1
/usr/man/man1/unsq.1
/usr/man/man5/english.5
/usr/man/man5/ispell.5

5.2 Informatie over geinstalleerde software

Met RPM kun je ook allerlij informatie opvragen over geinstalleren software.

# rpm -q foo
foo-1.2-3.i386   

# rpm -qf /usr/local/bin/foo
foo-1.2-3.i386

# rpm -qdf /usr/bin/ispell
/usr/doc/ispell-3.1.20/README
/usr/info/ispell.info.gz
/usr/man/man1/buildhash.1
/usr/man/man1/findaffix.1
/usr/man/man1/ispell.1   
/usr/man/man1/munchlist.1
/usr/man/man1/sq.1
/usr/man/man1/tryaffix.1
/usr/man/man1/unsq.1
/usr/man/man5/english.5
/usr/man/man5/ispell.5 

# rpm -qi ispell
Name        : ispell                       Relocations: (not relocateable)
Version     : 3.1.20                            Vendor: Red Hat Software
Release     : 22                            Build Date: Tue 07 Sep 1999 07:03:29 PM CEST
Install date: Thu 21 Oct 1999 10:15:50 PM CEST      Build Host: porky.devel.redhat.com
Group       : Applications/Text             Source RPM: ispell-3.1.20-22.src.rpm
Size        : 6351115                          License: GPL
Packager    : Red Hat Software <http://developer.redhat.com/bugzilla>
Summary     : The GNU interactive spelling checker program.
Description :
Ispell is the GNU interactive spelling checker.  Ispell will check a
text file for spelling and typographical errors.  When it finds a word
that is not in the dictionary, it will suggest correctly spelled words
for the misspelled word.

You should install ispell if you need a program for spell checking
(and who dosn't...).

# rpm -ql ispell

  
/usr/bin/buildhash
/usr/bin/findaffix
/usr/bin/icombine
/usr/bin/ijoin
/usr/bin/ispell
/usr/bin/munchlist
/usr/bin/spell
/usr/bin/sq
/usr/bin/tryaffix
/usr/bin/unsq
/usr/doc/ispell-3.1.20
/usr/doc/ispell-3.1.20/README
/usr/info/ispell.info.gz
/usr/lib/ispell
/usr/lib/ispell/american.hash
/usr/lib/ispell/americanmed+.hash
/usr/lib/ispell/americanxlg.hash
/usr/lib/ispell/british.hash
/usr/lib/ispell/britishmed+.hash
/usr/lib/ispell/britishxlg.hash
/usr/lib/ispell/english.aff
/usr/lib/ispell/english.hash
/usr/man/man1/buildhash.1
/usr/man/man1/findaffix.1
/usr/man/man1/ispell.1
/usr/man/man1/munchlist.1
/usr/man/man1/sq.1
/usr/man/man1/tryaffix.1
/usr/man/man1/unsq.1
/usr/man/man5/english.5
/usr/man/man5/ispell.5

# rpm -qa

3c5x9utils-1.0-3
apmd-3.0beta9-3
arpwatch-2.1a4-16
ash-0.2-18
at-3.1.7-11
audiofile-0.1.9-1
audiofile-devel-0.1.9-1
aumix-1.22.1-6
authconfig-2.0-2
autoconf-2.13-5
automake-1.4-5
awesfx-0.4.3a-2
basesystem-6.0-4
bash-1.14.7-16
bc-1.05a-4
bdflush-1.5-10
bind-utils-8.2.1-7
binutils-2.9.1.0.23-6
bison-1.28-1
byacc-1.9-11
bzip2-0.9.5c-1
cdecl-2.5-9
..
enz

Zoals je ziet wordt dit een lange onoverzichtelijke file. Je kan voor een complete lijst van de geinstalleerde software beter het onderstaande commando gebruiken:

# rpm -qa | sort > software.txt

Je hebt nu een file software.txt die alfabetisch is opgebouwd.

6. Probleem oplossingen

# rpm -Va
  
S.5....T c /etc/host.conf
S.5....T c /etc/printcap
S.5....T c /etc/profile
..?..... c /etc/securetty
S.5....T c /etc/services
.M......   /opt
missing    /var/state
missing    /var/state/misc
S.5....T c /etc/localtime
missing    /etc/default/useradd
S.5....T c /etc/bashrc
S.5....T c /etc/info-dir
..?.....   /usr/X11R6/bin/xload
S.5....T c /etc/X11/xdm/Xsession
S.5....T c /etc/X11/xdm/Xsetup_0
..?.....   /usr/X11R6/bin/Xwrapper
SM5....T c /usr/X11R6/lib/X11/fonts/misc/fonts.dir
S.5....T c /etc/syslog.conf
S.5....T c /etc/inittab
S.5....T c /etc/rc.d/init.d/functions
S.5....T c /etc/rc.d/rc.local
S.5....T c /etc/sysconfig/network-scripts/ifcfg-lo
S.5..UGT c /etc/X11/fs/config
..?..... c /etc/at.deny
missing    /var/spool/at/.SEQ
missing    /var/spool/at/spool

Let wel dit duurt een tijdje.

# rpm --rebuilddb
# rpm --help

# man rpm

7. Aanvullende Tips

Als je nog een tip hebt twijfel dan niet om hem te sturen, want als het een goed tip is komt hij in de Howto.