Geekflare recibe el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliación de los enlaces de compra en este sitio.
En DevOps Última actualización: 24 de septiembre de 2023
Compartir en:
Escáner de seguridad de aplicaciones web Invicti - la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

APT o Advanced Package Tool es la utilidad de línea de comandos para la gestión de paquetes en las distribuciones basadas en Debian/Ubuntu

Es uno de los gestores de paquetes disponibles junto con apt-get pero, al igual que los demás, le permite instalar, modificar o eliminar diferentes paquetes sin necesidad de construirlos a partir del código fuente. Puede realizar muchas más acciones relacionadas con la gestión de paquetes que vamos a cubrir en las siguientes secciones

La sintaxis general del uso del comando apt es la siguiente

$ apt [COMANDO] [PAQUETE]

Recuerde utilizar sudo con apt, ya que muchos de sus subcomandos requerirían el privilegio para realizar cambios a nivel de sistema

Aquí cubriremos diferentes subcomandos que puede utilizar con apt y su uso

Actualizar la base de datos de paquetes

apt necesita un repositorio de paquetes con una base de datos de todos los paquetes disponibles que se pueden instalar en un sistema Debian/Ubuntu. Esta base de datos de repositorios debe actualizarse antes de comenzar a instalar un paquete, ya que apt debe conocer los detalles sobre el paquete, su versión, arquitectura y ubicación remota

Actualizar la base de datos de repositorios es fácil y puede hacerse con

$ sudo apt update

Ejemplo

abhisheknair@geekflare:~$ sudo apt update
Obtener:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Obtener:2 http://azure.archive.ubuntu.com/ubuntu focal InRelease
Obtener:3 http://azure.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Obtener:4 http://azure.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
Get:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [1086 kB]
Get:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [841 kB]
Fetched 2255 kB in 1s (2677 kB/s)
Leyendo listas de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Se pueden actualizar 14 paquetes. Ejecute 'apt list --upgradable' para verlos.
abhisheknair@geekflare:~$

Actualizar paquetes instalados

Los paquetes instalados en un sistema pueden actualizarse a la última versión disponible utilizando

$ sudo apt upgrade

Con el comando upgrade, los paquetes se instalarán si es necesario para satisfacer las dependencias, pero los paquetes existentes nunca se eliminarán. Si la actualización de un paquete requiere la eliminación de un paquete instalado, entonces no se realizará la actualización de este paquete.

Ejemplo

abhisheknair@geekflare:~$ sudo apt update
Obtener:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Obtener:2 http://azure.archive.ubuntu.com/ubuntu focal InRelease
Obtener:3 http://azure.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Obtener:4 http://azure.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
Get:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [1086 kB]
Get:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [841 kB]
Fetched 2255 kB in 1s (2677 kB/s)
Leyendo listas de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Se pueden actualizar 14 paquetes. Ejecute 'apt list --upgradable' para verlos.
abhisheknair@geekflare:~$ sudo apt upgrade
Leyendo listas de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Calculando la actualización... Hecho
Se actualizarán los siguientes paquetes:
 apt apt-utils libapt-pkg6.0 libpython3.8 libpython3.8-minimal libpython3.8-stdlib libuv1 linux-base linux-base-sgx open-vm-tools python3-distupgrade python3.8
 python3.8-minimal ubuntu-release-upgrader-core
