Cómo listar los paquetes instalados en Debian
![]()
Uno de los primeros comandos que aprende cualquier administrador de sistemas Debian (o de cualquier distribución basada en él, como Ubuntu) es cómo consultar qué paquetes hay instalados en el sistema. Aunque parece una tarea sencilla, existen varias formas de hacerlo según el nivel de detalle que necesites: desde un listado completo con versiones y descripciones, hasta una lista limpia con solo los nombres.
En este artículo repasamos los comandos más útiles para este propósito.
1. Listado completo con dpkg
dpkg es el gestor de paquetes de bajo nivel de Debian, y es la herramienta más directa para consultar el estado del sistema:
bash
dpkg -lEste comando muestra todos los paquetes instalados junto con su versión, arquitectura y una breve descripción. Es muy completo, pero también muy extenso, por lo que suele combinarse con grep para buscar un paquete concreto:
bash
dpkg -l | grep nombre_paquete2. Listado con apt
Para quienes prefieren una salida algo más legible, apt ofrece su propia versión del listado:
bash
apt list --installedMuestra el nombre del paquete junto con su versión y arquitectura, en un formato más moderno que el de dpkg.
3. Solo los paquetes instalados manualmente
Un matiz importante: tanto dpkg -l como apt list --installed muestran todos los paquetes, incluyendo las dependencias que se instalaron automáticamente junto a otros programas. Si lo que quieres es ver únicamente lo que tú (o el administrador del sistema) instalasteis explícitamente, el comando es:
bash
apt-mark showmanualEsto resulta muy útil para hacerse una idea real de qué software se ha decidido instalar, sin el "ruido" de las dependencias.
4. Contar el número de paquetes instalados
Si solo necesitas saber cuántos paquetes hay instalados en total:
bash
dpkg -l | grep '^ii' | wc -lEl filtro ^ii selecciona únicamente las líneas correspondientes a paquetes correctamente instalados (dpkg también reporta paquetes en otros estados, como eliminados pero no purgados).
5. Información detallada de un paquete concreto
Para consultar los datos completos de un paquete específico —versión, mantenedor, dependencias, tamaño, etc:
bash
dpkg -s nombre_paquete6. Listar solo los nombres de los paquetes, sin detalles
Cuando lo único que interesa es una lista limpia de nombres, sin versiones ni descripciones —por ejemplo, para procesarla con un script o compararla entre dos máquinas—, hay varias formas de conseguirlo:
Con dpkg-query (la opción más directa y recomendada):
bash
dpkg-query -W -f='${Package}\n'Con apt, recortando la salida:
bash
apt list --installed 2>/dev/null | cut -d/ -f1Extrayendo el nombre desde dpkg -l:
bash
dpkg -l | awk '/^ii/ {print $2}'Los tres comandos producen el mismo resultado: una lista con un paquete por línea. La primera opción, con dpkg-query, es la más eficiente porque está pensada específicamente para ese formato de salida.
Resumen
| Necesidad | Comando |
|---|---|
| Listado completo (nombre, versión, descripción) | dpkg -l |
Listado con apt | apt list --installed |
| Solo instalados manualmente | apt-mark showmanual |
| Contar paquetes instalados | dpkg -l | grep '^ii' | wc -l |
| Detalle de un paquete | dpkg -s nombre_paquete |
| Solo nombres, sin detalles | dpkg-query -W -f='${Package}\n' |
Con estos comandos cubres prácticamente cualquier necesidad relacionada con la consulta de paquetes en un sistema Debian, desde una auditoría rápida hasta la generación de listas para scripts o comparaciones entre máquinas.
