Búsqueda de sitios web

¿Cómo puedo ver el historial de DPKG y apt?


Este tutorial explica cómo ver el historial de dpkg y apt en las distribuciones de Linux basadas en Debian.

Después de leer este tutorial, sabrá cómo encontrar información sobre los paquetes instalados, eliminados y actualizados usando los comandos apt, dpkg-query y leyendo los registros de dpkg. Hay instrucciones para crear una lista de paquetes instalados, instalar todos los paquetes enumerados en una computadora nueva y consejos adicionales sobre apt y dpkg.

Ver paquetes instalados usando apt

El siguiente comando imprime una lista de todo el software instalado a través del administrador de paquetes apt/apt-get.

apt --installed list

Listado de paquetes instalados con dpkg-query

dpkg-query es un comando para mostrar información sobre paquetes de la base de datos dpkg.

sudo dpkg-query -l

Contar todos los paquetes instalados

Usando dpkg-query, puede obtener un recuento total de todos los paquetes instalados. El indicador -f enumerará solo todos los paquetes binarios, luego el comando wc cuenta todos los paquetes enumerados:

sudo dpkg-query -f '${binary:Package}\n' -W | wc -l

Como puede ver, hay 2802 paquetes instalados. 

Ver registros de lectura de paquetes instalados

Puede leer la actividad reciente de apt (instalación, eliminación, actualización) leyendo el registro /var/log/apt/history.log como se muestra a continuación:

cat /var/log/apt/history.log

Para obtener información sobre los paquetes instalados con dpkg, debe leer los registros de dpkg ubicados en /var/log. Puede leer el registro actual ejecutando el siguiente comando:

grep " install " /var/log/dpkg.log

Para consultar el registro anterior, consulte el archivo /var/log/dpkg.log.1.

grep " install " /var/log/dpkg.log.1

La lectura de registros comprimidos es el mismo proceso pero con zgrep en lugar de grep, como se muestra en el siguiente ejemplo.

zgrep " install " /var/log/dpkg.log.10.gz

Si desea ver todos los registros comprimidos a la vez, puede usar un comodín como en el siguiente ejemplo:

zgrep " install " /var/log/dpkg.log.*.gz

Lista de paquetes eliminados

También puede enumerar los paquetes eliminados leyendo los registros reemplazando "instalar" con "eliminar", como se muestra en la imagen a continuación.

grep "remove " /var/log/dpkg.log

Al igual que en el ejemplo anterior, también puede usar el comando zgrep y un comodín para leer todos los registros comprimidos, como se muestra en la siguiente captura de pantalla.

zgrep "remove " /var/log/dpkg.log.*.gz

Lista de paquetes actualizados

Para mostrar los paquetes actualizados, reemplace "instalar" o "eliminar" con "actualizar", como se muestra en el ejemplo a continuación.

grep "upgrade " /var/log/dpkg.log

Utilice zgrep para leer registros comprimidos.

zgrep "upgrade " /var/log/dpkg.log.10.gz

Al igual que con los ejemplos anteriores, también puede usar un comodín.

zgrep "upgrade " /var/log/dpkg.log.*.gz

Exportar lista de paquetes instalados para instalar en un nuevo dispositivo

Puede crear una lista de paquetes instalados y luego importarla a un nuevo dispositivo para instalar el mismo software.

Para crear una lista de paquetes instalados, puede realizar un procedimiento similar al utilizado para contar los paquetes instalados, como se muestra a continuación. En lugar de contar, el siguiente comando crea una lista llamada paquetes instalados.

sudo dpkg-query -f '${binary:Package}\n' -W > installedpackages

En la computadora que desea instalar, ejecute los mismos paquetes:

sudo xargs -a installedpackages apt install

En la captura de pantalla a continuación, el apt se ejecutó en la misma computadora en la que se creó la lista; por lo tanto, detectó que los paquetes ya están instalados.

Actualización de paquetes obsoletos

Puede usar el comando apt para buscar paquetes obsoletos para actualizar ejecutando el siguiente comando:

sudo apt --fix-missing update

Corregir dependencias o paquetes rotos

Para corregir dependencias o paquetes rotos, después de ejecutar apt-get update, ejecute el siguiente comando.

sudo apt-get install -f

Acerca de apt y dpkg

  • APT (Herramienta avanzada de paquetes) automatiza la recuperación, configuración (incluida la resolución de dependencias) e instalación de paquetes. Puede considerarse el administrador de paquetes principal en algunas distribuciones de Linux basadas en Debian (incluida la propia Debian) o una interfaz para el administrador de paquetes dpkg.
    La principal ventaja de APT sobre DPKG es su capacidad para resolver dependencias y realizar un seguimiento de las actualizaciones. Apt también se usa para la eliminación de paquetes, actualizaciones y este tutorial para recuperar información.

  • DPKG es el administrador de paquetes de Debian utilizado por APT. Como se dijo anteriormente, si bien es mucho mejor que compilar, tiene desventajas antes que APT. Maneja paquetes individuales y no resuelve dependencias. Aún así, DPKG incluye herramientas interesantes como dpkg-query mencionada en este tutorial. Otras herramientas incluyen dpkg-split, dpkg-statoverride, dpkg-trigger, dpkg-divert. Dpkg incluye las siguientes herramientas de desarrollo: dpkg-source, dpkg-gencontrol, dpkg-shlibdeps, dpkg-genchanges, dpkg-buildpackage, dpkg-dist y dpkg-parsechangelog.

Para obtener información adicional sobre el administrador de paquetes apt/apt-get, visite la página del manual https://linux.die.net/man/8/apt-get.

Para obtener información adicional sobre dpkg, visite la página del manual https://linux.die.net/man/1/dpkg.

Conclusión

Como puede ver, mostrar el software instalado, eliminado y actualizado es una tarea fácil que cualquier nivel de usuario de Linux puede ejecutar con unos pocos comandos. Linux ofrece una variedad de comandos y herramientas versátiles para gestionar y administrar paquetes de forma personalizada. Por ejemplo, obtener el recuento total de programas instalados en Microsoft Windows puede ser más difícil o imposible sin la ayuda de una herramienta externa.

Aprender tareas simples como las explicadas en este tutorial puede ahorrarle mucho tiempo, como se demuestra en la sección que describe cómo exportar una lista de paquetes para instalar en un nuevo dispositivo, especialmente útil cuando necesita crear un servidor similar y la clonación no es t una opción.

Aprender a administrar y gestionar paquetes es un conocimiento clave y básico que todo usuario debe tener.

Espero que este tutorial haya sido útil. Siga las sugerencias de Linux para obtener más consejos y tutoriales de Linux.

Artículos relacionados: