Chargenverwaltung. Was ist ein Paketmanager? Paket-Caching konfigurieren

Wir werden verschiedene Linux-Paketmanager vergleichen. Unter allen Linux-Distributionen ist eines der Dinge, die sie gemeinsam haben, die Notwendigkeit, neue Softwarepakete auf dem System zu installieren. Je nach Distribution stehen verschiedene Paketmanager zur Verfügung, mit denen Sie Pakete einfach und schnell installieren, verwalten und entfernen können. Paketmanager sind sehr gut darin, Installationen zu vereinfachen, mit gemeinsamen Installationsspeicherorten und -konfigurationen. In diesem Artikel werden wir die verschiedenen verfügbaren Paketmanager besprechen, welche Distributionen sie verwenden können und was sie einzigartig macht. Wir sehen uns Debian-basierte Paketmanager, RedHat Enterprise Linux (RHEL)-Paketmanager und andere Paketmanager an, die speziell für Sie entwickelt wurden.

Debian-basierte Paketmanager

Ubuntu und Debian gelten heute als eines der am weitesten verbreiteten Linux-Desktop-Betriebssysteme auf dem Markt. Ihre Paketmanager sind getrennt, wobei das Paketverwaltungssystem der untersten Ebene "dpkg" ist, kurz für "Debian-Paket". Dies ist eine Barebone-Paketverwaltungssoftware mit Tools zum Installieren, Entfernen und Erstellen von Paketen.

Was dpkg fehlt, sind erweiterte Funktionen - Funktionen wie das Herunterladen von Paketen aus dem Internet oder das automatische Installieren von Abhängigkeiten sind mit dpkg nicht möglich. Die Möglichkeit, dies über das Internet zu tun, ist sehr nützlich, da Benutzer Repositories für Pakete hinzufügen können, was die Auswahl erheblich erhöht. Software, die einfach auf dem System installiert werden kann. Es kann auch den Softwareinstallationsprozess erheblich vereinfachen, da es ein Paket mit nur einem Befehl leicht finden und installieren kann.

APT-Paketmanager

Hier kommen Schnittstellen wie apt und aptitude ins Spiel. APT, kurz für Advanced Package Tool, ist viel fortschrittlicher in der Funktionalität als dpkg. Es kann auch Pakete installieren, entfernen und erstellen, aber seine Funktionalität geht viel weiter. APT kann Ihre Pakete automatisch aktualisieren, Abhängigkeiten installieren und Ihre Pakete automatisch aus dem Internet herunterladen. Es ist einer der am häufigsten auf modernen Distributionen installierten Paketmanager, wobei Ubuntu, Debian und die meisten anderen Debian-basierten Betriebssysteme vorinstalliert sind.

Aptitude-Paket-Manager

Aptitude ist APT sehr ähnlich und bietet viele der gleichen Funktionen. Es kann jedoch einige zusätzliche Funktionen bieten, z. B. sichere Updates, mit denen Benutzer ihre Pakete aktualisieren können, ohne ihre vorhandenen Pakete aus dem System zu entfernen. Es ist auch ein Paket erhältlich, das verhindert Automatisches Update bestimmte Pakete.

Diese beiden Paketmanager verwenden dpkg tatsächlich für grundlegende Operationen und verwenden nur ihre eigene Software, um Pakete herunterzuladen und zu verwalten.

RedHat Enterprise Linux (RHEL) Paketmanager

RPM-Paketmanager

RedHat und CentOS sind eines der am weitesten verbreiteten Serverbetriebssysteme, die heute auf Servern zu finden sind. Die hauptsächlich auf diesen Systemen installierte Paketverwaltungssoftware ist RPM, was die Arbeit des Red Hat Package Manager reduziert. Dieser Paketmanager führt auch grundlegende Operationen wie das Installieren und Entfernen von Paketen durch und kann wie dpkg auch keine Pakete verwalten oder sie direkt aus dem Web installieren.

YUM-Paketmanager

Wie Debian-basierte Betriebssysteme verfügen auch RHEL-Betriebssysteme über eine eigene Paketverwaltungssoftware. YUM, kurz für Yellow Dog Updater, ist die beliebteste Wahl als RPM-Schnittstelle. Es eröffnet viel mehr Optionen für RPM-Dateien durch Repositories, verfolgt, was auf dem System installiert ist, erleichtert die Aktualisierung und vieles mehr. Es ist das RHEL-basierte Äquivalent des APT-Paketmanagers.

