Hvordan vite hvilke applikasjoner som avhenger av X-pakken

Denne korte miniopplæringen dukker opp som svar på bekymringen til en av våre lesere, Felipe, som skrev til oss og spurte: «Hvordan kan jeg vite hvilke applikasjoner som bruker Java?«. Vel, jeg tror ikke det er en måte å vite det, men det er en enkel måte å vite hvilke pakker (det vil si hvilke applikasjoner) som er oppført i depotene, avhenger av JAVA-pakkene. Den samme metoden kan brukes for alle andre pakker, for eksempel for å finne ut hvilke applikasjoner som er avhengige av MONO.


Det vanligste er å finne ut hvilke andre pakker som må installeres for at pakke X skal fungere bra. De nødvendige pakkene kalles avhengigheter og kan bli funnet ut slik:

apt-cache avhenger av pakken min 

Du kan også gå til Synaptic, finne pakken, gjøre høyreklikk på den> Egenskaper> Avhengigheter.

Målet med dette innlegget er imidlertid å finne ut omvendt: hvilke pakker som har X-pakke som avhengighet. Med andre ord, i dette tilfellet kjenner vi "mor" -pakken, og vi vil vite hva andre pakker krever at denne "mor" -pakken installeres for å fungere.

La oss gå videre til eksemplet for bedre å forstå saken. La oss se hvordan vi oppdager pakker som er avhengige av openjdk-6-jre-pakken. Det vil si hvordan du oppdager de applikasjonene som er oppført i arkivene, som er avhengig av JAVA.

Jeg åpnet en terminal og skrev:

apt-cache avhenger openjdk-6-jre 

En lang liste med pakker vises, inkludert OpenOffice, FreeMind, OpenCol, etc.

Hvordan finner du riktig "mor" -pakke?

OK, så langt så enkelt, men hvordan finner jeg ut hva som er "mor" -pakken som jeg bør søke etter? Vel, dette krever litt ekspertise og forhåndsanalyse.

Anta at jeg vil vite alle MONO-baserte applikasjoner. I så fall var det jeg lette etter avhengighetene til et program (GBrainy) som jeg vet bruker MONO og, basert på det, oppdage "mor" -pakken og se etter de omvendte avhengighetene. Uff, det virker vanskelig, men det er tull.

Jeg åpnet en terminal og skrev:

apt-cache avhenger av korn

Resultatene er disse:

  Avhenger av: mono-runtime
 Avhenger: libc6
 Avhenger: libc6.1
  Avhenger: libc0.1
  Avhenger: libglib2.0-cil
  Avhenger: libgtk2.0-0
  Avhenger: libgtk2.0-cil
  Avhenger: liblaunchpad-integration1.0-cil
  Avhenger: libmono-addins-gui0.2-cil
  Avhenger: libmono-addins0.2-cil
  Avhenger: libmono-cairo2.0-cil
  Avhenger: libmono-corlib2.0-cil
  Avhenger: libmono-posix2.0-cil
  Avhenger: libmono-system2.0-cil
  Avhenger: librsvg2-2
  Avhenger: mono-csharp-shell

Det virket for meg at mono-runtime kunne være en god kandidat, så jeg bestemte meg for å søke etter alle pakker som var avhengig av mono-runtime:

apt-cache avhenger mono-runtime

Voila! Alle pakker som bruker MONO vises.

For å se en komplett liste over alle pakker som avhenger av noen MONO-pakker, kunne vi ha skrevet:

apt-cache avhenger mono *
Merk: denne metoden fungerer bare for de applikasjonene som er oppført i APT-depotene.
Takk Feli!

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   Philip Becerra sa

    Takk for at du svarte Pablo, og takk for innlegget 🙂

  2.   Saito Mordraw sa

    Pablo du er idolet mitt!

    Utmerket innlegg.

  3.   La oss bruke Linux sa

    Flott! Takk for dataene!

  4.   listig sa

    For de av oss som bruker grove distribusjoner ………… vits

    for de som bruker RPM-baserte pakkeforvaltere, brukes denne kommandoen

    rpm -qR-pakker

    Eksempel:

    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