14 actualizados, 0 recién instalados, 0 para eliminar y 0 no actualizados.
Necesita obtener 9485 kB de archivos.
Tras esta operación, se utilizarán 603 kB de espacio adicional en disco.
¿Desea continuar? [S/n] Y
Obtener:1 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libapt-pkg6.0 amd64 2.0.6 [835 kB]
Obtener:2 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 apt amd64 2.0.6 [1296 kB]
Obtener:3 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 apt-utils amd64 2.0.6 [216 kB]
Get:4 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8 amd64 3.8.10-0ubuntu1~20.04 [1625 kB]
Get:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3.8 amd64 3.8.10-0ubuntu1~20.04 [387 kB]
Get:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8-stdlib amd64 3.8.10-0ubuntu1~20.04 [1675 kB]
Get:7 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3.8-minimal amd64 3.8.10-0ubuntu1~20.04 [1898 kB]
Get:8 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8-minimal amd64 3.8.10-0ubuntu1~20.04 [717 kB]
Get:9 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libuv1 amd64 1.34.2-1ubuntu1.3 [80.8 kB]
Get:10 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 ubuntu-release-upgrader-core all 1:20.04.35 [23.9 kB]
Get:11 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-distupgrade all 1:20.04.35 [104 kB]
Get:12 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 linux-base all 4.5ubuntu3.6 [17.8 kB]
Get:13 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 linux-base-sgx all 4.5ubuntu3.6 [4660 B]
Get:14 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 open-vm-tools amd64 2:11.2.5-2ubuntu1~ubuntu20.04.1 [604 kB]
Fetched 9485 kB in 0s (54.4 MB/s)
Preconfigurando paquetes ...
(Leyendo base de datos ... 59511 archivos y directorios instalados actualmente.)
Preparando para desempaquetar .../libapt-pkg6.0_2.0.6_amd64.deb ...
Desempaquetando libapt-pkg6.0:amd64 (2.0.6) sobre (2.0.5) ...
Instalando libapt-pkg6.0:amd64 (2.0.6) ...
(Leyendo base de datos ... 59511 archivos y directorios instalados actualmente.)
Preparando para desempaquetar .../archives/apt_2.0.6_amd64.deb ...
Desempaquetando apt (2.0.6) sobre (2.0.5) ...
Configurando apt (2.0.6) ...
(Leyendo base de datos ... 59511 archivos y directorios instalados actualmente.)
Preparando para desempaquetar .../00-apt-utils_2.0.6_amd64.deb ...
Desempaquetando apt-utils (2.0.6) sobre (2.0.5) ...
Preparando para desempaquetar .../01-libpython3.8_3.8.10-0ubuntu1~20.04_amd64.deb ...
Desempaquetando libpython3.8:amd64 (3.8.10-0ubuntu1~20.04) sobre (3.8.5-1~20.04.3) ...
Preparando para desempaquetar .../02-python3.8_3.8.10-0ubuntu1~20.04_amd64.deb ...
Desempaquetando python3.8 (3.8.10-0ubuntu1~20.04) sobre (3.8.5-1~20.04.3) ...
Preparando para desempaquetar .../03-libpython3.8-stdlib_3.8.10-0ubuntu1~20.04_amd64.deb ...
Desempaquetando libpython3.8-stdlib:amd64 (3.8.10-0ubuntu1~20.04) sobre (3.8.5-1~20.04.3) ...
Preparando el desempaquetado .../04-python3.8-minimal_3.8.10-0ubuntu1~20.04_amd64.deb ...
Desempaquetando python3.8-minimal (3.8.10-0ubuntu1~20.04) sobre (3.8.5-1~20.04.3) ...
Preparando para desempaquetar .../05-libpython3.8-minimal_3.8.10-0ubuntu1~20.04_amd64.deb ...
Desempaquetando libpython3.8-minimal:amd64 (3.8.10-0ubuntu1~20.04) sobre (3.8.5-1~20.04.3) ...
Preparándose para desempaquetar .../06-libuv1_1.34.2-1ubuntu1.3_amd64.deb ...
Desempaquetando libuv1:amd64 (1.34.2-1ubuntu1.3) sobre (1.34.2-1ubuntu1.1) ...
Preparándose para desempaquetar ...../07-ubuntu-release-upgrader-core_1:20.04.35_all.deb ...
Desempaquetando ubuntu-release-upgrader-core (1:20.04.35) sobre (1:20.04.33) ...
Preparando para desempaquetar .../08-python3-distupgrade_1:20.04.35_all.deb ...
Desempaquetando python3-distupgrade (1:20.04.35) sobre (1:20.04.33) ...
Preparando para desempaquetar .../09-linux-base_4.5ubuntu3.6_all.deb ...
Desempaquetando linux-base (4.5ubuntu3.6) sobre (4.5ubuntu3.1) ...
Preparando el desempaquetado de .../10-linux-base-sgx_4.5ubuntu3.6_all.deb ...
Desempaquetando linux-base-sgx (4.5ubuntu3.6) sobre (4.5ubuntu3.1) ...
Preparando para desempaquetar .../11-open-vm-tools_2:11.2.5-2ubuntu1~ubuntu20.04.1_amd64.deb ...
Desempaquetando open-vm-tools (2:11.2.5-2ubuntu1~ubuntu20.04.1) sobre (2:11.0.5-4) ...
Instalando libpython3.8-minimal:amd64 (3.8.10-0ubuntu1~20.04) ...
Instalando apt-utils (2.0.6) ...
Instalando linux-base (4.5ubuntu3.6) ...
Instalando python3-distupgrade (1:20.04.35) ...
Instalando libuv1:amd64 (1.34.2-1ubuntu1.3) ...
Instalando linux-base-sgx (4.5ubuntu3.6) ...
Instalando ubuntu-release-upgrader-core (1:20.04.35) ...
Instalando python3.8-minimal (3.8.10-0ubuntu1~20.04) ...
Instalando open-vm-tools (2:11.2.5-2ubuntu1~ubuntu20.04.1) ...
Instalando nueva versión del archivo de configuración /etc/vmware-tools/tools.conf.example ...
Instalando nueva versión del archivo de configuración /etc/vmware-tools/vgauth.conf ...
Instalando libpython3.8-stdlib:amd64 (3.8.10-0ubuntu1~20.04) ...
Instalando python3.8 (3.8.10-0ubuntu1~20.04) ...
Configurando libpython3.8:amd64 (3.8.10-0ubuntu1~20.04) ...
Procesando triggers para libc-bin (2.31-0ubuntu9.2) ...
Procesando triggers para systemd (245.4-4ubuntu3.7) ...
Procesando triggers para man-db (2.9.1-1) ...
Procesando triggers para mime-support (3.64ubuntu1) ...
abhisheknair@geekflare:~$

