Libzypp
aus openSUSE, der freien Wissensdatenbank
Inhaltsverzeichnis |
| libzypp | |
|---|---|
| | |
| Entwickler: | Novell |
| Versionen in Distributionen von openSUSE; aktuelle Versionen für ihre Distribution finden Sie (evtl.) im Build Service: | |
| Lizenz: | GPL |
| Deutschsprachig: | nein |
| Web-Seite: | |
Paketverwaltung und Lösen von Paketabhängigkeiten
SUSE Linux nutzt RPM als Paketformat. Das Grundwerkzeug zum Installieren, Entfernen und zur Paketsuche ist das Programm rpm (RPM Paketverwalter).
rpm überprüft, ob die Anforderungen eines Pakets erfüllt werden. Wenn Paket X beispielsweise die Bibliothek Y benötigt und sie versuchen, Paket X zu installieren, ohne Bibliothek Y installiert zu haben, wird rpm Paket X nicht installieren und ihnen lediglich mitteilen, dass es zuerst einmal Bibliothek Y benötigt. rpm verfügt nicht über die Möglichkeit, automatisch das Paket zu installieren, welches Bibliothek Y enthält.
Es gibt verschiedene Programme die RPM (und andere Paketformate) benutzen, um folgende Praxisprobleme mit Hilfe einer komfortablen Benutzerschnittstelle zu lösen:
- Installieren eines Pakets und all seiner Abhängigkeiten
- Herunterladen des Pakets von entfernten Servern oder lokalen Medien
- Entfernen von Paketen
- Pakete durch neuere Versionen aktualisieren
SUSE Linux 10.0 bietet die folgenden Programme um das zu erledigen:
- YOU - Das YaST Online Update (nur Aktualisierungen)
- YaST-Paketverwaltung ("yast sw_single") zum Installieren und Entfernen (aber keine Aktualisierung)
- APT-RPM als Alternative zu YaST und YOU
- yum als weitere Alternative zu YaST und YOU
In SUSE Linux 10.1 integriert SUSE eine neue Paketverwaltungsbibliothek namens "libzypp".
Libzypp führt SUSEs YaST2-Paketverwaltung und Ximians libredcarpet zusammen. Bei Novell wurden bis jetzt zwei Lösungen benutzt - Red Carpet und YaST Paketverwaltung - welche nun zu einer besseren Lösung zusammengeführt werden sollen.
Ab openSUSE 10.2 ersetzt Zypper das bis dahin genutzt Y2pmsh und setzt ebenfalls auf "libzypp" auf.
Die Vorteile für SUSE Linux sind:
- Eine bessere Auflösung von Abhängigkeiten als zuvor.
- Mehr Informationen darüber, warum ein Paket installiert oder keine Lösung gefunden wird.
- Eine bessere Integration all der Möglichkeiten, die über Jahre hinweg in die bisherigen Paketverwalter integriert wurden.
- Eine Kommandozeilenschnittstelle ("rug")
- Vereinheitlichte Handhabung von Paketen *und* Aktualisierungen
- Abhängigkeitslösungen für Aktualisierungspakete
- Einfachere Handhabung von Selektionen (welche nun "patterns/Schemata" genannt werden)
- Verwaltung aus der Ferne (bis jetzt noch nicht in SUSE Linux 10.1)
- Zusätzliche Paketquellen während der Installation (keine grafische Benutzerschnittstelle dafür in SUSE Linux 10.1)
- Mehr Flexibilität in der Handhabung von Paketquellen, beispielsweise zusätzliche patterns/Schemata für jedes Paketdepot.
Kataloge
Externe Paketquellen werden Kataloge genannt, wobei viele verschiedene Katalogtypen unterstützt werden:
- YUM metadata
- YaST-Quellen
- Zenworks Server
- OpenCarpet Server
- Red Carpet Enterprise Server
Auf diese Kataloge kann sowohl lokal als auch aus der Ferne über Protokolle wie FTP und HTTP zugegriffen werden.
Die neue Bibliothek wird sowohl vom YaST-Paketverwalter ("yast sw_single") als auch von der zen-Programmsammlung benutzt.
Zen-Programme
Diese Progamme setzen voraus, dass der zmd-Daemon läuft. zmd erlaubt die lokale und entfernte Administration eines Systems und setzt die libzypp-Bibliothek voraus.
Die folgenden Programme kommunizieren mit zmd:
- rug: Kommandozeilenklient
- zen-updater: Einfaches Aktualisierungswerkzeug
- zen-remover: Werkzeug zum Entfernen von Paketen
- zen-installer: Werkzeug zum Hinzufügen von Paketen
- OpenSUSE Updater Applet: Beachrichtigung über Aktualisierungen für KDE
Vom neuen Paketverwalter ersetzte Programme
Veränderungen gegenüber existierenden Programmen (wie sie in SUSE Linux 10.0 benutzt werden ) sind:
- susewatcher wurde durch zen-updater und das OpenSUSE Updater Applet ersetzt
- YOU (Yast Online Update) wurde angepasst um mit Libzyyp zu arbeiten
- Automatisches Aktualisieren (yast2 online_update im cron) wurde durch 'rug' ersetzt

