DNF5-MODULARITY(7) | dnf5 | DNF5-MODULARITY(7) |
BEZEICHNUNG
dnf5-modularity - Modularitäts-Übersicht
BESCHREIBUNG
Modularität ist eine alternative Möglichkeit zum Bauen, Organisieren und Ausliefern von Paketen. Weitere Details finden Sie hier: https://docs.pagure.org/modularity/.
DEFINITIONEN
- modulemd
- Jede Paketquelle kann modules-Metadaten mit modulemd-Dokumenten enthalten. Diese Dokumente enthalten Metadaten zu Modulen wie Name, Stream oder eine Paketliste.
- (nicht-modulares) Paket
- Paket, das zu keinem Modul gehört.
- modulares Paket
- Paket, das zu einem Modul gehört. Es wird in modulemd im Abschnitt artifacts aufgeführt. Modulare Pakete können auch durch die gesetzte RPM-Kopfzeile %{modularitylabel} identifiziert werden.
- (Modul-)Stream
- Ein Stream ist eine Sammlung von Paketen, eine virtuelle Paketquelle. Sie
wird aus Name und Stream aus modulemd gebildet, durch
einen Doppelpunkt getrennt, zum Beispiel »postgresql:9.6«.
Modul-Streams können active oder inactive sein. active bedeutet, dass die RPM-Pakete aus diesem Stream in die Gruppe der verfügbaren Pakete aufgenommen werden. Pakete aus inactive-Streams werden herausgefiltert. Streams sind active, wenn sie entweder als default markiert oder durch eine Benutzeraktion explizit active sind. Streams, die Abhängigkeiten von default- oder active-Streams erfüllen, gelten ebenfalls als active. Zu einem bestimmten Zeitpunkt kann nur ein Stream eines bestimmten Moduls active sein.
PAKETFILTERUNG
Ohne Module werden standardmäßig Pakete mit der höchsten Versionsnummer verwendet.
Modul-Streams können Pakete mit niedrigeren Versionen verteilen als in den für das Betriebssystem verfügbaren Paketquellen verfügbar sind. Um solche Pakete für Installationen und Aktualisierungen verfügbar zu machen, werden nicht-modulare Pakete herausgefiltert, wenn ihr Name oder ihr Bereitstellungsname mit einem modularen Paketnamen aus einem aktivierten, standardmäßigen oder abhängigen Stream übereinstimmt. Modulare Quellpakete führen nicht dazu, dass nicht-modulare Binärpakete herausgefiltert werden.
DEMODULARISIERTE RPMS
Enthält die Namen der RPMs, die von der Paketfilterung für einen bestimmten Modul-Stream ausgeschlossen sind. Wenn sie im letzten aktiven Modul definiert sind, werden nicht-modulare RPMs mit gleichem Namen oder derselben Bereitstellung (»Provides:«), die zuvor herausgefiltert wurden, wieder auftauchen.
HOTFIX-PAKETQUELLEN
In besonderen Fällen möchte ein Benutzer einzelne Pakete, die außerhalb von Modul-Streams bereitgestellt werden, auswählen und zusammen mit Paketen aus den aktiven Streams bereitstellen. Normalerweise werden solche Pakete durch Ausfallsicherungsmechanismen herausgefiltert oder vom System abgewiesen. Um zu erreichen, dass das System Pakete aus einer Paketquelle unabhängig von ihrer Modularität verwendet, geben Sie in der .repo-Datei module_hotfixes=true an. Dies schließt die Paketquelle von der Paketfilterung aus.
Bitte beachten Sie, dass die Hotfix-Pakete die Modulpakete nicht außer Kraft setzen; sie werden lediglich Teil der Menge der verfügbaren Pakete. Die Werte des Pakets für Epoch, Version und Release bestimmen, ob das Paket das neueste ist.
AUSFALLSICHERUNGSMECHANISMEN
PAKETQUELLEN MIT MODUL-METADATEN SIND NICHT VERFÜGBAR
Wenn eine Paketquelle mit Modul-Metadaten nicht verfügbar ist, muss Paketfilterung dennoch weiter funktionieren. Nicht-modulare RPMs müssen weiterhin unverfügbar bleiben und dürfen das System niemals erreichen.
Dies geschieht, wenn …
- … ein Benutzer eine Paketquelle mit --disable-repo deaktiviert oder --repo verwendet.
- … ein Benutzer eine .repo-Datei von der Festplatte löscht.
- … eine Paketquelle nicht verfügbar ist und skip_if_unavailable=true gesetzt ist.
DNF5 speichert Kopien des neuesten modulemd für jeden aktiven Stream und verwendet diese, wenn kein modulemd für den Stream verfügbar ist. Dadurch wird die korrekte Funktion der Paketfilterung gewährleistet.
Die Kopien werden jedes Mal erstellt, wenn eine Transaktion aufgelöst wurde und gestartet wird. Dies schließt RPM-Transaktionen sowie alle Aktionen nach dem Schema dnf5 module <enable|disable|reset> ein.
Wenn die Ausfallsicherungsdaten verwendet werden, zeigt DNF5 solche Module als Teil der @modulefailsafe-Paketquelle an.
VERWAISTE MODULARE PAKETE
Alle Pakete, die als Teil eines Moduls erstellt werden, verfügen über die RPM-Kopfzeile %{modularitylabel}. Wird ein solches Paket Teil einer RPM-Transaktion und kann keinem verfügbaren modulemd zugeordnet werden, verhindert DNF5, dass es auf das System gelangt (das Paket ist verfügbar, kann aber nicht installiert, aktualisiert usw. werden). Pakete aus Hotfix-Paketquellen oder der Befehlszeilen-Paketquelle sind von den Ausfallsicherungsmechanismen nicht betroffen.
AUTOR
Siehe AUTHORS.md in der dnf5-Quelldistribution.
COPYRIGHT
Mitwirkende am DNF5-Projekt.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.
25. August 2025 |