Das am meisten unterscheidende Merkmal von Debian-basierten Linux-Distributionen (wie Ubuntu, Mepis, Knoppix usw.) ist ihr Paketsystem - APT. Auch als Advanced Package Tool bekannt, wurde APT 1999 erstmals in Debian 2.1 eingeführt. APT ist nicht so sehr ein spezifisches Programm, sondern eine Sammlung von separaten, verwandten Paketen.

Mit APT konnte Linux Software-Pakete wesentlich einfacher und effizienter installieren und verwalten, als dies bisher möglich war. Vor seiner Einführung musste die meiste Software entweder durch manuelle Kompilierung des Quellcodes oder durch Verwendung einzelner Pakete ohne automatische Abhängigkeitsverarbeitung (wie RPM-Dateien) installiert werden. Dies könnte Stunden der "Abhängigkeitshölle" bedeuten, sogar ein ziemlich triviales Programm zu installieren.

In diesem Artikel werden wir einige der besten Funktionen von APT hervorheben und einige der weniger bekannten Funktionen von APT und seinem Cousin dpkg vorstellen . Glauben Sie es oder nicht, APT kann sogar verwendet werden, um Sodoku-Rätsel zu lösen!

dpkg

Die Basis des Debian-Paketsystems ist dpkg. Es führt alle Low-Level-Funktionen der Softwareinstallation durch. Wenn Sie so interessiert sind, können Sie dpkg alleine zum Verwalten Ihrer Software verwenden. Es kann Informationen über die Softwaresammlung Ihres Systems installieren, entfernen und bereitstellen. Hier sind einige meiner Lieblingsfunktionen.

Grundlegende Installation der lokalen Datei

Einige Softwareautoren erstellen Debian-Pakete ihrer Programme, stellen jedoch kein Repository für APT bereit, von dem sie abholen können. In diesem Fall stellen sie nur eine herunterladbare .deb-Datei bereit. Dies ist RPM-Paketen oder Windows-MSI-Dateien sehr ähnlich. Es enthält alle Dateien und Konfigurationsinformationen, die für die Installation des Programms erforderlich sind. Um ein Programm von einer .deb-Datei zu installieren, brauchen Sie nur

dpkg -i MyNewProgram.deb

Das -i, wie Sie vielleicht vermuten, sagt dpkg, diese Software zu installieren.

Auflisten des Inhalts eines Pakets

Möglicherweise finden Sie sich nach der Installation eines Programms nicht in der Lage, herauszufinden, wie dieses Programm ausgeführt wird. Manchmal müssen Sie wissen, wo Sie die Konfigurationsdateien für Ihr neues Spiel finden. Dpkg bietet eine einfache Möglichkeit, alle Dateien aufzulisten, die zu einem bestimmten Paket gehören.

dpkg -L MyNewProgram

Beachten Sie, dass Fall wichtig ist. -L und -l sind völlig verschiedene Optionen.

Oft hat ein Paket so viele Dateien, dass es schwierig sein kann, die Liste zu durchsuchen, um die gesuchten zu finden. Wenn das der Fall ist, können wir grep verwenden, um die Ergebnisse zu filtern. Der folgende Befehl funktioniert genauso wie oben, zeigt jedoch nur Ergebnisse an, die "bin" im Pfad enthalten, z. B. / usr / bin.

dpkg -L MeinNeuerProgramm | Grep bin

Ich werde nicht einmal anfangen, auf die großartige Macht von grep einzugehen, aber in ihrer einfachsten Form kann sie wie oben verwendet werden, um die Ausgabe eines Programms schnell und einfach zu filtern.

Den Besitzer einer Datei finden

Gelegentlich befinden Sie sich in einer Situation, die das Gegenteil des obigen Abschnitts ist. Sie haben eine Datei, wissen aber nicht, zu welchem ​​Paket sie gehört. Noch einmal, dpkg hat dich abgedeckt.

dpkg -S mysteryfile.cfg

Dadurch erfahren Sie, welches Paket diese Datei erstellt hat / besitzt.

Auflisten, was Sie installiert haben

Nehmen wir an, Sie sind dabei, Ihr System neu zu installieren, und Sie möchten genau wissen, was Sie bereits installiert haben. Sie könnten eine App wie Synaptic öffnen und einen Filter setzen, um alles anzuzeigen, was als "installiert" markiert ist, oder Sie können es schnell und einfach über die Befehlszeile mit dpkg tun.

dpkg -l

oder

dpkg --get-selections