Asegúrese de haber ejecutado sudo apt update antes de actualizar sus paquetes para evitar problemas durante la actualización así como para asegurarse de que obtiene los últimos paquetes disponibles del repositorio. Si lo desea, puede ejecutar estos comandos en una sola línea como

$ sudo apt update && sudo apt upgrade -y

Paquetes de actualización completos

apt también ofrece un comando de actualización completa. Se diferencia del comando upgrade en que eliminará los paquetes actualmente instalados si esto es necesario para actualizar el sistema en su conjunto. Como tal tenga cuidado con este comando y si es posible, vaya con el comando upgrade en su lugar

$ sudo apt full-upgrade

Instalar un solo paquete

La instalación de un nuevo paquete puede realizarse con apt utilizando la siguiente sintaxis
$ sudo

 apt install [nombre-del-paquete]

Ejemplo

abhisheknair@geekflare:~$ sudo apt install unzip
Leyendo lista de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Paquetes sugeridos:
 zip
Se instalarán los siguientes paquetes NUEVOS:
 unzip
0 actualizados, 1 recién instalado, 0 a eliminar y 14 no actualizados.
Necesita obtener 169 kB de archivos.
Tras esta operación, se utilizarán 593 kB de espacio adicional en disco.
Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
Fetched 169 kB in 0s (4040 kB/s)
Seleccionando paquete unzip no seleccionado previamente.
(Leyendo base de datos ... 59511 archivos y directorios instalados actualmente.)
Preparando para desempaquetar .../unzip_6.0-25ubuntu1_amd64.deb ..
Desempaquetando unzip (6.0-25ubuntu1) ...
Configurando unzip (6.0-25ubuntu1) ...
Procesando disparadores para mime-support (3.64ubuntu1) ...
Procesando disparadores para man-db (2.9.1-1) ...
abhisheknair@geekflare:~$

Instalar varios paquetes

Puede instalar múltiples paquetes en un sistema con apt. Sigue una sintaxis similar a la del ejemplo anterior

$ sudo apt install [nombre-paquete-1] [nombre-paquete-2] ... [nombre-paquete-n

]
Ejemplo

abhisheknair@geekflare:~$ sudo apt install zip unzip
Leyendo listas de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Se instalarán los siguientes paquetes NUEVOS:
 unzip zip
0 actualizados, 2 recién instalados, 0 para eliminar y 0 no actualizados.
Necesidad de obtener 336 kB de archivos.
Después de esta operación, se utilizarán 1231 kB de espacio adicional en disco.
Obtener:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
Get:2 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 zip amd64 3.0-11build1 [167 kB]
Obtenido 336 kB en 0s (7749 kB/s)
Seleccionando paquete unzip no seleccionado previamente.
(Leyendo base de datos ... 59527 archivos y directorios instalados actualmente.)
Preparando para desempaquetar .../unzip_6.0-25ubuntu1_amd64.deb ...
Desempaquetando unzip (6.0-25ubuntu1) ...
Seleccionando paquete zip previamente no seleccionado.
Preparando para desempaquetar .../zip_3..0-11build1_amd64.deb ...
Desempaquetando zip (3.0-11build1) ...
Configurando unzip (6.0-25ubuntu1) ...
Configurando zip (3.0-11build1) ...
Procesando triggers para man-db (2.9.1-1) ...
Procesando triggers para mime-support (3.64ubuntu1) ...
abhisheknair@geekflare:~$

