![]() |
|
||||||||||||||||||||
|
|||||||||||||||||||||
|
|||||||||||||||||||||
von Elisabeth Bauer
Software kommt unter Linux in zwei Varianten daher: Da sind zum einen Archive mit dem Quelltext des Programms, typischerweise mit der Dateiendung tar.gz oder tar.bz2. Um ein solches Programm zu installieren, braucht der Anwender einen Compiler, der den Quelltext in ein ausführbares Programm übersetzt. Dieses Verfahren ist jedoch umständlich und gerade für den Einsteiger nicht leicht zu bewältigen. Die meisten Linux-Distributionen liefern deshalb Software bereits fertig kompiliert in Paketform aus. Das erleichtert die Installation erheblich. Fedora Core, Suse und Mandrake Linux verwenden dafür das Paketformat RPM.
Installiert der Anwender ein solches RPM-Paket über das grafische Tool seiner Distribution, packt dieses das Paket aus und befördert alle Dateien in die richtigen Verzeichnisse. Zusätzlich kümmert sich der Installer um Abhängigkeiten. Braucht ein Programm zum Funktionieren noch weitere Software, zeigt der Installer das an und spielt diese idealerweise gleich mit ein. Das geht dann gut, wenn alle benötigte Software auf den Distributions-CDs enthalten ist. Manchmal erscheint jedoch einfach nur eine Fehlermeldung, und der Benutzer muss das fehlende Paket selbst aufspüren.
Dann ist es hilfreich, wenn man mehr über das Paketverwaltungssystem weiß. In diesem Artikel zeigen wir, wie Sie sich Informationen zu Paketen beschaffen und wie Sie diese deuten.
Düster sieht es unter Fedora Core aus. Das grafische Paketverwaltungs-Tool bietet nur eine in Gruppen sortierte, begrenzte Auswahl der in der Distribution enthaltenen Software. Eine Suche und eine Detailanzeige zu einzelnen Paketen fehlen komplett. Fedora-Nutzern bleibt so nur der Griff zur Shell. Im Kasten "Ausflug auf die Kommandozeile" beschreiben wir den Umgang mit dem Kommandozeilen-Tool rpm. Unter anderen Distributionen lässt sich dies natürlich genauso anwenden.
Besser dran sind die Nutzer von Mandrake Linux: Dessen Installer RPMDrake liefert deutlich mehr Informationen als Fedora Core. Sie starten das Tool über den Eintrag Einstellungen / Paketierung / Software installieren im K-Menü. Die Suchmaske nimmt sowohl Programm- als auch Dateinamen an, eine fehlende Bibliothek ist so schnell gefunden. Normalerweise zeigt RPMDrake im Fenster rechts nur die Paketbeschreibung an, wenn Sie ein Paket anklicken. Markieren Sie die Checkbox Alle Informationen, erhalten Sie auch eine Liste der enthaltenen Dateien (Abbildung 1).
RPMDrake lässt sich allerdings nur dazu nutzen, Informationen über noch nicht installierte Software zu gewinnen. Wer mehr über die Pakete auf der Platte erfahren will, nutzt dazu das separate Programm Software entfernen, das genauso funktioniert.
Am komfortabelsten haben es Benutzer von Suse Linux. Dort zeigt bereits der Konqueror, wenn sie ein RPM-Pakte anklicken, detaillierte Informationen an (Abbildung 2). Im Reiter Beschreibung finden Sie die Versionsnummer, den Autor und eine mehr oder minder ausführliche Erklärung des Programms, Protokoll listet die Änderungen auf, Dateien alle im Paket enthaltenen Dateien. Klicken Sie auf Installiere Paket mit YaST, packt YaST das Paket aus und kopiert die Dateien in die angebenen Verzeichnisse.
Mehr über RPM-Pakete verrät YaST, den Sie über System / YaST im K-Menü starten. Wählen Sie links oben unter Filter die Option Suche aus, spürt YaST nicht nur Programmpakete auf, sondern beherrscht noch einige weitere Tricks.
Erhalten Sie bei der Installation eines Pakets etwa die Fehlermeldung, ein bestimmtes Programm fehle, können Sie dort das Paket finden, das die gesuchten Dateien -- meistens sind es Bibliotheken -- enthält. Geben Sie dazu den Dateinamen, zum Beispiel libogg.so.0, ein und markieren Sie die Checkbox bei Provides. Die Suche wirft nun das Paket libogg aus. Ein Klick auf den Reiter Abhängigkeiten verrät, warum: Im Feld beinhaltet ist die gesuchte Datei eingetragen (Abbildung 3). Dort stehen üblicherweise alle wichtigen Dateien, die das Paket für andere Programme bereitstellt.
In den Feldern darunter sehen Sie die Programme und Bibliotheken, von denen dieses Paket wiederum abhängt. Um Libogg zu installieren, müssen alle dort aufgelisteten Dateien im System vorhanden sein oder mitinstalliert werden. Interessant ist auch das Feld Konflikt darunter: Manche Programme können nicht zusammen auf einem System existieren. Zum Beispiel darf es in der Regel nur einen Mail-Server geben. Versuchen Sie ein solches Programm einzuspielen, müssen Sie das vorhandene zuerst entfernen.
Beschränkt man sich auf die bei seiner Distribution mitgelieferte Software, lösen die Installer YaST, RPM-Drake und Fedoras Paketverwaltung Abhängigkeiten automatisch auf und spielen die nötigen Zusatzpakete ein. Doch wer hin und wieder ein Programm aus dem Internet installiert, gerät recht schnell in Abhängigkeitskonflikte. Dann heißt es, die fehlenden Pakete ebenfalls im Internet aufzuspüren.
Oft genügt schon die Eingabe des Programmnamens zusammen mit Ihrer Distribution, Version und dem Stichwort rpm in eine normale Suchmaschine wie Google. Glücklicherweise gibt es jedoch auch spezielle Suchmaschinen [2]. http://tettnang.freshrpms.net/ ist eine wahre Fundgrube für Fedora-Benutzer, auf RPMSeek (http://www.rpmseek.com/) finden Sie Pakete für zahlreiche Distributionen. Suse-Nutzer mit schneller Netzanbindung werden an http://hitme.resetbutton.de/pin/ ihre Freude haben. Geben Sie in das Web-Formular einen Dateinamen ein und wählen Ihre Distributionsversion aus, verrät das Tool nicht nur, auf welcher CD sich das passende Paket befindet, sondern bietet auch gleich Download-Links an. (eba)
| Ausflug auf die Kommandozeile |
|
Grafische Frontends bieten in der Regel nur einen Bruchteil der Möglichkeiten des Kommandos rpm. Genau wie über YaST unter Suse Linux, RPMDrake unter Mandrake und Fedoras Paketverwaltungs-Tool installieren oder entfernen Sie mit rpm Software-Pakete [1]. Dazu müssen Sie als Administrator angemeldet sein, auf der Kommandozeile nutzen Sie dafür das Kommando su. Doch auch dem normalen Benutzer verrät rpm eine ganze Menge an Informationen. rpm -qa gibt alle auf dem System installierten Pakete aus. Damit Sie in der Liste bequem blättern können, leiten Sie das Ergebnis an den Pager less weiter: rpm -qa | less zeigt jeweils nur soviel an, wie ins Terminal-Fenster passt, mit der Leertaste springen Sie zur nächsten Seite. Mit der Taste [Q] beenden Sie das Programm. Haben Sie so den Namen des gesuchten Pakets herausgefunden, gibt rpm -qi paketname die Beschreibung aus, die auch die grafischen Tools anzeigen. Eine Liste aller Dateien im Paket erhalten Sie mit rpm -ql paketname Auch die Abhängigkeiten zeigt rpm mit zwei Optionen an. Wer zum Beispiel wissen will, welche Dateien Mozilla anbietet, die von anderen Programmen benötigt werden, ruft rpm -q --provides mozilla auf. Die Dateien und Pakete, die Mozilla selbst zur Installation braucht, wirft der Befehl rpm -q --requires mozilla aus. Die gleichen Abfragen funktionieren auch mit aus dem Internet heruntergeladenen Paketen, die Sie noch nicht installiert haben. Dort müssen Sie jedoch den vollen Dateinamen und Pfad angeben und als Option ein p ergänzen. Zum Beispiel zeigt rpm -qpl scribus-1.1.7-0.fdr.4.2.i386.rpm den Inhalt des Scribus-RPM-Pakets von der EasyLinux-Download-Seite an. In der Abbildung sehen Sie die requires-Abfrage für das Mozilla-Paket auf der Suse-CD. Manchmal will man nicht wissen, welche Dateien in einem Paket stecken, sondern zu welchem Paket eine bestimmte Datei gehört. Auch dafür bietet rpm eine Option. Geben Sie rpm -qf dateiname ein, zeigt es den Paketnamen an. So verrät rpm -qf /usr/bin/konsole (unter Suse rpm -qf /opt/kde3/bin/konsole) dass das Programm konsole im Paket kdebase steckt. Bei diesem Aufruf müssen Sie immer den vollen Pfad einer Datei angeben. In welchem Verzeichnis ein Programm liegt, finden Sie mit dem Kommando which programmname heraus. |
| Infos |
|
[1] Hans-Georg Eßer: "Mit der RPM-Datenbank sprechen", EasyLinux 07/2003, S. 78 ff. http://www.easylinux.de/Artikel/ausgabe/2003/07/078-rpmdb/
[2] Hans-Georg Eßer: "Software suchen und finden", EasyLinux 06/2003, S. 14 ff. http://www.easylinux.de/Artikel/ausgabe/2003/06/014-finden |
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.
Druckerfreundliche Version |
Feedback zu dieser Seite |
Datenschutz |
© 2012 Linux New Media AG |
Last modified: 2007-01-25 17:30
[Linux-Magazin]
[LinuxUser]
[Linux-Community]
[Admin-Magazin]
[Ubuntu User]
[Smart Developer]
[Linux Events]
[Linux Magazine]
[Ubuntu User]
[Admin Magazine]
[Smart Developer]
[Linux Magazine Poland]
[Linux Community Poland]
[Linux Magazine Brasil]
[Linux Magazine Spain]
[Linux Technical Review]