Das wird Ihnen eine lange Liste von allem geben, was Sie installiert haben. Erfahrene Benutzer könnten diese Befehle verwenden, um eine Textdatei mit allen ihren Paketen zu erstellen, die später in APT eingegeben werden könnten, um alles auf einmal neu zu installieren!

Ein Paket neu konfigurieren

Wenn ein .deb-Paket installiert wird, durchläuft es einige Schritte. Eine davon ist die Konfigurationsphase, in der Entwickler eine Reihe von Aktionen ausführen können, sobald alle Dateien an einem geeigneten Ort installiert wurden. Dazu gehören Dinge wie das Starten / Stoppen von Diensten oder das Erstellen von Protokollen oder dergleichen. Manchmal müssen Sie diese Schritte wiederholen, ohne den gesamten Neuinstallationsprozess durchlaufen zu müssen. Dafür verwendest du:

dpkg-reconfigure (Paketname)

Dadurch werden alle für das Paket erforderlichen Schritte nach der Installation wiederholt, ohne dass Sie neu installiert werden müssen. Glauben Sie mir, das ist praktisch.

Eignung / Apt-get

Es gibt einige Diskussionen und Verwirrung in Bezug auf diese beiden Werkzeuge. Viele Linux-Benutzer haben es schwer zu sagen, wann / warum sie die eine oder die andere verwenden sollen, da sie ungefähr dasselbe tun.

Kurze Antwort: Verwenden Sie Aptitude.

Lange Antwort: Beide können verwendet werden, um alle Softwareinstallationen zu verwalten, und beide werden einen guten Job machen. Das Debian-Team empfiehlt offiziell die Verwendung von Aptitude. Es ist nicht viel besser als apt-get, aber es ist ein bisschen besser, in vielerlei Hinsicht. Sie können beides verwenden und es wird Ihre Paketverwaltungsanforderungen erfüllen, aber nicht auf demselben System mischen und übereinstimmen. Wähle einen aus und bleib dabei.

Das richtige Paket finden

Ich finde oft, dass ich Software brauche, um eine bestimmte Sache zu machen, aber ich kenne den Namen von Programmen nicht, um das zu tun. Ich brauche zum Beispiel einen FLAC-Player, weiß aber nicht, welcher Player funktioniert ...

Eignung:

Eignungssuche flac

Klassische APT:

apt-cache Suchfac

Sie erhalten eine Liste der verfügbaren Pakete, die "flac" im Namen oder in der Beschreibung haben.

Verhindern, dass ein Paket aktualisiert wird

Manchmal habe ich eine Version eines Pakets, das ich behalten möchte, obwohl es Upgrades geben kann. Wenn es zum Beispiel zu meinem Kernel kommt, möchte ich lieber manuell updaten.

Eignung:

Aptitude Hold (Paketname)

dpkg:

echo "(packagename) hold" | dpkg --set-selections

Aktualisierung

Sowohl Aptitude als auch APT bieten zwei Methoden zur Aktualisierung Ihres Systems: Upgrade und Dist-Upgrade . Dies ist eine andere Sache, die etwas Verwirrung verursacht. Ein Upgrade ist ein Upgrade, oder? Nun, nicht genau.

Ein reguläres Upgrade liest Ihre Liste von Paketen, prüft online nach neueren Versionen und installiert sie nach Bedarf. Es führt jedoch KEINE Upgrades durch, bei denen neue Pakete installiert oder vorhandene entfernt werden müssen. Dafür ist Dist-Upgrade gedacht . Es wird jede neuere Version finden, die es findet, selbst wenn es etwas neues (wie eine Abhängigkeit) installiert oder ein vorhandenes Paket entfernt (wenn es veraltet ist oder nicht mehr benötigt wird).

Eignung:

passion safe-upgrade
Eignung Voll-Upgrade

Klassische APT:

apt-get-Aktualisierung
apt-get dist-upgrade

Erfahren Sie mehr über ein Paket

Schließlich müssen Sie manchmal nur ein wenig über ein Paket wissen. Welche Version ist es? Wer pflegt es? Ist es bereits installiert? All diese Dinge und mehr können Sie finden mit:

Eignung:

aptitude show (Paketname)

GEEIGNET:

apt-cache showpkg (Paketname)

Alle hier genannten Programme können viel mehr als ich gezeigt habe. Die Tipps sollten Ihnen helfen, dieses erstaunliche Paketsystem optimal zu nutzen.

Auch für diejenigen mit der Geduld, den ganzen Weg bis zum Ende zu lesen,

apt-get muh