Si uno de los paquetes especificados ya está instalado en el sistema, apt buscará una actualización en un repositorio y si está disponible actualizará el paquete o bien mantendrá la versión instalada tal cual

Instalar una versión específica

A menudo es necesario instalar una versión específica de un paquete, especialmente cuando se encuentra en sistemas empresariales. apt le permite instalar una versión determinada de un paquete suponiendo que esté disponible en el repositorio mediante

$ sudo apt install [nombre-del-paquete]=[versión]

Ejemplo

abhisheknair@geekflare:~$ sudo apt install unzip=6.0-25ubuntu1
Leyendo listas de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Se instalarán los siguientes paquetes NUEVOS:
 unzip
0 actualizados, 1 recién instalados, 0 para eliminar y 0 no actualizados.
Necesito obtener 169 kB de archivos.
Después de esta operación, se utilizarán 593 kB de espacio adicional en disco.
Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
Fetched 169 kB in 0s (2767 kB/s)
Seleccionando paquete unzip previamente no seleccionado.
(Leyendo base de datos ... 59541 archivos y directorios instalados actualmente.)
Preparando para desempaquetar .../unzip_6.0-25ubuntu1_amd64.deb ..
Desempaquetando unzip (6.0-25ubuntu1) ...
Configurando unzip (6.0-25ubuntu1) ...
Procesando disparadores para mime-support (3.64ubuntu1) ...
Procesando disparadores para man-db (2.9.1-1) ...
abhisheknair@geekflare:~$

Eliminar un paquete

Al igual que para instalar un paquete, apt se puede utilizar para eliminar un paquete de un sistema con el siguiente comando

$ sudo apt remove [nombre-del-paquete]

Ejemplo

abhisheknair@geekflare:~$ sudo apt remove unzip
Leyendo lista de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Los siguientes paquetes serán ELIMINADOS:
 unzip
0 actualizados, 0 recién instalados, 1 para eliminar y 14 no actualizados.
Tras esta operación, se liberará 593 kB de espacio en disco.
¿Desea continuar? [S/n] Y
(Leyendo base de datos ... 59529 archivos y directorios instalados actualmente.)
Eliminando unzip (6.0-25ubuntu1) ...
Procesando triggers para man-db (2.9.1-1) ...
Procesando triggers para mime-support (3.64ubuntu1) ...
abhisheknair@geekflare:~$

Purgar un paquete

Al igual que eliminar un paquete, purgar un paquete también realiza la misma tarea pero mientras que con el comando remove apt sólo elimina los binarios de un paquete dejando los archivos de configuración tal y como están. Por otro lado, la orden purgar asegura que todo lo relacionado con el paquete, incluyendo sus binarios y archivos de configuración, se elimina del sistema. Dejar los archivos de configuración le permite reutilizar los mismos archivos de configuración de nuevo si planea reinstalar la aplicación

Para purgar un paquete, utilice

$ sudo apt purge [nombre-paquete]

Ejemplo

abhisheknair@geekflare:~$ sudo apt purge unzip
Leyendo la lista de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
Los siguientes paquetes serán ELIMINADOS:
 unzip*
0 actualizados, 0 recién instalados, 1 para eliminar y 14 no actualizados.
Tras esta operación, se liberarán 593 kB de espacio en disco.
¿Desea continuar? [S/n] Y
(Leyendo base de datos ... 59529 archivos y directorios instalados actualmente.)
Eliminando unzip (6.0-25ubuntu1) ...
Procesando triggers para man-db (2.9.1-1) ...
Procesando triggers para mime-support (3.64ubuntu1) ...
(Leyendo base de datos ... 59511 archivos y directorios instalados actualmente.)

Purgando

archivos de configuración para unzip (6.0-25ubuntu1) ...
abhisheknair@geekflare:~$

Buscar paquetes

apt no sólo puede servir como utilidad para instalar y eliminar paquetes. También puede buscar el paquete requerido en el repositorio con el comando de búsqueda como

