Skip navigation

Linux User Group Oldenburg [Tux]

RPM for Beginners

Von Ralf Springwald/mgs

Der Paketmanager RPM hilft, das Linux-System zu warten, neue Pakete einfach zu installieren oder Informationen �ber installierte Pakete anzuzeigen. Dieser Artikel zeigt ein paar einfache Abfragen mit Hilfe des Paketmangers rpm am Beispiel von xterm

Als Quelle habe ich rpm --help verwendet. Im Handbuch von RedHat ist es ebenfalls so wie nachfolgend beschrieben.

Inhalt

  1. Welche Pakete sind installiert?
  2. In welchem Paket ist xterm enthalten?
  3. Zeige den Paketheader an
  4. Welche Dateien geh�ren sonst noch zu xf86-3.3.6-20?
  5. Welche Abh�ngigkeiten bestehen zu anderen Paketen?
  6. Welche anderen Pakete benutzen xf86-3.3.6-20?

Welche Pakete sind installiert?

Mit dem Befehl rpm -qa durchsucht rpm die gesamte Liste der installierten Pakete und gibt die Namen aus. Diese enthalten meistens auch die jeweilige Versionsnummer.

In welchem Paket ist xterm enthalten?

Mit dem Befehl rpm -qf sucht rpm in der internen Datenbank nach der angegebenen Datei und zeigt das Paket an, das diese Datei enth�lt. Da ich nicht wei�, wo nun genau xterm im Dateisystem liegt, verwende ich die Ausgabe von "type" f�r rpm als Parameter:

  # rpm  -qf `type -p xterm`
  xf86-3.3.6-20

So kenne ich jetzt den Paketnamen der xterm enth�lt.

Zeige den Paketheader an

Wenn der Paketname bekannt ist, k�nnen die Informationen zu diesem Paket direkt abgefragt werden:

  # rpm -qi xf86-3.3.6-20
  Name        : xf86                         Relocations: (not relocateable)
  Version     : 3.3.6                             Vendor: SuSE GmbH, Nuernberg, Germany
  Release     : 20                            Build Date: Sat Mar 11 10:34:52 2000
  Install date: Tue Jul  4 11:50:56 2000      Build Host: minkowski.suse.de
  Group       : X11/XFree86                   Source RPM: xf86-3.3.6-20.src.rpm
  Size        : 19070703                         License: 1994-2000 The XFree86 Project, Inc.
  Packager    : feedback@suse.de
  Summary     : Basic X11 package
  Description :
  Contains XFree86tm and some other programs from the contrib-directory.

  Authors:
  --------
      Alan Hourihane 
      .... usw 

  SuSE series: x

Welche Dateien geh�ren sonst noch zu xf86-3.3.6-20?

Oft ist es von Bedeutung, welche Dateien in einem Paket enthalten sind. Wenn Modifikationen vorgenommen werden m�ssen, dann findet man so vielleicht die Datei, die man bearbeiten mu�.

  # rpm -ql xf86-3.3.6-20|more
  /etc/pam.d/xdm
  /usr/X11
  /usr/X11R6/bin/Backarrow2BackSpace
  /usr/X11R6/bin/Backarrow2Delete
  /usr/X11R6/bin/SuperProbe
  /usr/X11R6/bin/X
  /usr/X11R6/bin/Xmark
  ..... usw

Welche Abh�ngigkeiten bestehen zu anderen Paketen?

Auch zus�tzliche Abh�ngigkeiten sind wichtig. So findet man heraus, von welchen anderen Paketen ein Paket abh�ngt, von welchen anderen Paketen Dateien oder Funktionen verwendet werden. Wenn ein Programm nicht funktioniert, kann es daran liegen, da� nicht alle Abh�ngigkeiten aufgel�st wurden und das eine oder andere Paket nicht installiert ist.

Die Abh�ngigkeiten erh�lt man mit dem folgenden Befehl:

  # rpm --requires -q xf86-3.3.6-20
  xshared  
  windowmanager  
  sax  
  xfsetup  
  xdmbgrd  
  x_server  
  xterm_program  
  /bin/sh  
  /bin/bash  
  /bin/sh  
  ld-linux.so.2  
  libICE.so.6  
  libSM.so.6  
  libX11.so.6  
  libXIE.so.6  
  libXaw.so.6  
  libXext.so.6  
  libXi.so.6  
  libXmu.so.6  
  libXt.so.6  
  libXtst.so.6  
  libc.so.6  
  libc.so.6(GLIBC_2.0)  
  libc.so.6(GLIBC_2.1)  
  libcrypt.so.1  
  libcrypt.so.1(GLIBC_2.0)  
  libdl.so.2  
  libm.so.6  
  libm.so.6(GLIBC_2.0)  
  libpam.so.0  
  libpam_misc.so.0  
  libpthread.so.0  
  libpthread.so.0(GLIBC_2.1) 

Welche anderen Pakete benutzen xf86-3.3.6-20?

Wer auf seinem Rechner aufr�umen m�chte und Pakete l�schen m�chte, sollte vorher sicherstellen, da� keine anderen Pakete diese verwenden. Das findet man mit dem folgenden Befehl heraus:

rpm --whatrequires -q xf86-3.3.6-20