yum: arbre de dépendance RPM


12

Je vais installer un package RPM et je peux voir que certaines dépendances nécessitent également l'installation de bibliothèques de serveur X. Je suis absolument sûr que le package dont j'ai besoin est un logiciel serveur et n'a pas besoin de serveur X.

Je me demande s'il existe un moyen d'imprimer une liste de dépendances RPM comme cela se fait dans Gentoo Linux?

   entrez la description de l'image ici

Cette commande affiche uniquement les dépendances de premier niveau, elle ne me convient donc pas:

$ yum deplist <package name>

Réponses:


22

Dans RHEL6, il y a une commande à repoquerypartir du yum-utilspackage. Il peut le faire:

# repoquery --tree-requires bash
bash-4.1.2-15.el6_4.x86_64 [cmd line]
 \_  glibc-2.12-1.132.el6_5.4.i686 [1: rtld(GNU_HASH)]
 |   \_  basesystem-10.0-4.el6.noarch [1: basesystem]
 |   |   \_  filesystem-2.4.30-3.el6.x86_64 [1: filesystem]
 |   |   |   \_  setup-2.8.14-20.el6_4.1.noarch [1: setup >= 2.5.4-1]
 |   |   \_  setup-2.8.14-20.el6_4.1.noarch [1: setup]
 |   \_  glibc-common-2.12-1.132.el6_5.4.x86_64 [1: glibc-common = 2.12-1.132.el6_5.4]
 |   |   \_  bash-4.1.2-15.el6_4.x86_64 [2: /bin/bash, /bin/sh]
 |   |   |   \_  glibc-2.12-1.132.el6_5.4.i686 [1: rtld(GNU_HASH)]
 |   |   |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [4: libc.so.6(GLIBC_2.4)(64bit), libdl.so.2()(64bit), libdl.so.2(GLIBC_2.2.5)(64bit), rtld(GNU_HASH)]
 |   |   |   \_  ncurses-libs-5.7-3.20090208.el6.i686 [1: ncurses-libs]
 |   |   |   \_  ncurses-libs-5.7-3.20090208.el6.x86_64 [2: libtinfo.so.5()(64bit), ncurses-libs]
 |   |   \_  glibc-2.12-1.132.el6_5.4.i686 [1: glibc = 2.12-1.132.el6_5.4]
 |   |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [4: glibc = 2.12-1.132.el6_5.4, libc.so.6(GLIBC_2.3)(64bit), libdl.so.2()(64bit), libdl.so.2(GLIBC_2.2.5)(64bit)]
 |   |   \_  libcap-2.16-5.5.el6.x86_64 [1: libcap.so.2()(64bit)]
 |   |   |   \_  glibc-2.12-1.132.el6_5.4.i686 [2: /sbin/ldconfig, rtld(GNU_HASH)]
 |   |   |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [3: /sbin/ldconfig, libc.so.6(GLIBC_2.3.3)(64bit), rtld(GNU_HASH)]
 |   |   |   \_  libattr-2.4.44-7.el6.x86_64 [2: libattr.so.1()(64bit), libattr.so.1(ATTR_1.0)(64bit)]
 |   |   |   |   \_  glibc-2.12-1.132.el6_5.4.i686 [2: /sbin/ldconfig, rtld(GNU_HASH)]
 |   |   |   |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [3: /sbin/ldconfig, libc.so.6(GLIBC_2.4)(64bit), rtld(GNU_HASH)]
 |   |   \_  tzdata-2014e-1.el6.noarch [1: tzdata >= 2003a]
 |   \_  libgcc-4.4.7-4.el6.i686 [1: libgcc]
 |   \_  libgcc-4.4.7-4.el6.x86_64 [1: libgcc]
 |   \_  nss-softokn-freebl-3.14.3-10.el6_5.i686 [2: libfreebl3.so, libfreebl3.so(NSSRAWHASH_3.12.3)]
 |   |   \_  glibc-2.12-1.132.el6_5.4.i686 [5: libc.so.6(GLIBC_2.7), libdl.so.2, libdl.so.2(GLIBC_2.0), libdl.so.2(GLIBC_2.1), rtld(GNU_HASH)]
 |   |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [1: rtld(GNU_HASH)]
 \_  glibc-2.12-1.132.el6_5.4.x86_64 [4: libc.so.6(GLIBC_2.4)(64bit), libdl.so.2()(64bit), libdl.so.2(GLIBC_2.2.5)(64bit), rtld(GNU_HASH)]
 |   \_  basesystem-10.0-4.el6.noarch [1: basesystem]
 |   \_  glibc-common-2.12-1.132.el6_5.4.x86_64 [1: glibc-common = 2.12-1.132.el6_5.4]
 |   \_  libgcc-4.4.7-4.el6.i686 [1: libgcc]
 |   \_  libgcc-4.4.7-4.el6.x86_64 [1: libgcc]
 |   \_  nss-softokn-freebl-3.14.3-10.el6_5.x86_64 [2: libfreebl3.so()(64bit), libfreebl3.so(NSSRAWHASH_3.12.3)(64bit)]
 |   |   \_  glibc-2.12-1.132.el6_5.4.i686 [1: rtld(GNU_HASH)]
 |   |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [4: libc.so.6(GLIBC_2.7)(64bit), libdl.so.2()(64bit), libdl.so.2(GLIBC_2.2.5)(64bit), rtld(GNU_HASH)]
 \_  ncurses-libs-5.7-3.20090208.el6.i686 [1: ncurses-libs]
 |   \_  glibc-2.12-1.132.el6_5.4.i686 [6: /sbin/ldconfig, libc.so.6(GLIBC_2.4), libdl.so.2, libdl.so.2(GLIBC_2.0), libdl.so.2(GLIBC_2.1), rtld(GNU_HASH)]
 |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [2: /sbin/ldconfig, rtld(GNU_HASH)]
 |   \_  ncurses-base-5.7-3.20090208.el6.x86_64 [1: ncurses-base = 5.7-3.20090208.el6]
 \_  ncurses-libs-5.7-3.20090208.el6.x86_64 [2: libtinfo.so.5()(64bit), ncurses-libs]
 |   \_  glibc-2.12-1.132.el6_5.4.i686 [2: /sbin/ldconfig, rtld(GNU_HASH)]
 |   \_  glibc-2.12-1.132.el6_5.4.x86_64 [5: /sbin/ldconfig, libc.so.6(GLIBC_2.4)(64bit), libdl.so.2()(64bit), libdl.so.2(GLIBC_2.2.5)(64bit), rtld(GNU_HASH)]
 |   \_  ncurses-base-5.7-3.20090208.el6.x86_64 [1: ncurses-base = 5.7-3.20090208.el6]

De quelle version repoqueryest-ce? Je suis sur F20 avec la version: 0.0.11 qui n'inclut pas ce commutateur.
slm

1.1.30-17.el6_5
Anthony Ananich

Donc, ce commutateur n'est peut-être pas un commutateur standard, c'est probablement uniquement avec une version plus ancienne ou une version fourchue pour RHEL.
slm

Tu as raison. Même topavoir différents commutateurs dans différentes distributions: unix.stackexchange.com/q/105908/16253
Anthony Ananich

Ouais donc je préfixerais votre A pour qu'il soit clair que ce n'est pas une commutation standard, ou trouver une solution générale aussi et l'ajouter à ce A.
slm
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.