Home / LinuxUser / 2006 / 10 / Hilfe zur Selbsthilfe: Paketverwaltung

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Sauber einsortiert

Hilfe zur Selbsthilfe: Paketverwaltung

25.03.2009 Moderne Distributionen bieten zusätzlich in der Regel einen komfortablen Paketmanager, um Programme zu verwalten. Mit dem richtigen Know-how kitzeln Sie zusätzlich viele Information aus diesen heraus.

Freie Software bietet die Flexibilität, Programme nach eigenen Wünschen mit den entsprechenden Optionen aus dem Quelltext zu kompilieren und an eine beliebige Stelle zu installieren [1]. Was bei einzelnen Programmen noch recht einfach geht, fällt bei großen Softwarepaketen wie X.org, KDE oder GNOME ziemlich aufwändig aus. Wer oft auf diese Weise Programme installiert, aktualisiert oder entfernt, hat bald alle Hände voll zu tun und kommt nicht mehr dazu, das zu erledigen, was er eigentlich mit dem Computer tun wollte.

Deshalb übernehmen Linux-Distributoren diese Arbeit und verpacken einzelne Programme und komplette Desktop-Umgebungen in Pakete, die Sie mit Hilfe eines Paketmanagers bequem installieren, aktualisieren und auch wieder entfernen (siehe Tabelle "Paketquellen der Linux-Distributoren"). Zudem stellen einzelne Entwickler oder Gruppen von Entwicklern zusätzliche Pakete bereit (siehe Tabelle "Zusätzliche Paketquellen" und [2]). Wer das ein oder andere Programm selbst baut, erstellt sich bei Bedarf ein eigenes Paket [3][4].

Paketquellen der Linux-Distributoren

Distribution

Quelle

Beschreibung

Debian http://packages.debian.org Paketsuche mit Download-Möglichkeit
Debian http://www.debian.org/mirror/list Liste der Debian-Mirrors
Fedora http://fedora.redhat.com/Download/mirrors.html Liste der Fedora-Mirrors
SuSE http://en.opensuse.org/Mirrors_Released_Version Liste der SuSE-Mirrors

Zusätzliche Paketquellen

Paket-Format

Quelle

Beschreibung

DEB (Debian) http://www.backports.org Enthält aus Debian Testing auf Debian Stable rückportierte Pakete
DEB (Debian) http://www.debian-unofficial.org http://www.debian-unofficial.org Pakete, die nicht im offiziellen Debian-Repository enthalten sind
DEB (Debian) http://www.debian-multimedia.org Zusätzliche Multimedia-Pakete
DEB (Debian) http://apt-get.org Liste mit zusätzlichen Paketquellen mit Paket-Suchmöglichkeit
RPM (SuSE) http://packman.links2linux.de Vor allem Software, die in Distributionen nicht oder nicht aktuell vorhanden ist
RPM (SuSE) http://linux01.gwdg.de/~pbleser Viele Pakete
RPM (SuSE) http://en.opensuse.org/Additional_YaST_Package_Repositories Liste mit zusätzlichen Paketquellen
RPM (Fedora) http://rpm.livna.org Zusätzliche Multimedia-Pakete
RPM (Fedora) http://www.wlug.org.nz/FedoraRepositories Liste mit zusätzlichen Paketquellen und Hilfen

Pakete liegen üblicherweise im DEB- oder im RPM-Format vor. Einige Distributionen verwenden andere Formate: Slackware verwendet tar.gz-Archive. Der Paketmanager Portage von Gentoo hingegen nutzt Rezepte für das Bauen von Software aus dem Quelltext, sogenannte EBuilds.

DEB- oder RPM-Pakete enthalten plattform-unabhängige Daten und bereits für die gewünschte Plattform fertig durchkompilierte Programme in binärer Form.

Ein solche Binärpaket entsteht aus einem Quelltext-Paket. Dieses enthält den Quelltext der Software, eine Bauanleitung und gegebenenfalls zusätzliche, manchmal distributions-spezifische Patches, um eventuell vorhandene Fehler zu beheben oder das Programm an besondere Gegebenheiten der jeweiligen Distribution anzupassen.

