Introducción a la gestión de paquetes de Debian

Introducción a la gestión de paquetes de Debian
Ubuntu y todas las demás distribuciones de Debian Linux ofrecen un conjunto integral de sistemas de gestión de paquetes que proporciona acceso a una base de datos organizada de más de 6000 paquetes. La administración de paquetes facilita la tarea de instalación, configuración, actualización y eliminación del paquete. También resuelve el proceso de problemas relacionados con la dependencia al incluir las funciones de resolución de dependencia.

La gestión de paquetes de Debian ofrece varias herramientas que incluyen DPKG, herramienta de embalaje avanzada (APT) y utilidad de aptitud para realizar tareas de gestión de paquetes. Este tutorial utiliza cada una de estas herramientas de gestión de Debian para describir:

  • Cómo instalar, eliminar, reinstalar y actualizar los paquetes Debian?
  • Cómo encontrar archivos o bibliotecas de paquetes desinstalados?
  • Cómo obtener metadatos del paquete o la versión y detalles del contenido cuando el paquete está desinstalado?

Fondo

En los primeros sistemas de Linux, los paquetes se instalaron o agregaron tomando el código fuente del proyecto construido. Luego, los usuarios compilaron el código fuente en binarios ejecutables, incluidas páginas manuales, bibliotecas y archivos de configuración para crear un programa requerido. El usuario puede encontrar los programas ya compilados por alguien para agregar al sistema en un mejor escenario.

El programa compilado fue el tarball: un solo archivo que contenía múltiples archivos reunidos para una distribución conveniente. En otras palabras, después de la instalación de un tarball, los archivos se extienden por el sistema Linux en varias carpetas y subdirectorios apropiados como /etc., /bin, /var, /usr /share /man, etc.

Aunque es fácil crear un tarball, tiene algunos problemas como:

  • Rastrear las dependencias requeridas
  • El usuario no está al tanto de los archivos de configuración y la documentación ubicada en el sistema. Complica aún más el proceso de eliminación de software.
  • Los tarballs no contienen metadatos de software, lo que dificulta la corrección de errores y la actualización de una nueva versión.

Para resolver estos problemas, Linux introdujo un sistema complejo para la gestión de paquetes que divide todas las distribuciones de Linux para incorporar uno de los dos formatos de empaque principales conocidos como DEB y RPM. El artículo se centra en el sistema de gestión de paquetes basado en Debian utilizado por Debian y derivados de la distribución Debian como Ubuntu, Linux Mint, etc.

Antes de avanzar con la demostración de varias tareas de gestión de paquetes, expliquemos primero qué es el archivo de paquete Debian y cómo todos los administradores de paquetes de Debian se diferencian entre sí.

.archivo deb

Un archivo con un .La extensión de DEB contiene el contenido de un paquete Debian
software. El archivo DEB consta además de dos archivos TAR que componen los ejecutables, bibliotecas y otros archivos.

La sintaxis general de cualquier archivo de paquete Debian es la siguiente:

_.-_.debutante

Por ejemplo, apache_1.3.31-6_i386.Deb dice que el nombre base del software es Apache. 1.3.31-6 es el número de versión asignado por el paquete. Por último, i386 implica que el paquete se compila para la arquitectura Intel X86.

Además, cualquier archivo con el .La extensión de DEB se descarga a través del comando dpkg y representa un nombre de archivo completo. Al mismo tiempo, solo el nombre del paquete Apache se refiere a la primera parte del .archivo deb.

Gerentes de paquetes de Debian

El DPM consta de varias capas, ya que la capa superior constituye comandos de la familia de herramientas APT, y la capa inferior es de DPKG y herramientas asociadas.

dpkg

dpkg es un administrador de paquetes de Debian que instala, elimina y configura paquetes con el .Extensión de DEB. Simplemente descarga el contenido del paquete DEB al sistema y notifica sobre las dependencias requeridas. Pero no instala ni configura .paquetes DEB debido a las dependencias faltantes, ya que no tiene acceso a los repositorios.

APTO

