Lista de paquetes actualizables con el comando apt en Ubuntu

El comando apt se utiliza para la gestión de paquetes en Debian y Ubuntu. Aunque probablemente ya esté familiarizado con las opciones de instalación y eliminación, apt también proporciona algunas funciones adicionales.
Warp Terminal

El comando apt se utiliza para la gestión de paquetes en Debian y Ubuntu. Aunque probablemente ya esté familiarizado con las opciones de instalación y eliminación, apt también proporciona algunas funciones adicionales.

Una de ellas es la posibilidad de ver todos los paquetes actualizables de tu sistema. Y para mostrarlos, todo lo que tienes que hacer es utilizar este comando en la terminal:

apt list --upgradable

Como puedes observar, ni siquiera necesita sudo para listar los paquetes actualizables. Solo lista los paquetes que pueden ser actualizados. No los actualiza.

De hecho, el comando apt añade esta sugerencia cuando ejecutas el comando sudo apt update para actualizar la caché del repositorio local de paquetes.

Obtenido 1.243 kB en 17s (71,4 kB/s)           
Leyendo listas de paquetes... Hecho
Construyendo árbol de dependencias... Hecho
Lectura de información de estado... Realizado
Se pueden actualizar 30 paquetes. Ejecute 'apt list --upgradable' para verlos.

No recuerdo ninguna opción directa similar en el antiguo comando apt-get para listar todos los paquetes actualizables. Esta es una de las nuevas características que apt ha añadido al antiguo comando apt-get.

Hablemos de ello con un poco más de detalle.

Listado de todos los paquetes actualizables

Lo que debes saber aquí es que sólo podrás listar las actualizaciones disponibles a través del gestor de paquetes de APT. Por tanto, si has añadido PPAs o repositorios externos al sources.list de su sistema, verás las actualizaciones de los mismos.

Pero aquí no obtendrás actualizaciones para AppImage, Flatpak, Snap o algunos otros formatos de empaquetado.

En otras palabras, sólo funciona con paquetes apt.

Así que, para listar todos los paquetes actualizables en tu sistema Ubuntu o Debian, deberías actualizar primero la caché local de paquetes:

sudo apt update

Y entonces tu sistema estará al tanto de las actualizaciones de paquetes disponibles. El comando apt le indica cuántos paquetes pueden actualizarse al final del comando update:

Para ver qué paquetes se pueden actualizar, ejecuta el comando:

apt list --upgradable

Deberías ver una salida como ésta:

marcocarmonapy@Honor:~$ apt list --upgradable 
Listing... Done
apparmor/jammy-updates 3.0.4-2ubuntu2.1 amd64 [upgradable from: 3.0.4-2ubuntu2]
brave-browser/stable 1.40.113 amd64 [upgradable from: 1.40.107]
evolution-data-server-common/jammy-updates,jammy-updates 3.44.2-0ubuntu1 all [upgradable from: 3.44.1-0ubuntu2]
evolution-data-server/jammy-updates 3.44.2-0ubuntu1 amd64 [upgradable from: 3.44.1-0ubuntu2]

Enumera todos los paquetes actualizables por orden alfabético con la información sobre la versión instalada actualmente y la nueva versión disponible del paquete.

brave-browser/stable 1.40.113 amd64 [upgradable from: 1.40.107]

Por ejemplo, muestra que tengo la versión 1.40.107 del navegador Brave instalada en el sistema, y que la versión 1.40.113 está disponible.

¿Qué se puede hacer con esta información? Déjame compartir algunas cosas que se me ocurren.

Actualizar todos los paquetes

Esto es probablemente lo que la mayoría de los usuarios ocasionales de Ubuntu hacen. Puedes actualizar todos los paquetes actualizables con el siguiente comando:

sudo apt upgrade

Enumera los paquetes que se actualizarán y, a continuación, pide que se confirme la actualización pulsando Intro o Y.

Si estás seguro de actualizar todos los paquetes, puedes saltarte la parte "¿Desea continuar?" dándole el visto bueno añadiendo -y al comando.

sudo apt upgrade -y

Simular una actualización (pero no actualizar ningún paquete)

Esto es lo que la gente hacía antes del comando apt list. Con la opción simular, en realidad no hace ningún cambio. Sólo muestra qué paquetes se instalarán o actualizarán si ejecuta la actualización.

apt -s upgrade

No necesitas usar sudo (aunque yo lo he usado en la captura de pantalla de abajo).

Actualizar sólo los paquetes seleccionados

Si estás administrando un servidor Ubuntu y no quieres actualizar todos los paquetes sino sólo uno de los seleccionados (como MySQL/Ngnix), puedes hacerlo fácilmente con el comando apt.

sudo apt --only-upgrade install nombre_paquete

En realidad, si ejecutas el comando apt install en un paquete ya instalado para el que hay disponible una actualización, actualizará el paquete.

Con la opción --only-upgrade, se asegura de que un paquete sólo se actualiza (si ya está instalado). No instalará el paquete dado si no está ya instalado.

También puedes actualizar algunos paquetes seleccionados indicando su nombre:

sudo apt --only-upgrade install paquete_1 paquete_2

También puedes hacer lo contrario y retener los paquetes seleccionados de la actualización.

sudo apt-mark hold nombre_paquete

De este modo, el paquete en cuestión no se actualizará cuando actualice todos los paquetes del sistema.

Puedes eliminar la retención con este comando:

sudo apt-mark unhold nombre_paquete

¿Muestra las actualizaciones del kernel?

Esto es un poco complicado.

Cuando ejecutas el comando 'apt list -upgradable' muestra todos los paquetes que se pueden actualizar.

Pero si hay nuevas versiones del kernel disponibles, puede que no se muestren ya que el nombre del paquete del kernel empieza por linux-headers-x-y. Esto se debe a que el sistema los trata como nuevos paquetes, no como una actualización del paquete linux-headers-a-b ya instalado.

Sin embargo, seguirá viendo el tipo de paquete "linux-generic-hwe" en la lista de paquetes actualizables. Porque ese paquete será actualizado (con el nuevo kernel).

Conclusión

La capacidad de listar paquetes actualizables es una de las varias nuevas características que el comando apt trajo sobre el antiguo comando apt-get. Para más información sobre este tema, puedes leer mi artículo explicando la diferencia entre los comandos apt y apt-get.

Como usuario de escritorio, no siempre compruebo los paquetes que se pueden actualizar. Hago la actualización directamente. Sin embargo, cuando estoy administrando un servidor, prefiero ver qué actualizaciones están disponibles y luego decidir si voy a actualizar o no.

¿Y usted? ¿Ves un buen uso para esta función?

About the author
Marco Carmona

Marco Carmona

My name is Marco Antonio Carmona, I'm a physics and data science student, a great and passionate reader, and randomly, my favorite hobby is writing about what I learn day by day.

It's FOSS

Making You a Better Linux User

It's FOSS

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.