Ob sich ein Paket zu einer bestimmten Distribution passt, entscheidet sich nicht alleine am Paketformat. Oft ist es möglich, ein Paket einer anderen Distribution, die das gleiche Paketformat verwendet, zu installieren. Manchmal sind die das Paket betreffenden Unterschiede zwischen zwei Distributionen jedoch zu groß dafür.

Das Paket-Management ist in zwei Ebenen unterteilt. Low-Level-Paketmanager arbeiten mit einzelnen Paketdateien, während High-Level-Paketmanager Paket-Quellen aus dem Internet mit einbeziehen und meist die Abhängigkeiten regeln.

Low-Level-Paketmanager

Der Low-Level-Paketmanager verwaltet die lokale Paketdatenbank des Systems (siehe Low-Level-Paketmanager). Er installiert, aktualisiert oder löscht Pakete. Zudem ist er in der Lage, eine Liste der installierten Pakete oder Informationen über ein installiertes Paket anzuzeigen. Für Debian-Pakete ist dpkg zuständig und für RPM-Pakete rpm.

Low-Level-Paketmanager

Funktion

DPKG

RPM

Paket installieren dpkg -i | --install Paket-Dateiname rpm -i | --install Paket-Dateiname
Paket entfernen dpkg -r | --remove Paketname rpm -e | --erase Paketname
Paket-Informationen anzeigen dpkg -s | --status Paketname rpm -qi Paketname
  dpkg -I | --info Paket-Dateiname rpm -qpi Paket-Dateiname
Pakete auflisten dpkg -l rpm -qa
Pakete suchen dpkg -l "Suchmuster " rpm -qa "Suchmuster "
Paket-Dateien auflisten dpkg -L | --listfiles Paketname rpm -ql Paketname
  dpkg -c | --contents Paket-Dateiname rpm -qpl Paket-Dateiname
Zuordnung Paket/Datei dpkg -S || --search Dateiname rpm -qf Dateiname

Laden Sie eine Paketdatei aus dem Internet und verwenden Sie dpkg -i Paket-Dateiname oder rpm -i Paket-Dateiname, um die enthaltene Software zu installieren. Mit dpkg -r Paketname oder rpm -e Paketname deinstallieren Sie ein Paket. Das funktioniert, weil der Paketmanager weiß, welche Dateien zu einem Paket gehören. Da das Paket bereits installiert und somit dem Paketmanager bekannt ist, geben Sie nun statt dem Paket-Dateinamen nur den Namen des Paketes an.

Die Installation eines Paketes erfordert mitunter die Installation weiterer Pakete, etwa weil eine von einem Programm benötigte Bibliothek oder vom Programm benötigte Daten noch nicht installiert sind[5]. Sowohl dpkg als auch rpm weisen auf eine solche Paketabhängigkeit hin und brechen in diesem Fall die Installation ab.

Installieren Sie die noch fehlenden Pakete, um schließlich das gewünschte Paket zu installieren. Doch eventuell hängen die zusätzlich installierten Pakete von weiteren Paketen ab, die Sie ebenfalls installieren müssen. Die Installation eines einzelnen Programms wird so mitunter ziemlich aufwendig.

High-Level-Paketmanager

Hier kommt ein High-Level-Paketmanager zum Einsatz (siehe High-Level-Paketmanager). Dieser lädt das Paket samt aller Abhängigkeiten aus einer Paketquelle, einem Repository, und verwendet einen Low-Level-Paketmanager, um das eigentliche Paket und alle abhängigen Pakete zu installieren. Dieser Vorgang heißt auch Auflösen von Abhängigkeiten. Ein solches Repository ist ein FTP- oder Web-Server im Internet, eine CD oder DVD, ein lokaler Spiegel oder ein beliebiges Verzeichnis.

High-Level-Paketmanager

Funktion

Apt/Aptitude

Rug

YaST

Yum