APT es una poderosa herramienta de línea de comandos que administra la instalación y la configuración de los paquetes DEB. Administra y descarga además las dependencias necesarias para proporcionar el último software. Funciona como un front-end para DPKG: después de enumerar todas las dependencias y descargar desde el repositorio.

Por lo tanto, APT automatiza el problema en DPKG. Además, compara las dependencias e informa a los usuarios sobre el que no está en uso por ningún paquete que un usuario pueda eliminar.

Ubicación del paquete

La instalación del paquete desde cualquier centro de software de Debian o utilidades de línea de comandos (apt/apt-get) sucede mediante la descarga de paquetes de uno o más repositorios. Un repositorio de Debian o Apt es un servidor o un directorio local que contiene archivos de paquetes y sus metadatos legibles por las herramientas APT.

Por lo tanto, en todas las distribuciones basadas en Debian, el sistema de administración de paquetes APT mantiene repositorios dentro del archivo de configuración principal /etc/apt/fuentes.lista. Entonces, cada vez que un usuario ejecuta un comando para la instalación del paquete, el comando apt/apt-get se ve dentro del /etc/apt/fuentes.lista o /etc/apt/fuentes.lista.d Para URL de repositorio.

Luego descarga el software deseado para la instalación. El fuente.lista El archivo contiene además información adicional sobre los repositorios para el software para instalar. El usuario puede agregar manualmente nuevos repositorios en el /etc/apt/fuentes.lista.d Directorio sin editar el archivo de configuración principal. Sin embargo, los nombres de los nuevos archivos de repositorio deben seguir el /etc/apt/fuente.lista formato. gato el contenido del /etc/apt/fuentes.lista archivo:

ubuntu@ubuntu: ~ $ sudo gat/etc/apt/fuentes.Lista | menos

La sintaxis general para cada repositorio incluido es la siguiente:

Deb http: // repo.componente de distribución tld/ubuntu
deb-src http: // us.archivo.ubuntu.com/ ubuntu/ saucy-updates universo
  • debutante: representa el archivo de deb. Se puede ser lo que implica .paquete Deb o repositorios de DEB-SRC que contienen código fuente del paquete.
  • http: // repo.tld/ubuntu: URL del repositorio
  • distribuir: nombre de código de distribución
  • componente: son las categorías de repositorio. Por ejemplo, los repositorios de Ubuntu predeterminados tienen cuatro categorías: principal, restringido, multiverso y universo.

El APT y otras herramientas usan una base de datos local para determinar los paquetes instalados. Para mantener la base de datos local, sincronice la información con los repositorios enumerados en el fuentes.lista utilizando el Actualización de apt-get dominio. Por lo tanto, es necesario realizar una actualización de la base de datos local antes de la instalación o actualización de cada paquete.

Aptitud

La aptitud es una interfaz basada en texto basada en menú para DPKG y funciones avanzadas de gestión de paquetes de herramientas de embalaje. Es más adecuado para un entorno de interfaz no gráfico que hace que las tareas de los usuarios sean fáciles de realizar. Utiliza bibliotecas apt-get y proporciona más ventajas debido a una interfaz de usuario interactiva.

Instalación de paquetes de Debian

La instalación de Linux instala automáticamente un conjunto de paquetes que un usuario puede personalizar más según el uso del sistema, i.mi., escritorio, servidor o estación de trabajo. Un usuario también a veces requiere instalar nuevos paquetes. Discutamos la instalación del paquete con respecto a los administradores de paquetes discutidos anteriormente.

Instalación a través de apt-get

Use el comando de instalación apt-get para instalar el paquete con una lista de paquetes adicionales. La siguiente captura de pantalla muestra la lista de dependencias y indicaciones para la continuación.

ubuntu@ubuntu: ~ $ sudo apt-get install tmux

Como se muestra a continuación, después de descargar la herramienta de línea de comandos también desempaqueta el libutempter0_1.1.6-3_amd64.paquete Deb.

Preparándose para desempacar ... /libutempter0_1.1.6-3_amd64.debutante…
Desempaquetando libutempter0: AMD64 (1.1.6-3) ..

