GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo verificar las dependencias de un paquete en distribuciones de Linux basadas en Ubuntu/Debian

La instalación de aplicaciones a través de la línea de comandos es bastante fácil en Ubuntu/Debian. Todo lo que necesita hacer es usar apt install nombre_paquete.

Pero, ¿qué sucede si desea conocer las dependencias de un paquete antes o después de instalarlo?

En este tutorial, le mostraré varias formas de ver las dependencias de un paquete en Ubuntu y otras distribuciones de Linux basadas en Debian que usan el sistema de administración de paquetes APT.

¿Qué es la dependencia de paquetes en Ubuntu?

Si aún no lo sabía, cuando instala un paquete de software en Linux, a veces, necesita otros paquetes para funcionar correctamente. Estos paquetes adicionales se denominan dependencias. Si estos paquetes de dependencia no están instalados en el sistema, generalmente se instala automáticamente con el paquete.

Por ejemplo, la herramienta GUI HandBrake para convertir formatos de video necesita FFmpeg, GStreamer. Entonces, para HandBrake, FFmpeg y GStreamer son las dependencias.

Si no tiene estos paquetes instalados en su sistema, se instalarán automáticamente cuando instale HandBrake en Ubuntu.

Comprobar las dependencias de un paquete en distribuciones basadas en Ubuntu y Debian

Como suele suceder en Linux, hay más de una forma de lograr el mismo resultado. Veamos varias formas de ver las dependencias de un paquete.

Comprobando dependencias con apt show

Puede usar el comando apt show para mostrar los detalles de un paquete. Parte de esta información son dependencias y puede verla en la línea que comienza con Depends.

Por ejemplo, esto es lo que muestra para el paquete ubuntu-restricted-extras.

[email protected]:~$ apt show ubuntu-restricted-extras 
Package: ubuntu-restricted-extras
Version: 67
Priority: optional
Section: multiverse/metapackages
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 14.3 kB
Depends: ubuntu-restricted-addons
Recommends: libavcodec-extra, ttf-mscorefonts-installer, unrar
Download-Size: 3,200 B
APT-Manual-Installed: yes
APT-Sources: http://us.archive.ubuntu.com/ubuntu focal/multiverse amd64 Packages
Description: Commonly used media codecs and fonts for Ubuntu
 This collection of packages includes:
  - MP3 and other audio codec software to play various audio formats
    (GStreamer plugins)
  - software to install the Microsoft Web fonts
  - the Adobe Flash plugin
  - LAME, software to create compressed audio files.
 .
 This software does not include libdvdcss2, and will not let you play
 encrypted DVDs. For more information, see
 https://help.ubuntu.com/community/RestrictedFormats/PlayingDVDs
 .
 These software packages are from the Multiverse channel, restricted by
 copyright or legal issues in some countries. For more information, see
 http://www.ubuntu.com/ubuntu/licensing

Como puede ver, el paquete ubuntu-restricted-extras depende del paquete ubuntu-restricted-addons.

¡Aquí hay una trampa! El paquete de dependencia también puede depender de algún otro paquete y la cadena podría continuar. Afortunadamente, el administrador de paquetes APT se encarga de esto instalando automáticamente todas las dependencias (la mayoría de las veces).

¿Cuál es el paquete recomendado?

¿Notaste la línea que comienza con Recomendado en el resultado anterior?

Los paquetes recomendados no son dependencias directas del paquete, pero habilitan funciones adicionales.

Como puede ver, ubuntu-restricted-extras tiene ttf-mscorefonts-installer como paquete recomendado para instalar Microsoft Fonts en Ubuntu.

Los paquetes recomendados también se instalan de forma predeterminada y si desea prohibir explícitamente la instalación del paquete recomendado, use el indicador –no-install-recommends como este:

sudo apt install –no-install-recomienda nombre_paquete

Utilice apt-cache para obtener solo la información de las dependencias

El programa apto tiene demasiada información. Si desea obtener las dependencias en un script, el comando apt-cache le brinda una salida mejor y más limpia.

apt-cache depends package_name

La salida se ve mucho más limpia, ¿no es así?

Comprueba las dependencias de un archivo DEB usando dpkg

Tanto el comando apt como el apt-cache funcionan en los paquetes que están disponibles en los repositorios. Pero si descarga un archivo DEB, este comando no funcionará.

En este caso, puede usar el comando dpkg con la opción -I o –info.

dpkg -I path_to_deb_file

Las dependencias se pueden ver en la línea que comienza con Depends.

Comprobando dependencias y dependencias inversas con apt-rdepends

Si desea más detalles sobre las dependencias, puede utilizar la herramienta apt-rdepends. Esta herramienta crea el árbol de dependencia completo. Entonces, obtienes la dependencia de un paquete y las dependencias de las dependencias también.

No es un comando apt regular y tendrás que instalarlo desde el repositorio del universo:

sudo apt install apt-rdepends

La salida suele ser bastante grande dependiendo del árbol de dependencia.

Reading package lists... Done
Building dependency tree       
Reading state information... Done
shutter  
  Depends: procps
  Depends: xdg-utils
imagemagick
  Depends: imagemagick-6.q16 (>= 8:6.9.2.10+dfsg-2~)
imagemagick-6.q16
  Depends: hicolor-icon-theme
  Depends: libc6 (>= 2.4)
  Depends: libmagickcore-6.q16-6 (>= 8:6.9.10.2)
  Depends: libmagickwand-6.q16-6 (>= 8:6.9.10.2)
hicolor-icon-theme
libc6
  Depends: libcrypt1 (>= 1:4.4.10-10ubuntu4)
  Depends: libgcc-s1
libcrypt1
  Depends: libc6 (>= 2.25)

La herramienta apt-rdepends es bastante versátil. También puede calcular las dependencias inversas. Lo que significa que puede ver qué otros paquetes dependen de un determinado paquete.

apt-rdepends -r package_name

La salida podría ser bastante grande porque imprimirá el árbol de dependencia inverso.

[email protected]:~$ apt-rdepends -r ffmpeg
Reading package lists... Done
Building dependency tree       
Reading state information... Done
ffmpeg
  Reverse Depends: ardour-video-timeline (>= 1:5.12.0-3ubuntu4)
  Reverse Depends: deepin-screen-recorder (5.0.0-1build2)
  Reverse Depends: devede (4.15.0-2)
  Reverse Depends: dvd-slideshow (0.8.6.1-1)
  Reverse Depends: green-recorder (>= 3.2.3)

Espero que este tutorial rápido haya sido útil para mejorar un poco su conocimiento de la línea de comandos. Estén atentos para más consejos de este tipo.



Ubuntu
  1. Cómo verificar y cambiar un nivel de ejecución predeterminado en Ubuntu Linux

  2. ¿Cómo verificar la versión del kernel de Linux en Ubuntu?

  3. Cómo verificar los detalles de un paquete de software en Ubuntu Linux

  4. Cómo instalar Zlib en Ubuntu Linux

  5. Comprobar el tiempo de actividad en Ubuntu Linux Server - ¿Cómo hacerlo?

Cómo verificar la versión del kernel de Linux en Ubuntu y Linux Mint

Cómo instalar PowerShell en Ubuntu y otras distribuciones de Linux

Cómo evitar que un paquete se actualice en distribuciones de Linux basadas en Ubuntu y Debian

Cómo cambiar el nombre de host en Ubuntu y otras distribuciones de Linux

Cómo enumerar paquetes instalados en distribuciones de Linux basadas en Ubuntu y Debian

Cómo instalar Slack en Ubuntu 20.04 Linux