DNF, kurz für Dandified Packaging Tool, ist eine modernere und erweiterte Version des YUM-Managers, die YUM-Funktionen enthält und gleichzeitig die Leistung und Ressourcennutzung verbessert. Im Moment verwendet nur Fedora diese Version der nächsten Generation von YUM, aber wir werden hoffentlich sehen, dass sie in Zukunft auf mehr Betriebssystemen eingeführt wird.

Es gibt mehrere andere Paketverwaltungstools für RPM-basierte Systeme wie up2date, urpmi und ZYpp. Sie sind jedoch nicht so weit verbreitet wie YUM oder DNF.

Andere Paketmanager

Manchmal erstellen Entwickler benutzerdefinierte Paketmanager, die für ihre Linux-Distributionen entwickelt wurden – diese werden normalerweise um das Betriebssystem herum entwickelt und sind nicht in Mainstream-Linux-Distributionen zu finden.

Pacman ist ein Paketmanager, der in Arch Linux zu finden ist. Pacman ist das einzige Paketverwaltungstool, das auf Arch zu finden ist, was es zu einem Nicht-Frontend macht. Arch Linux ist eine fortlaufende Version des Betriebssystems, bei der täglich Updates hinzugefügt werden. Es gibt nur wenige Pacman-Befehle zum Suchen, Installieren und Entfernen von Paketen. Dieser Paketmanager kann sich mit dem Internet verbinden und seine Pakete von dort kaufen, was ihn benutzerfreundlicher macht. Pacman ist jedoch darauf ausgelegt, Software aus dem Arch-Repository zu installieren, was die Installation aus Repositorys von Drittanbietern unmöglich macht.

ABS-Paketersteller

ABS, kurz für Arch Build System, ist ein System von Tools, mit denen sich installierbare Softwarepakete für Arch Linux erstellen lassen Quellcode. Dieses besteht aus mehreren Tools, die zusammenarbeiten, um Pakete zu erstellen. Diese Tools sind alle unabhängige Programme wie makepkg, pacman, asp usw. Die Art, ein Paket mit ABS zu erstellen/installieren, unterscheidet sich von der normalen Linux-Distribution. Anstatt vorkompilierte Pakete zu installieren, müssen Sie mithilfe des asp-Pakets eine PKGBUILD-Datei aus einem Svn- oder Git-Zweig erstellen. Von dort aus verwenden Sie den Befehl makepkg, der die PKGBUILD-Datei verwendet, um den Quellcode Ihres Systems herunterzuladen und zu kompilieren. Dies macht ABS zu einer etwas weniger intuitiven Methode zum Installieren von Paketen unter Arch Linux. Es hat auch mehrere andere Verwendungszwecke, z. B. die Einstellung bestehende Pakete oder Erstellen und Installieren eines benutzerdefinierten Kernels.

Port-Paket-Manager

Portage ist ein Paketmanager für Gentoo, ein nicht-hackiges Betriebssystem, das von Grund auf neu kompiliert werden muss, wenn es auf einem beliebigen System installiert wird. Es ist einer der fortschrittlichsten Paketmanager, der derzeit mit neuen Funktionen und Verbesserungen verfügbar ist.

Obwohl es viele Verwendungsmöglichkeiten für Paketverwaltungssoftware gibt, sind viele von ihnen darauf ausgelegt, die gleichen Aufgaben auszuführen. Prüfen Sie also am besten einfach, welches Paketverwaltungsprogramm für Ihre Anforderungen am besten geeignet ist.

PS. Wenn Ihnen dieser Beitrag beim Vergleich verschiedener Linux-Paketmanager gefallen hat, teilen Sie ihn bitte mit Ihren Freunden auf in sozialen Netzwerken Verwenden Sie die Schaltflächen auf der linken Seite, oder hinterlassen Sie einfach unten eine Antwort. Danke schön.

Update (9. April 2018): Einige Ungenauigkeiten bezüglich des ABS-Paketerstellungs-Toolkits behoben.

Was ist ein Paketmanager?