$ apt search [search-text]

Ejemplo

abhisheknair@geekflare:~$ apt search netstat
Ordenar... Hecho
Búsqueda de texto completo... Hecho
bwm-ng/focal 0.6.2-1 amd64
 pequeño y sencillo monitor de ancho de banda basado en consola

gnome-nettool/focal 3.8.1-3 amd64
 herramienta de información de red para GNOME

golang-github-aelsabbahy-gonetstat-dev/focal 0.0~git20160428.0.edf89f7-3 all
 Implementación de Netstat en Go

golang-github-mwitkow-go-conntrack-dev/focal 0.0~git20190716.2f06839-1 all
 Go middleware para el seguimiento de redes

libparse-netstat-perl/focal 0.14-1 all
 módulo para analizar la salida del comando "netstat"

net-tools/focal 1.60 git20180626.aebd88e-1ubuntu1 amd64
 NET-3 conjunto de herramientas de red

netstat-nat/focal 1.4.10-3build1 amd64
 herramienta que muestra las conexiones NAT

nicstat/focal 1.95-1build1 amd64
 imprimir estadísticas de tráfico de red

qnetstatview/focal 1.5.6-1 amd64
 Muestra listados detallados de todos los puntos finales TCP y UDP

unhide/focal 20130526-4 amd64
 Herramienta forense para encontrar procesos y puertos ocultos

whichman/focal 2.4-9 amd64
 Utilidades de búsqueda tolerantes a fallos: whichman, ftff, ftwhich

abhisheknair@geekflare:~$

Ver el contenido del paquete

Para obtener detalles sobre un paquete, si está instalado o por instalar, puede utilizar el comando show como se indica a continuación

$ apt show [nombre-del-paquete]

Ejemplo

abhisheknair@geekflare:~$ apt show firefox
Paquete: firefox
Versión: 90.0 build1-0ubuntu0.20.04.1
Prioridad: opcional
Sección: web
Origen: Ubuntu
Mantenedor: Ubuntu Mozilla Team <ubuntu-mozillateam@lists.ubuntu.com>
Bugs: https://bugs.launchpad.net/ubuntu/ filebug
Installed-Size: 226 MB
Provides: gnome-www-browser, iceweasel, www-browser
Depends: lsb-release, libatk1.0-0 (>= 1.12.4), libc6 (>= 2.30), libcairo-gobject2 (>= 1.10.0), libcairo2 (>= 1.10.0), libdbus-1-3 (>= 1.9.14), libdbus-glib-1-2 (>= 0.78), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.10.1), libgcc-s1 (>= 3.3), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.42), libgtk-3-0 (>= 3.14), libharfbuzz0b (>= 0.6.0), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libstdc 6 (>= 9), libx11-6, libx11-xcb1 (>= 2:1.6.9), libxcb-shm0, libxcb1, libxcomposite1 (>= 1:0.4.5), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6, libxrender1, libxt6
Recomienda: xul-ext-ubufox, libcanberra0, libdbusmenu-glib4, libdbusmenu-gtk3-4
Sugiere: fonts-lyx
Sustituye: kubuntu-firefox-installer
Tarea: ubuntu-desktop-minimal, ubuntu-desktop, kubuntu-desktop, kubuntu-full, xubuntu-desktop, lubuntu-desktop, ubuntustudio-desktop, ubuntukylin-desktop, ubuntu-mate-core, ubuntu-mate-desktop, ubuntu-budgie-desktop
Xul-Appid: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
Download-Size: 57.0 MB
APT-Sources: http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
Descripción: Navegador web seguro y sencillo de Mozilla
 Firefox ofrece una navegación web segura y sencilla. Una interfaz de usuario familiar,
 funciones de seguridad mejoradas, incluida la protección frente al robo de identidad en línea,
 y la búsqueda integrada le permiten sacar el máximo partido a la web.

N: Hay 1 registro adicional.

Por

favor, utilice el modificador '-a' para verlo
abhisheknair@geekflare:~$

Lista de paquetes instalados

A menudo necesitamos listar los paquetes instalados en un sistema para diferentes propósitos. apt le permite obtener la lista de paquetes instalados simplemente con

$ apt list --instalado

Listar todos los paquetes

Para listar todos los paquetes disponibles para su sistema, utilice el comando list con la palabra clave --all-versions como
Lista de aptos $

--all-versions

Listar paquetes actualizables