Paketliste aktualisieren apt-get | aptitude update automatisch oder rug refresh automatisch automatisch oder yum check-update
Alle aktualisierbaren Pakete anzeigen apt-get -s | aptitude -s upgrade rug list-updates Software | Online-Update oder Software | System-Update yum list updates
Alle veralteten Pakete aktualisieren apt-get | aptitude upgrade oder apt-get | aptitude dist-upgrade rug update Software | Online-Update oder Software | System-Update oder Installer von der Suse-DVD yum update
Paket(e) installieren apt-get | aptitude install Paketname rug install Paketname yast -i Paketname oder in Paketauswahl [Leertaste] bis YaST + anzeigt yum install Paketname
Paket aktualisieren apt-get | aptitude install Paketname rug install Paketname In Paketauswahl [Leertaste] bis YaST > anzeigt yum update Paketname
Paket entfernen apt-get | aptitude remove Paketname rug remove Paketname [Leertaste] bis YaST - anzeigt yum remove Paketname
Paketinformationen anzeigen apt-cache show Paketname rug info Paketname Software | Software installieren oder löschen | Informationen yum info Paketname
Alle Pakete auflisten apt-cache search ".*" rug search Software | Software installieren oder löschen yum list
Pakete suchen apt-cache search Suchwort(e) (Regulärer Ausdruck möglich) rug search Suchwort(e) SoftwareSoftware installieren oder löschen, Filter Suche yum list Suchwort(e) (Regulärer Ausdruck möglich)
Zuordnung Datei/Paket apt-file search Dateiname rug package-file Dateiname SoftwareSoftware installieren oder löschen, Filter Suche mit RPM "Provides" yum provides Dateiname

Ein High-Level-Paketmanager bietet zudem noch eine andere wichtige Funktion: Durch seinen Zugriff auf eine oder mehrere Paketquellen schafft er es, das gesamte System mit allen installierten Paketen auf den aktuellen Stand zu bringen. Dazu vergleicht der Paketmanager die Version jedes installierten Paketes mit der neuesten verfügbaren Version und aktualisiert das Paket gegebenenfalls – eine enorme Arbeitsersparnis gegenüber einem manuellen Vorgehen.

Während YaST bislang produktiv nur mit RPM-Paketen unter SuSE zum Einsatz kommt, kommen andere Paketmanager universeller zum Einsatz: So funktioniert der RPM-basierte Yum (Yellow Dog Updater, Modified) unter Yellow Dog Linux, Fedora und SuSE [6] [7]. Debians Paketmanager Apt (Advanced Package Tool) ist mit Apt4rpm unter anderem auf den RPM-basierten Distributionen SuSE, Mandriva und Fedora lauffähig [8][9][10][11]. Auf Debian-basierten Distributionen empfiehlt sich, das auf der APT-Bibliothek Libapt aufsetzende neue Frontend Aptitude zu verwenden [12].

Vielversprechend erscheint der sich noch im Betastadium befindliche Smart Package Manager, der mit Debian-, RPM- und Slackware-Paketen klarkommt und innovative Konzepte für das Auflösen von Abhängigkeiten bietet [13]. Die Ubuntu-Entwickler ziehen in Betracht, SmartPM in einer zukünftigen Version zu integrieren. Mit Einschränkungen ist das Tool bereits jetzt unter anderem mit Debian, Ubuntu, Suse und Fedora verwendbar (siehe dazu der Artikel zu SmartPM in dieser Ausgabe).

SuSE 10.1 verwendet mit Libzypp, dem Zenworks Management Daemon (ZMD) und dem kommandozeilenorientierten Paketmanager Rug einen Ansatz zum Paketverwalten, der zentralisiertes Software-Management in großen Netzwerken ermöglichen soll [14]. Die Lösung basiert auf Ximians Red Carpet und Novells Zenworks. YaST setzt auf dieser Infrastruktur auf, sofern Sie installiert ist.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

1726 Hits
Wertung: 97 Punkte (6 Stimmen)

Schlecht Gut

Infos zum Autor

Martin Steigerwald

Martin Steigerwald

Martin Steigerwald arbeitet als Trainer, Consultant und Systemadministrator bei der team(ix) GmbH in Nürnberg. Schwerpunkte seiner Tätigkeit sind Linux-Schulungen, die Konzeption, Installation und Wartung solider IT-Infrastruktur auf Basis von Debian Linux sowie Second Level Support für Linux als Business-Desktop bei Kunden von teamix(ix).


Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...