GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So listen Sie alle Pakete in einem Repository unter Ubuntu, Debian oder Linux Mint auf [APT]

Dieser Artikel erklärt, wie man alle verfügbaren Pakete (installiert und zur Installation verfügbar) in einem Ubuntu-, Linux Mint- oder Debian-Repository auflistet, sei es ein offizielles Repository oder eine Quelle eines Drittanbieters wie ein PPA und so weiter.

Im Folgenden finden Sie zwei Möglichkeiten, Pakete aus einem Repository aufzulisten:über eine GUI oder über die Befehlszeile.

Aus derselben Serie:

  • Verhindern, dass ein Paket in Ubuntu, Debian oder Linux Mint [APT] aktualisiert wird
  • So finden Sie verfügbare Pakete über die Befehlszeile in Debian, Ubuntu oder Linux Mint [APT]

Alle Pakete in einem Debian-, Ubuntu- oder Linux-Mint-Repository mit GUI auflisten

Wenn Sie alle Pakete in einem Repository auf Ihrem Desktop auflisten möchten, können Sie den Synaptic Package Manager verwenden.

Synaptic ist eine grafische Paketverwaltungsanwendung für APT (APT ist der wichtigste Befehlszeilen-Paketmanager für Debian und seine Derivate).

Wenn Sie Synaptic nicht installiert haben, können Sie es unter Debian, Ubuntu und jeder Debian- oder Ubuntu-basierten Linux-Distribution, einschließlich elementarer Betriebssysteme, Linux Mint usw., installieren, indem Sie diesen Befehl verwenden:

sudo apt install synaptic

Um alle Pakete in einem bestimmten Software-Repository mit Synaptic aufzulisten, starten Sie die Anwendung und klicken Sie auf Origin unten links im Fenster. Wählen Sie als Nächstes das Repository aus, für das Sie alle verfügbaren Pakete auflisten möchten (sowohl installiert als auch zur Installation verfügbar) aus der Liste, die auf der linken Seite des Synaptic Package Managers angezeigt wird.

Hier ist zum Beispiel Synaptic, das alle im Google-Repository verfügbaren Pakete zeigt und Google Chrome Stable, Beta und Unstable sowie Google Earth Pro und EC auflistet:


Wie Sie sehen können, sind hier alle Softwarequellen aufgelistet, einschließlich der offiziellen Repositories.

Launchpad PPA-Repositories werden ebenfalls unterstützt. Ihr Name beginnt mit LP-PPA, gefolgt vom eigentlichen PPA-Namen. Synaptic listet 2 Einträge für jeden PPA auf – stellen Sie sicher, dass Sie den PPA-Eintrag auswählen, der mit /ubuntu-codename endet , zum Beispiel /bionic , /cosmic , usw. Der Eintrag mit der Endung /now listet nicht alle verfügbaren Pakete im PPA auf.

Dies ist ein Screenshot, der alle Pakete zeigt, die im PPA für Ubuntu-Grafiktreiber verfügbar sind (für Ubuntu 18.10 Cosmic Cuttlefish, da ich das verwende), einschließlich der auf meinem System installierten:

Ich bin mir nicht sicher warum, aber einige Pakete werden mehrfach für PPA-Quellen (und nur für PPA-Repositories) aufgeführt. Dies ist nur eine Anzeigesache und beeinträchtigt keine Funktionalität.

Alle Pakete in einem Repository in Ubuntu, Debian oder Linux Mint über die Befehlszeile auflisten

Das Auflisten aller Pakete in einem Repository über die Befehlszeile in Ubuntu, Debian oder Linux Mint ist etwas knifflig, aber immer noch ziemlich einfach.

Es gibt mehrere Möglichkeiten, dies über den Befehl zu tun, aber ich werde nur eine auflisten. Der Befehl zum Auflisten aller verfügbaren Pakete in repository-name lautet wie folgt:

grep ^Package /var/lib/apt/lists/repository-name*_Packages | awk '{print $2}' | sort -u

Ich werde erklären, wie man den Repository-Namen erhält. findet /var/list/apt/lists heraus und wie man es benutzt. Davor erkläre ich, was dieser Befehl macht:

  • grep ^Package ... sucht nach Zeilen, die mit ^Package beginnen indem Sie /var/lib/apt/lists/*_Packages ausführen Datei
  • awk '{print $2}' gibt die zweite Spalte für jede Zeile aus (dies filtert alles außer dem Paketnamen heraus)
  • sort -u sortiert die Zeilen und gibt nur eindeutige Zeilen aus (entfernt Duplikate)

Als erstes müssen Sie den Namen des Repositorys *_Packages finden Datei von /var/lib/apt/lists/ . Sie können alle Repositories auflisten _Packages Dateien verfügbar in /var/lib/apt/lists/ mit einem einfachen ls :

ls /var/lib/apt/lists/*_Packages


Da die Ergebnisse sehr lang sein können, können Sie die Befehlsausgabe über more ausführen zum leichteren Lesen:

ls /var/lib/apt/lists/*_Packages | more

Wenn Sie einen Teil des Repository-Namens kennen (ich verwende KEYWORD im Befehl unten als Name), können Sie den ls verwenden Ergebnisse mit grep , etwa so:

ls /var/lib/apt/lists/*_Packages | grep KEYWORD

Angenommen, Sie möchten alle Pakete im offiziellen Tor-Repository auflisten und wissen, dass der Name des Repositorys tor enthalten muss . In diesem Fall würden Sie diesen Befehl verwenden, um _Packages herauszufinden Dateiname von /var/lib/apt/lists/

ls /var/lib/apt/lists/*_Packages | grep tor

Bei schnellen Abfragen sehen Sie möglicherweise einige nicht verwandte Repositories, aber es ist immer noch einfacher zu sehen, wonach Sie suchen. grep als alle Repositorys aufzulisten _Packages Dateien.

Jetzt kennen Sie _Packages filename können Sie alle in diesem Repository verfügbaren Pakete auflisten, indem Sie diesen Befehl ausführen:

grep ^Package /var/lib/apt/lists/some-repository-amd64_Packages | awk '{print $2}' | sort -u

Verwenden Sie die Datei mit der Architektur, für die Sie alle verfügbaren Pakete in diesem Repository auflisten möchten. Das obige Beispiel gilt für 64 Bit (amd64 ), aber Sie könnten es verwenden i386 für 32bit usw.

Sie benötigen nicht das gesamte Repository _Packages Dateiname. Zurück zu meinem Tor-Repository-Beispiel, dem _Packages Der Dateiname für Tor ist deb.torproject.org_torproject.org_dists_cosmic_main_binary-amd64_Packages . In diesem Fall könnten Sie deb.torproject verwenden gefolgt von *_Packages Dinge wie diese zu vereinfachen:

grep ^Package /var/lib/apt/lists/deb.torproject*_Packages | awk '{print $2}' | sort -u

Was Folgendes ausgibt:

deb.torproject.org-keyring
tor
tor-geoipdb

Ein anderes Beispiel. Angenommen, Sie möchten alle verfügbaren Pakete in Linux Uprising Oracle Java 11 PPA (ppa:linuxuprising/java ). Sie können sie auflisten, indem Sie Folgendes verwenden:

grep ^Package /var/lib/apt/lists/ppa.launchpad.net_linuxuprising_java*_Packages | awk '{print $2}' | sort -u

Was das ausgibt:

oracle-java11-installer
oracle-java11-set-default

Um dies mit anderen PPA-Repositories zu verwenden, ersetzen Sie linuxuprising mit dem ersten Teil des PPA-Namens und java mit dem zweiten Teil des PPA-Namens, und der Befehl listet alle Pakete aus diesem PPA auf (sowohl installierte als auch nicht installierte).

Sie können auch alle Pakete auflisten, die in allen PPA-Repositories verfügbar sind, die Sie Ihrem System hinzugefügt haben, indem Sie Folgendes verwenden:

grep ^Package /var/lib/apt/lists/ppa.launchpad.net*_Packages | awk '{print $2}' | sort -u

Für einen einfachen Zugriff können Sie diesen Befehl mithilfe des Lesezeichen-Managers für Markierungsbefehle mit einem Lesezeichen versehen (obwohl er hauptsächlich zum Suchen verwendet wird, kann HSTR auch Lesezeichen für Befehle verwenden).


Debian
  1. So listen Sie alle Dateien auf, die vom DEB-Paket unter Ubuntu/Debian Linux installiert wurden

  2. So listen Sie alle oder bestimmte Pakete auf, die auf einem Debian/Ubuntu-Linux-System installiert sind

  3. So listen Sie alle installierten Pakete in Linux auf

  4. So installieren Sie Oracle Java 15 unter Ubuntu, Debian oder Linux Mint mit dem APT PPA-Repository

  5. So verhindern Sie, dass ein Paket in Ubuntu, Debian oder Linux Mint aktualisiert wird [APT]

So konfigurieren Sie sources.list unter Debian 9

So installieren Sie Visual Studio Code unter Ubuntu 18.04 / Linux Mint 19 und Debian 9

Wie man ein Repository zu Debian hinzufügt

So laden Sie Pakete mit Abhängigkeiten lokal in Ubuntu, Debian, Linux Mint, Pop OS herunter

So listen Sie alle aktualisierbaren Pakete in Ubuntu, Debian &Mint auf

Laden Sie Spotify Deb-Pakete herunter, um sie auf Ubuntu, Debian und Linux Mint zu installieren