Saber las dependencias de un paquete

por | 21 junio, 2019

Estaba tranquilo en el trabajo cuando de la nada…
PAF! necesitamos instalar el agente zabbix en esta plataforma offline

ademas de offline los tacaños no compraron la subscripcion a red hat el tema que tenia que instalar un software y en la documentación oficial no figuran las dependencias por lo que toco investigar (empezando por red hat obviamente) y los comandos son bastante simples

rpm -qpR  

Esto nos mostrara una salida asi

rpm -qpR openssl-1.0.2k-16.el7_6.1.x86_64.rpm
/bin/bash
/bin/sh
coreutils
libc.so.6()(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.15)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.7)(64bit)
libcom_err.so.2()(64bit)
libcrypto.so.10()(64bit)
libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit)
libcrypto.so.10(OPENSSL_1.0.2)(64bit)
libcrypto.so.10(libcrypto.so.10)(64bit)
libdl.so.2()(64bit)
libgssapi_krb5.so.2()(64bit)
libk5crypto.so.3()(64bit)
libkrb5.so.3()(64bit)
libssl.so.10()(64bit)
libssl.so.10(libssl.so.10)(64bit)
libz.so.1()(64bit)
make
openssl-libs(x86-64) = 1:1.0.2k-16.el7_6.1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1

Ahora, si solo necesitamos que nos muestre las dependencias faltantes el comando es

rpm -Uvh --test 
rpm -Uvh --test  openssl-1.0.2k-16.el7_6.1.x86_64.rpm
error: Error de dependencias:
        openssl-libs(x86-64) = 1:1.0.2k-16.el7_6.1 es necesario por openssl-1:1.0.2k-16.el7_6.1.x86_64

los 2 comandos anteriores es para paquetes que estén de forma local si queremos consultar por paquetes online el comando es

Y para finalizar, en el caso de Debian y derivados

dpkg-deb -I 

y su salida es mas completa que rpm

$ dpkg-deb -I libcurl3_7.47.0-1ubuntu2_amd64.deb
 paquete debian nuevo, versión 2.0.
 tamaño 184916 bytes: archivo de control= 1667 bytes.
    1305 bytes,    28 líneas     control
     363 bytes,     5 líneas     md5sums
      19 bytes,     1 líneas     shlibs
    2567 bytes,    65 líneas     symbols
      60 bytes,     2 líneas     triggers
 Package: libcurl3
 Source: curl
 Version: 7.47.0-1ubuntu2
 Architecture: amd64
 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
 Installed-Size: 549
 Depends: libc6 (>= 2.17), libgssapi-krb5-2 (>= 1.10+dfsg~), libidn11 (>= 1.13), libldap-2.4-2 (>= 2.4.7), librtmp1 (>= 2.4+20131018.git79459a2-3~), libssl1.0.0 (>= 1.0.2~beta3), zlib1g (>= 1:1.1.4)
 Recommends: ca-certificates
 Section: libs
 Priority: optional
 Multi-Arch: same
 Homepage: http://curl.haxx.se
 Description: easy-to-use client-side URL transfer library (OpenSSL flavour)
  libcurl is an easy-to-use client-side URL transfer library, supporting DICT,
  FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S,
  RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP.
  .
  libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP
  form based upload, proxies, cookies, user+password authentication (Basic,
  Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling
  and more!
  .
  libcurl is free, thread-safe, IPv6 compatible, feature rich, well supported,
  fast, thoroughly documented and is already used by many known, big and
  successful companies and numerous applications.
  .
  SSL support is provided by OpenSSL.
 Original-Maintainer: Alessandro Ghedini 

y eso es todo por hoy

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *