Hogyan lehet tudni, hogy mely alkalmazások függnek az X csomagtól

Ez a rövid mini-oktatóanyag úgy jelenik meg válasz egyik olvasónk, Felipe aggodalmára, aki megkérdezte tőlünk: «Honnan tudhatom, hogy mely alkalmazások használják a Java-t?«. Nos, nem hinném, hogy ezt meg lehet tudni, de egy egyszerű módja van hogy az adattárakban felsorolt ​​csomagok (vagyis melyik alkalmazások) függenek a JAVA csomagoktól. Ugyanez a módszer bármely más csomaghoz használható, például annak kiderítésére, hogy mely alkalmazások függenek MONO.


A leggyakoribb az a kérdés, hogy milyen egyéb csomagokat kell telepíteni ahhoz, hogy az X csomag jól működjön. Ezeket a szükséges csomagokat függőségeknek nevezzük, és így megtudhatjuk őket:

Az apt-cache a csomagomtól függ 

Mehet a Synaptic oldalra is, megkeresheti a csomagot, megteheti kattintson jobb gombbal, majd a Tulajdonságok> Függőségek elemre.

Ennek a bejegyzésnek az a célja, hogy pontosan megfordítsa a fordítottat: melyik csomagok függősége az X csomag. Más szavakkal, ebben az esetben ismerjük az "anya" csomagot, és szeretnénk tudni, hogy milyen más csomagok igénylik ennek az "anya" csomagnak a működéséhez való telepítését.

Térjünk át a példára, hogy jobban megértsük az ügyet. Nézzük meg, hogyan lehet felismerni az openjdk-6-jre csomagtól függő csomagokat. Más szavakkal, hogyan lehet észlelni a tárolókban felsorolt ​​alkalmazásokat, amelyek a JAVA-tól függenek.

Megnyitottam egy terminált, és ezt írtam:

Az apt-cache rdepdends az openjdk-6-jre 

A csomagok hosszú listája jelenik meg, beleértve az OpenOffice, a FreeMind, az OpenCol stb.

Hogyan lehet megtalálni a megfelelő "anya" csomagot?

Rendben, eddig ilyen egyszerű, de hogyan tudhatom meg, mi az az "anya" csomag, amely alapján keresnem kéne? Nos, ehhez némi szakértelemre és előzetes elemzésre van szükség.

Tegyük fel, hogy az összes MONO alapú alkalmazást szeretném tudni. Ebben az esetben azt csináltam, hogy egy alkalmazás (GBrainy) függőségeit kerestem meg, amelyről tudom, hogy a MONO-t használja, és ennek alapján észlelte az "anya" csomagot, és megkereste az inverz függőségeket. Uff, nehéznek tűnik, de ostobaság

Megnyitottam egy terminált, és ezt írtam:

Az apt-cache gbrainytől függ

Az eredmények a következők:

  Attól függ: mono-futásidő
 | Attól függ: libc6
 | Attól függ: libc6.1
  Attól függ: libc0.1
  Attól függ: libglib2.0-cil
  Attól függ: libgtk2.0-0
  Attól függ: libgtk2.0-cil
  Attól függ: liblaunchpad-integráció1.0-cil
  Attól függ: libmono-addins-gui0.2-cil
  Attól függ: libmono-addins 0.2-cil
  Attól függ: libmono-cairo2.0-cil
  Attól függ: libmono-corlib2.0-cil
  Attól függ: libmono-posix2.0-cil
  Attól függ: libmono-system2.0-cil
  Attól függ: librsvg2-2
  Attól függ: mono-csharp-shell

Számomra úgy tűnt, hogy a mono-runtime jó jelölt lehet, ezért úgy döntöttem, hogy megkeresem az összes csomagot, amely a mono -untime-től függ:

Az apt-cache rdepo a mono-futástól függ

Voálá! Minden olyan csomag megjelenik, amely MONO-t használ.

A MONO csomagtól függő összes csomag teljes listájának megtekintéséhez írhatnánk:

apt-cache rdepoes mono *
Megjegyzés: Ez a módszer csak azoknál az alkalmazásoknál működik, amelyek szerepelnek az APT-tárházakban.
Köszönöm Feli!

Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.

  1.   Philip Becerra dijo

    Köszönöm, hogy válaszoltál Pablo-nak, és köszönöm a bejegyzést 🙂

  2.   Saito Mordraw dijo

    Pablo te vagy a bálványom!

    Kiváló poszt.

  3.   Használjuk a Linuxot dijo

    Nagy! Köszönöm az adatokat!

  4.   kraftos dijo

    Nekünk, akik bruttó elosztást használunk ... vicc

    RPM alapú csomagkezelőket használók számára ezt a parancsot használják

    rpm -qR csomagok

    Példa:

    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