Wie Sie wissen, welche Anwendungen vom X-Paket abhängen

Dieses kurze Mini-Tutorial erscheint als Antwort auf die Besorgnis eines unserer Leser, Felipe, der uns schrieb und fragte: «Wie kann ich wissen, welche Anwendungen Java verwenden?«. Ich glaube nicht, dass es einen Weg gibt, das zu wissen, aber es gibt einen einfachen Weg, das zu wissen Welche Pakete (dh welche Anwendungen) in den Repositorys aufgeführt sind, hängt von den JAVA-Paketen ab. Dieselbe Methode kann für jedes andere Paket verwendet werden, um beispielsweise herauszufinden, von welchen Anwendungen sie abhängen MONO.


Am häufigsten möchten Sie herausfinden, welche anderen Pakete installiert werden müssen, damit Paket X ordnungsgemäß funktioniert. Diese erforderlichen Pakete werden als Abhängigkeiten bezeichnet und können wie folgt ermittelt werden:

apt-cache hängt von mypackage ab 

Sie können auch zu Synaptic gehen, das Paket finden, tun Klicken Sie mit der rechten Maustaste darauf> Eigenschaften> Abhängigkeiten.

Das Ziel dieses Beitrags ist es jedoch, genau das Gegenteil herauszufinden: Welche Pakete haben das X-Paket als Abhängigkeit. Mit anderen Worten, in diesem Fall kennen wir das "Mutter" -Paket und möchten wissen, welche anderen Pakete erfordern, dass dieses "Mutter" -Paket installiert wird, damit es funktioniert.

Fahren wir mit dem Beispiel fort, um die Angelegenheit besser zu verstehen. Mal sehen, wie man Pakete erkennt, die vom openjdk-6-jre-Paket abhängen. So erkennen Sie die in den Repositorys aufgeführten Anwendungen, die von JAVA abhängen.

Ich öffnete ein Terminal und schrieb:

apt-cache hängt von openjdk-6-jre ab 

Eine lange Liste von Paketen wird angezeigt, einschließlich OpenOffice, FreeMind, OpenCol usw.

Wie finde ich das richtige "Mutter" -Paket?

OK, soweit so einfach, aber wie finde ich heraus, auf welchem ​​"Mutter" -Paket ich suchen soll? Nun, dies erfordert etwas Fachwissen und vorherige Analyse.

Angenommen, ich möchte alle MONO-basierten Anwendungen kennen. In diesem Fall habe ich nach den Abhängigkeiten einer Anwendung (GBrainy) gesucht, von der ich weiß, dass sie MONO verwendet, und auf dieser Grundlage das "Mutter" -Paket erkannt und nach den inversen Abhängigkeiten gesucht. Uff, es scheint schwierig, aber es ist Unsinn.

Ich öffnete ein Terminal und schrieb:

apt-cache hängt von gbrainy ab

Die Ergebnisse sind folgende:

  Kommt darauf an: Mono-Laufzeit
 | Abhängig von: libc6
 | Abhängig von: libc6.1
  Abhängig von: libc0.1
  Abhängig von: libglib2.0-cil
  Abhängig von: libgtk2.0-0
  Abhängig von: libgtk2.0-cil
  Abhängig von: liblaunchpad-integration1.0-cil
  Abhängig von: libmono-addins-gui0.2-cil
  Abhängig von: libmono-addins0.2-cil
  Abhängig von: libmono-cairo2.0-cil
  Abhängig von: libmono-corlib2.0-cil
  Abhängig von: libmono-posix2.0-cil
  Abhängig von: libmono-system2.0-cil
  Abhängig von: librsvg2-2
  Kommt drauf an: Mono-Csharp-Shell

Es schien mir, dass Mono-Laufzeit ein guter Kandidat sein könnte, also entschied ich mich, nach allen Paketen zu suchen, die von Mono-Laufzeit abhängen:

apt-cache hängt von der Mono-Laufzeit ab

Voila! Alle Pakete, die MONO verwenden, werden angezeigt.

Um eine vollständige Liste aller Pakete zu sehen, die von einem MONO-Paket abhängen, hätten wir schreiben können:

apt-cache hängt von mono ab *
Hinweis: Diese Methode funktioniert nur für Anwendungen, die in den APT-Repositorys aufgeführt sind.
Danke Feli!

Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Philipp Becerra sagte

    Danke, dass du Pablo geantwortet hast, und danke für den Beitrag 🙂

  2.   Saito Mordraw sagte

    Pablo du bist mein Idol!

    Ausgezeichnete Post.

  3.   Verwenden wir Linux sagte

    Großartig! Danke für die Daten!

  4.   kraftvoll sagte

    Für diejenigen von uns, die Bruttoverteilungen verwenden ………… Witz

    Für Benutzer von RPM-basierten Paketmanagern wird dieser Befehl verwendet

    rpm -qR Pakete

    Beispiel:

    linux @ dhcppc3: ~> rpm -qR xmms
    / Bin / sh
    / Bin / sh
    rpmlib (PayloadFilesHavePrefix) <= 4.0-1
    rpmlib (CompressedFileNames) <= 3.0.4-1
    libICE.so.6
    libSM.so.6
    libX11.so.6
    libXxf86vm.so.1
    libc.so.6
    libc.so.6 (GLIBC_2.0)
    libc.so.6 (GLIBC_2.1)
    libc.so.6 (GLIBC_2.3)
    libc.so.6 (GLIBC_2.3.4)
    libc.so.6 (GLIBC_2.4)
    libc.so.6 (GLIBC_2.7)
    libdl.so.2
    libdl.so.2 (GLIBC_2.0)
    libdl.so.2 (GLIBC_2.1)
    libgdk-1.2.so.0
    libglib-1.2.so.0
    libgthread-1.2.so.0
    libgtk-1.2.so.0
    libpthread.so.0
    libpthread.so.0 (GLIBC_2.0)
    libpthread.so.0 (GLIBC_2.1)
    libpthread.so.0 (GLIBC_2.3.2)
    libxmms.so.1
    rpmlib (PayloadIsLzma) <= 4.4.6-1