En lugar de la instalación, la bandera -s solo se resuelve si el paquete depende de otros paquetes.

ubuntu@ubuntu: ~ $ sudo apt -get install -s tmux

Se instalarán los siguientes paquetes adicionales:
libutempter0

Instalación a través de DPKG

En caso de que puedas descargar un .archivo deb con todas las dependencias, sin apt-get. Use el siguiente comando para instalarlo a través de DPKG.

ubuntu@ubuntu: ~ $ sudo dpkg -i .debutante

Instalación a través de aptitud

Ejecutar aptitud a través de una terminal con privilegios de sudo.

ubuntu@ubuntu: ~ $ sudo aptitud

Utilizar el Ctrl+t Combinación clave para ingresar al menú de aptitud principal. Pero antes de eso, use las teclas de flecha para ingresar al submenú de aptitud 'Paquetes no instalados' sección. Muestra varios submenú, elige neto y desplácese hacia abajo hasta su submenú para seleccionar principal para revelar todas las aplicaciones. Elija su aplicación deseada y presione Ingresar Para ver todos los detalles del paquete.

Marque la aplicación para la instalación presionando el '+'clave y presione el'gramo'Clave para comenzar la instalación. Durante la instalación, la aptitud estará en modo consola; Una vez hecho esto, vuelve a la interfaz de usuario con una visualización de una descripción completa del paquete.

Eliminación de paquetes de Debian

La sección elabora en el proceso de eliminación de paquetes de Debian. Discutamos el proceso de eliminación de paquetes a través de cada administrador de paquetes.

Eliminar paquete a través de APT

La opción eliminar un comando apt-get solo elimina todos los datos del paquete.

ubuntu@ubuntu: ~ $ sudo apt-get eliminar tmux

Es decir, todos los archivos de configuración se dejan atrás. Por lo tanto, si el comando se ejecuta accidentalmente, emita un comando de instalación para el paquete eliminado para restaurar su función. Para eliminar todos los archivos de configuración, también use la opción Purge.

ubuntu@ubuntu: ~ $ sudo apt-get purge tmux

Además, la salida en la captura de pantalla anterior muestra que no se eliminan las dependencias no requeridas. Para este propósito, la opción -auto -remove hace el trabajo por nosotros.

ubuntu@ubuntu: ~ $ sudo apt-get --auto-remove tmux

Combine las opciones Purge y -Auto -Remove para eliminar completamente todos los datos y archivos junto con dependencias no requeridas.

ubuntu@ubuntu: ~ $ sudo apt-get purge --auto-remove tmux

Eliminar paquetes a través de DPKG

El proceso de eliminación de paquetes en DPKG es casi similar. Use DPKG -R para eliminar los datos del paquete y DPKG -P para eliminar completamente el paquete. Primero, enumere el paquete para asegurarse de que esté instalado correctamente en el sistema.

ubuntu@ubuntu: ~ $ dpkg -l | Grep Tmux
ubuntu@ubuntu: ~ $ sudo dpkg -r tmux
ubuntu@ubuntu: ~ $ sudo dpkg -p tmux

dpkg Además, permite eliminar con fuerza los archivos en un escenario de actualización de distribución que requiere que el usuario elimine o elimine un paquete. Pero a veces, la opción de eliminación no funciona debido a las dependencias no satisfechas del paquete o una instalación incompleta. Para eso, DPKG ofrece eliminación de paquetes forzados:

ubuntu@ubuntu: ~ $ sudo dpkg --force-all--Remove Tmux

Eliminar paquetes a través de aptitud

La desinstalación a través de la aptitud es tan simple como la instalación. Desplácese hacia abajo y seleccione 'Paquetes instalados' para ver todos los programas instalados. Seleccionar net-> principal y elija el programa presionando un '-' llave. Prensa 'gramo'Para eliminar el paquete seleccionado.

Actualización del paquete Debian

Para actualizar un solo paquete, use el comando apt-get con la opción Instalar. También actualiza los paquetes o dependencias adicionales. Sin embargo, es necesario asegurarse de que las bases de datos locales reflejen las últimas actualizaciones:

ubuntu@ubuntu: ~ $ sudo apt-get actualización
ubuntu@ubuntu: ~ $ sudo apt-get install vim

En lugar de actualizar los paquetes individualmente, es mejor actualizar todas las aplicaciones en el sistema, de la siguiente manera:

ubuntu@ubuntu: ~ $ sudo apt-get actualización
ubuntu@ubuntu: ~ $ sudo apt-get actualización

Encontrar información desinstalada del paquete Debian

Todas las herramientas de administración de paquetes son conscientes de los paquetes disponibles que un usuario puede necesitar instalar. APT-Cache es uno de esos comando que mantiene un repositorio que contiene información sobre los paquetes de la lista de origen. Permite al usuario recuperar la información sobre los paquetes en el caché de APT.

Por ejemplo, para instalar un paquete relevante para un programa de chat sin conocimiento del nombre del paquete, un usuario puede usar el siguiente comando:

ubuntu@ubuntu: ~ $ sudo apt-cache chat de búsqueda

El comando anterior devolverá una lista de paquetes disponibles para una aplicación de chat.

Del mismo modo, hay muchas herramientas disponibles para encontrar paquetes de una lista ya disponible de paquetes. Los usuarios pueden encontrar muchos detalles sobre el paquete instalado con ellos, pero no para uno desinstalado, por ejemplo, archivos dentro de un paquete desinstalado. Para este propósito, use la opción -d con un comando apt -get, ya que solo descarga el paquete.

ubuntu@ubuntu: ~ $ sudo apt -get install -d python3

El archivo del paquete descargado se encuentra dentro /var/cache/apt/archives/ directorio. Ahora use el comando dpkg con el -información opción para mostrar los detalles del paquete o el -contenido opción para mostrar archivos de paquete.

ubuntu@ubuntu: ~ $ dpkg --info/var/cache/apt/archives/nmap_7.60-1ubuntu5_amd64.Deb | Menos
ubuntu@ubuntu: ~ $ dpkg --contents/var/cache/apt/archives/nmap_7.60-1ubuntu5_amd64.Deb | Menos

Encontrar información de paquetes de Debian instalados

La herramienta DPKG utiliza muchos archivos disponibles en el /var/lib/dpkg directorio. Uno de ellos es el /var/lib/dpkg/status Archivo que contiene información de estado del paquete. El uso de un comando dpkg con la opción -s muestra el estado de los paquetes en el sistema.

ubuntu@ubuntu: ~ $ sudo dpkg -s vim

DPKG también permite a los usuarios de Linux encontrar detalles de un paquete en particular y un archivo que pertenece a un paquete específico. La opción DPKG Tool -L enumera todos los archivos y directorios del paquete de interés. Todo dpkg Requiere un nombre de paquete, pero cuando hay varias versiones de una aplicación disponibles, requiere un nombre más detallado que contiene detalles de la versión.

ubuntu@ubuntu: ~ $ dpkg -l vim

Para encontrar un paquete que contenga un archivo específico, use el -S bandera. Por ejemplo, use el siguiente comando para determinar qué paquete contiene el archivo/usr/bin/apt-get.

ubuntu@ubuntu: ~ $ dpkg -s/usr/bin/apt -get

Por último, podemos encontrar detalles o propósito de un paquete en particular de la siguiente manera:

ubuntu@ubuntu: ~ $ dpkg -p vim

Conclusión

El artículo proporciona una descripción detallada de la gestión de paquetes de Debian. Discute varias formas de instalar, eliminar, actualizar o actualizar paquetes. También aprendimos a encontrar el estado del paquete y muchos otros detalles sobre los paquetes de Debian desinstalados. El artículo es una guía única que cubre todos los aspectos de la gestión de paquetes en Ubuntu o cualquier distribución de Debian. Gracias por llegar tan lejos; Puede colocar sus consultas en la sección de comentarios a continuación. Para obtener detalles sobre la gestión de paquetes en distribuciones RHEL, lea Introducción a RPM/YUM Package Management.