Paket-Manager Verfolgt, welche Programme auf Ihrem Computer installiert sind, und ermöglicht Ihnen, neue Programme einfach zu installieren, Programme auf neuere Versionen zu aktualisieren oder zuvor installierte Programme zu entfernen. Wie der Name schon sagt, befassen sich Paketmanager mit Pakete- Sätze von Dateien, die zusammen gepackt sind und als Gruppe installiert oder entfernt werden können.

Oft ist ein Paket nur ein eigenständiges Programm. Beispielsweise ein Instant-Messaging-Client Spiel befindet sich im gleichnamigen Debian-Paket. Andererseits ist es ganz normal, dass Programme aus mehreren miteinander verbundenen Paketen bestehen. Zum Beispiel ein Grafikeditor gimp besteht nicht nur aus dem Paket gimp, sondern auch aus dem Paket gimp-data; Optionale Pakete mit Add-Ons (mit esoterischen Daten, Dokumentation usw.) sind ebenfalls erhältlich. Mehrere kleine verwandte Programme können in einem Paket enthalten sein, zum Beispiel enthält das Paket fileutils mehrere gängige Unix-Befehle wie z ls , vgl usw.

Einige Pakete erfordern andere Pakete, um zu funktionieren. Unter Debian können Pakete abhängen aus anderen Paketen empfehlen, empfehlen, brechen sie bzw konfrontieren mit ihnen.

    Wenn Paket A von einem anderen Paket B abhängt, dann ist B für die korrekte Funktion von A erforderlich.Beispielsweise hängt das Paket gimp vom Paket gimp-data ab, da sichergestellt werden muss, dass dem GIMP-Grafikeditor die erforderlichen Datendateien zur Verfügung stehen.

    Wenn Paket A ein anderes Paket B empfiehlt, bietet Paket B wichtige zusätzliche Funktionen für Paket A, die in den meisten Fällen wünschenswert sind. Beispielsweise empfiehlt das Paket mozilla-browser das Paket mozilla-psm, das dem Mozilla-Webbrowser Unterstützung für sichere Datenübertragung hinzufügt. Obwohl das mozilla-psm-Paket nicht unbedingt erforderlich ist, damit Mozilla funktioniert, möchten die meisten Benutzer, dass Mozilla die sichere Übertragung sensibler Daten (wie Kreditkartennummern) unterstützt.

    Wenn Paket A ein anderes Paket B anbietet, bietet Paket B Funktionen, die Paket A verbessern können, aber in den meisten Fällen nicht erforderlich sind. Das Paket kmail bietet beispielsweise das Paket gnupg an, das ein Verschlüsselungsprogramm enthält, das von KMail verwendet werden kann.

    Wenn Paket A mit einem anderen Paket B in Konflikt gerät, können die beiden Pakete nicht gleichzeitig installiert werden. Beispielsweise steht das fb-music-hi-Paket in Konflikt mit dem fb-music-low-Paket, weil sie alternative Musiksets für Frozen Bubble bereitstellen.

Die Aufgabe eines Paketmanagers besteht darin, eine Schnittstelle bereitzustellen, die den Benutzer bei der Verwaltung der auf seinem System installierten Pakete unterstützt. Eignung stellt eine solche Schnittstelle basierend auf dem Steuerungssystem bereit passende Pakete.

Paketmanager machen es einfacher, den Code eines anderen zu verwenden, indem sie diesen Code in Form von unabhängigen Modulen – Paketen – bereitstellen. Diese Pakete sind nach dem Prinzip der Black Boxes mit ihrem Code verbunden – in diesem Fall wissen wir nicht und es ist uns egal, wie alles in dieser Box funktioniert, aber wir wissen, was sie tut. Dank dieser lose gekoppelten Architektur wird es möglich, den Code einer anderen Person einfach zu aktualisieren oder ein Paket durch ein anderes mit ähnlicher Funktionalität zu ersetzen.

Funktionsweise von Paketmanagern

Jeder Paketmanager hat eine Einstellungsdatei, in der wir angeben müssen, von welchen Paketen unser Code abhängt, damit der Paketmanager sie herunterlädt und in unserem System installiert. Jedes Paket kann jedoch von anderen Paketen abhängen. Der Paketmanager enträtselt dieses Abhängigkeitssystem und installiert, was er braucht, weshalb sie auch als Abhängigkeitsmanager bezeichnet werden. Hier ist ein Beispiel: Ich verwende das Twitter Bootstrap-Framework für die Arbeit und es benötigt jQuery, um zu funktionieren. Wenn ich also meinem Paketmanager sage, dass er Twitter Bootstrap installieren soll, installiert er automatisch auch jQuery.