Los paquetes necesitan mantenerse actualizados ya que siguen apareciendo nuevas versiones con características mejoradas o adicionales y correcciones de errores incluyendo lagunas de seguridad críticas. apt le asegura que puede parchear su sistema Debian/Ubuntu fácilmente con el comando upgrade como se sugirió anteriormente en el artículo. Para listar todas las actualizaciones disponibles para los paquetes instalados en su sistema, ejecute

$ apt list --actualizable

Ejemplo

abhisheknair@geekflare:~$ apt list --upgradable
Listado... Hecho
apt-utils/focal-updates 2.0.6 amd64 [actualizable desde: 2.0.5]
apt/focal-updates 2.0.6 amd64 [actualizable desde: 2.0.5]
libapt-pkg6.0/focal-updates 2.0.6 amd64 [actualizable desde: 2.0.5]
libpython3.8-minimal/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [actualizable desde: 3.8.5-1~20.04.3]
libpython3.8-stdlib/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [actualizable desde: 3.8.5-1~20.04.3]
libpython3.8/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [actualizable desde: 3.8.5-1~20.04.3]
libuv1/focal-updates,focal-security 1.34.2-1ubuntu1.3 amd64 [actualizable desde: 1.34.2-1ubuntu1.1]
linux-base-sgx/focal-updates 4.5ubuntu3.6 all [actualizable desde: 4.5ubuntu3.1]
linux-base/focal-updates 4.5ubuntu3.6 all [actualizable desde: 4.5ubuntu3.1]
open-vm-tools/focal-updates 2:11.2.5-2ubuntu1~ubuntu20.04.1 amd64 [actualizable desde: 2:11.0.5-4]
python3-distupgrade/focal-updates 1:20.04.35 all [actualizable desde: 1:20.04.33]
python3.8-minimal/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [actualizable desde: 3.8.5-1~20.04.3]
python3.8/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [actualizable desde: 3.8.5-1~20.04.3]
ubuntu-release-upgrader-core/focal-updates 1:20.04.35 all [actualizable desde: 1:20.04.33]
abhisheknair@geekflare:~$

Limpiar paquetes no utilizados

Con el uso normal, a veces su sistema puede tener instalados paquetes que ya no son necesarios. Puede ocurrir porque estos paquetes se instalaron como parte de la dependencia de otro paquete que ya se ha eliminado posteriormente aunque las dependencias queden rezagadas en el sistema. Para limpiar dichos paquetes y liberar algo de espacio en disco puede utilizar

$ sudo apt autoremove

Ejemplo

abhisheknair@geekflare:~$ sudo apt autoremove
Leyendo listas de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado...

Hecho


0
actualizados, 0 recién instalados, 0 para eliminar y 0 no actualizados.
abhisheknair@geekflare:~

$
Mi sistema no tenía ningún paquete sobrante, por lo que la salida no informó de ningún cambio

Comprobar las dependencias de los paquetes

Un paquete puede tener una o más dependencias que deben instalarse en un sistema para que el paquete funcione correctamente. apt se asegura de que las dependencias necesarias se instalen como parte de la instalación del paquete. Si desea comprobar las dependencias de un paquete, utilice

$ apt depends [nombre-del-paquete]

Ejemplo

abhisheknair@geekflare:~$ apt depends zip
zip
 Depende: libbz2-1.0
 Depende: libc6 (>= 2.14)
 Recomienda: descomprimir
abhisheknair@geekflare:~$

Reinstalar un paquete

Un paquete puede corromperse o puede que necesite reinstalarlo para asegurarse de que todos los archivos del paquete están en el orden correcto. Para volver a instalar un paquete sin eliminarlo primero puede utilizar

$ sudo apt reinstall [nombre-del-paquete]

Ejemplo

abhisheknair@geekflare:~$ sudo apt reinstall unzip
Leyendo la lista de paquetes... Hecho
Construyendo árbol de dependencias
Leyendo información de estado... Hecho
0 actualizado, 0 recién instalado, 1 reinstalado, 0 para eliminar y 0 no actualizado.
Necesito obtener 169 kB de archivos.
Después de esta operación, se utilizarán 0 B de espacio adicional en disco.
Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
Fetched 169 kB in 0s (5695 kB/s)
(Leyendo base de datos ... 59559 archivos y directorios instalados actualmente.)
Preparando para desempaquetar .../unzip_6.0-25ubuntu1_amd64.deb ..
Desempaquetando unzip (6.0-25ubuntu1) sobre (6.0-25ubuntu1) ...
Configurando unzip (6.0-25ubuntu1) ...
Procesando disparadores para mime-support (3.64ubuntu1) ...
Procesando disparadores para man-db (2.9.1-1) ...
abhisheknair@geekflare:~$

Descargar un paquete

Los archivos de paquetes pueden descargarse al sistema de archivos local sin necesidad de instalarlos. Para descargar un paquete con apt, utilizar

$ apt download [nombre-del-paquete]

Ejemplo

abhisheknair@geekflare:~$ apt download unzip
Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB]
Fetched 169 kB in 0s (1405 kB/s)
abhisheknair@geekflare:~$

abhisheknair@geekflare:~$ ls -l unzip_6.0-25ubuntu1_amd64.deb

-rw-r-r-

1 abhisheknair abhisheknair 168956 Aug 16 2019 unzip_6.0-25ubuntu1_amd64.deb
abhisheknair@geekflare

:~$

Compruebe el registro de cambios del paquete

Podemos comprobar fácilmente el changelog sobre cualquier paquete con apt utilizando

$ apt changelog [nombre-del-paquete]

Editar fuentes

el comando edit-sources de apt le permite editar sus archivos sources. list a la vez que proporciona comprobaciones de cordura para asegurar que los cambios son consistentes y válidos. Se trata de un comando en proceso de desarrollo, por lo que debe utilizarse con cuidado. Puede editar sources.list como

$ sudo apt edit-sources

Obtenga ayuda de APT

Para obtener más ayuda sobre el comando apt, utilice
$

 apt help

Ejemplo

abhisheknair@geekflare:~$ apt help
apt 2.0.6 (amd64)
Uso: comando apt [opciones]

apt es un gestor de paquetes en línea de comandos y proporciona comandos para
buscar y gestionar, así como para consultar información sobre paquetes.
Proporciona la misma funcionalidad que las herramientas especializadas de APT,
como apt-get y apt-cache, pero habilita opciones más adecuadas para
un uso interactivo por defecto.

Comandos más utilizados:
 list - lista los paquetes basándose en los nombres de los paquetes
 search - busca en las descripciones de los paquetes
 show - muestra los detalles de los paquetes
 install - instala los paquetes
 reinstall - reinstala los paquetes
 remove - elimina los paquetes
 autoremove - elimina automáticamente todos los paquetes no utilizados
 update - actualiza la lista de paquetes disponibles
 upgrade - actualizar el sistema instalando/actualizando paquetes
 full-upgrade - actualizar el sistema eliminando/instalando/actualizando paquetes
 edit-sources - editar el archivo de información de fuentes
 satisfy - satisfacer cadenas de dependencia

Consulte apt(8) para más información sobre las órdenes disponibles.

Las
opciones de configuración y la sintaxis se detallan en apt.conf(5).
La información sobre cómo configurar las fuentes se puede encontrar en sources.list(5).
Las opciones de paquetes y versiones se pueden expresar a través de apt_preferences(5).
Los detalles de seguridad están disponibles en apt-secure(8).
 Este APT tiene superpoderes de vaca.
abhisheknair@geekflare:~$

Resumen

la herramienta apt es una práctica y potente utilidad de gestión de paquetes basada en CLI para sistemas basados en Debian/Ubuntu. El trabajo diario normal de un administrador de sistemas implica la gestión de paquetes en un sistema y conocer apt y sus comandos de uso común facilitan esta tarea

Para más ayuda sobre apt, consulte su página man

$ man apt
  • Abhishek Nair
    Autor
Gracias a nuestros patrocinadores
Más lecturas sobre DevOps
Potencia tu negocio
Algunas de las herramientas y servicios que le ayudarán a hacer crecer su negocio.
  • Invicti utiliza el Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en tan solo unas horas.
    Pruebe Invicti
  • Web scraping, proxy residencial, gestor de proxy, desbloqueador web, rastreador de motores de búsqueda, y todo lo que necesita para recopilar datos web.
    Pruebe Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno que te ayuda a gestionar proyectos, tareas, trabajo, ventas, CRM, operaciones, flujos de trabajo y mucho más.
    Prueba Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra puntos débiles de ciberseguridad en su infraestructura, para evitar costosas violaciones de datos.
    Prueba Intruder