Welche Paketmanager zu verwenden sind

Ich verwende in meiner Arbeit drei verschiedene Paketmanager:

  • ist ein Paketmanager für die PHP-Welt. Ich benutze, um den PHP-Code von jemand anderem zu laden;

Wir werden verschiedene Paketmanager in Linux vergleichen. Unter allen Linux-Distributionen haben sie unter anderem die Notwendigkeit, neue Softwarepakete auf dem System installieren zu können. Je nach Distribution stehen verschiedene Paketmanager zur Verfügung, die es dem Benutzer ermöglichen, Pakete schnell und einfach zu installieren, zu verwalten und zu entfernen. Paketmanager sind sehr gut darin, Installationen mit gemeinsamen Installationsspeicherorten und -konfigurationen zu optimieren. In diesem Artikel besprechen wir die verschiedenen verfügbaren Paketmanager, auf welchen Distributionen sie verwendet werden können und was sie einzigartig macht. Wir behandeln Paketmanager basierend auf , den wichtigsten Paketmanagern von RedHat Enterprise Linux (RHEL) und anderen benutzerdefinierten Paketmanagern.

Debian-basierte Paketmanager

dpkg-Paketmanager

Ubuntu und Debian gelten heute als eines der am weitesten verbreiteten Linux-basierten Consumer-Betriebssysteme auf dem Markt. Ihre Paketmanager sind generisch, mit dem Paketverwaltungssystem der untersten Ebene "Dpkg", kurz für "Debian-Paket". Es ist ein Skelett einer Paketverwaltungssoftware mit Tools zum Installieren, Entfernen und Erstellen von Paketen.

Dpkg fehlen fortgeschrittenere Funktionen − Funktionalität, wie das Herunterladen von Paketen aus dem Internet oder das automatische Installieren von Abhängigkeiten, ist über DPKG nicht möglich. Die Möglichkeit, dies über das Internet zu tun, ist sehr nützlich, da Benutzer Paket-Repositories hinzufügen können, was die Auswahl an Software, die einfach auf dem System installiert werden kann, erheblich erhöht. Es kann auch den Softwareinstallationsprozess erheblich vereinfachen, indem es ein Paket mit nur einem Befehl leicht finden und installieren kann.

Pacman ist der Paketmanager für Arch Linux. Pacman ist das einzige Paketverwaltungstool, das auf Arch zu finden ist, was es zu keinem Frontend macht. Arch Linux ist eine Betriebssystemversion, bei der täglich Updates hinzugefügt werden. Es gibt nur wenige Pacman-Befehle zum Suchen, Installieren und Entfernen von Paketen. Dieser Paketmanager kann sich mit dem Internet verbinden und seine Pakete von dort kaufen, was ihn benutzerfreundlicher macht. Pacman ist jedoch darauf ausgelegt, Software aus dem Arch-Repository zu installieren, was die Installation aus Repositorys von Drittanbietern unmöglich macht.

ABS, kurz für Arch Build System, ist ein System von Tools, mit denen installierbare Softwarepakete für Arch Linux aus dem Quellcode erstellt werden können. Es besteht aus mehreren Tools, die zusammenarbeiten, um Pakete zu erstellen - alle diese Tools sind unabhängige Programme wie makepkg, pacman, asp und so weiter. Die Methode zum Erstellen/Installieren eines Pakets mit ABS unterscheidet sich von einer regulären Linux-Distribution. Anstatt vorkompilierte Pakete zu installieren, müssen Sie mithilfe des asp-Pakets eine PKGBUILD-Datei aus einem Svn- oder Git-Zweig erstellen. Von dort aus verwenden Sie den Befehl makepkg, der die PKGBUILD-Datei verwendet, um den Quellcode für Ihr System herunterzuladen und zu kompilieren. Dies macht ABS zu einer etwas weniger intuitiven Methode zum Installieren von Paketen unter Arch Linux. Es hat mehrere andere Verwendungszwecke, z. B. das Anpassen vorhandener Pakete oder das Erstellen und Installieren Ihres eigenen Kernels.

mob_info