Comandos LinuxExplicados en español
/
Ficha97 / 104
Categoría
Paquetes
Ejemplos
6
Ver también
apt · dpkg · sudo · systemctl

apt-get

Advanced Package Tool, get (herramienta avanzada de paquetes)

Instala y actualiza paquetes con la interfaz clásica de APT.

apt-get es la interfaz clásica del gestor de paquetes APT: instala, actualiza y desinstala igual que apt, pero garantiza el mismo comportamiento en todas las versiones, por eso es la que se usa en scripts y en servidores. apt es la versión amable, con mensajes más claros, pero su propia documentación advierte que no es una interfaz de línea de comandos estable para automatizar. Con apt-get además puedes ver qué haría antes de ejecutarlo, con la opción --dry-run; viene instalado en Debian y en Ubuntu como parte del paquete apt.

Sintaxissudo apt-get [opciones] ACCIÓN [paquetes]
Precaución

remove, purge y autoremove también quitan los paquetes que dependen del que borras: si la lista incluye sudo, el kernel o el escritorio, la máquina puede quedar inservible. dist-upgrade sí instala y quita paquetes según haga falta para resolver el cambio de versión, así que revisa la lista antes de aceptar. En un servidor, actualizar el kernel pide reiniciar, y si lo haces por SSH sin tener una segunda sesión abierta te puedes quedar afuera.

§ 1

Despiece

6 ejemplos
Actualizar la lista de paquetes

Actualizar la lista de paquetes

3 piezas
Lámina01 / 06
Comandosudo apt-get update
Piezas3
Escala1:1
N.ºPiezaTipoQué hace
1sudoComandoEjecuta la orden como root, que es lo que pide apt-get.
2apt-getComandoLa interfaz clásica del gestor de paquetes APT.
3updateOpciónDescarga la lista de paquetes disponibles desde los repositorios.
Resultado

El sistema ya sabe qué versiones existen. No instala ni actualiza nada, es solo el paso previo. Este comando es obligatorio antes de install, upgrade o dist-upgrade, porque si no, apt-get trabaja con la lista vieja y no reconoce las versiones nuevas.

Instalar un programa

4 piezas
Lámina02 / 06
Comandosudo apt-get install htop
Piezas4
Escala1:1
N.ºPiezaTipoQué hace
1sudoComandoEjecuta la orden como root.
2apt-getComandoLa interfaz clásica del gestor de paquetes APT.
3installOpciónInstala los paquetes indicados y resuelve sus dependencias.
4htopValorEl nombre del paquete que quieres instalar.
Resultado

htop queda instalado y el comando disponible en la terminal. Antes de tocar nada te muestra la lista de paquetes que se van a instalar o quitar, incluido lo que llega como dependencia. Puedes poner varios paquetes separados por espacios: sudo apt-get install htop tree jq.

Desinstalar un programa

4 piezas
Lámina03 / 06
Comandosudo apt-get remove htop
Piezas4
Escala1:1
N.ºPiezaTipoQué hace
1sudoComandoEjecuta la orden como root.
2apt-getComandoLa interfaz clásica del gestor de paquetes APT.
3removeOpciónDesinstala el paquete pero conserva su configuración del sistema en /etc.
4htopValorEl paquete que quieres quitar.
Resultado

El programa desaparece, pero sus archivos de configuración del sistema se quedan en /etc por si lo reinstalas. Para borrarlos también, usa sudo apt-get purge htop. Ninguno de los dos toca lo que tengas en tu carpeta personal; eso, si quieres limpiarlo, lo borras a mano.

Ver qué haría, sin cambiar nada

5 piezas
Lámina04 / 06
Comandosudo apt-get -s install htop
Piezas5
Escala1:1
N.ºPiezaTipoQué hace
1sudoComandoEjecuta la orden como root.
2apt-getComandoLa interfaz clásica del gestor de paquetes APT.
3-sOpciónSimulación: imprime lo que haría y no modifica el sistema.
4installOpciónLa acción que quieres ver simulada.
5htopValorEl paquete que quieres instalar.
Resultado

Arriba dice NOTE: This is only a simulation! y abajo viene la lista de lo que se instalaría, sin tocar nada. Funciona igual con upgrade y dist-upgrade. Si la lista es larga, léela con calma así: sudo apt-get -s dist-upgrade | less.

Actualizar el sistema

3 piezas
Lámina05 / 06
Comandosudo apt-get upgrade
Piezas3
Escala1:1
N.ºPiezaTipoQué hace
1sudoComandoEjecuta la orden como root.
2apt-getComandoLa interfaz clásica del gestor de paquetes APT.
3upgradeOpciónInstala las versiones nuevas de los paquetes que ya tienes.
Resultado

Tus paquetes pasan a la versión más reciente de tus repositorios, sin instalar ni quitar nada nuevo. Si algún paquete necesita instalar o quitar otro para poder actualizarse, lo deja retenido y te lo dice al final: para resolver esos casos está dist-upgrade. Recuerda correr sudo apt-get update antes.

Actualizar incluyendo paquetes nuevos

3 piezas
Lámina06 / 06
Comandosudo apt-get dist-upgrade
Piezas3
Escala1:1
N.ºPiezaTipoQué hace
1sudoComandoEjecuta la orden como root.
2apt-getComandoLa interfaz clásica del gestor de paquetes APT.
3dist-upgradeOpciónActualiza instalando o quitando los paquetes necesarios para dejar el sistema consistente.
Resultado

A diferencia de upgrade, esta sí instala y quita paquetes: por eso sirve para una actualización mayor, cuando hay paquetes retenidos o cambios de versión grandes. Revisa bien la lista antes de confirmar, porque de verdad puede desinstalar cosas. En apt nueva, full-upgrade es un alias exacto de dist-upgrade.

§ 2

Opciones

Las que sí vas a usar
OpciónQué hace
updateDescarga la lista de paquetes disponibles desde los repositorios. No instala ni actualiza nada.
install PAQUETESInstala los paquetes indicados junto con sus dependencias: sudo apt-get install htop. Acepta varios nombres, incluso rutas de archivos .deb.
upgradeActualiza los paquetes que ya tienes. No instala ni quita nada nuevo; si un paquete quedara detenido por un cambio de versión, lo deja así.
dist-upgradeActualiza los paquetes instalando o quitando los que hagan falta para resolver el cambio de versión. En apt nueva tiene el alias full-upgrade.
remove PAQUETESDesinstala un paquete y deja su configuración del sistema en /etc. Con purge también borra esa configuración, nunca tus archivos personales.
autoremoveBorra los paquetes que se instalaron como dependencias y que ya ningún programa instalado necesita.
-y--assume-yesResponde sí a todas las preguntas sin preguntar. Úsalo solo en scripts o cuando ya revisaste la lista de lo que se va a tocar.
-s--dry-runSimula: muestra lo que instalaría, actualizará o quitaría y no cambia nada. Perfecto para ver qué va a pasar.
§ 3

Fallas comunes

FallaRemedio
Correr upgrade sin hacer update antes.apt-get upgrade trabaja con la lista de paquetes que ya descargaste, que puede tener días. Primero corre sudo apt-get update; si te dice 0 upgraded, 0 newly installed, es que la lista estaba vieja o no hay nada pendiente.
Poner -y por costumbre y no ver lo que se va a desinstalar.-y responde sí a todo, incluidas las bajas de paquetes que no esperabas. Revisa la lista primero o simula con sudo apt-get -s upgrade. Y ojo con dist-upgrade: esa sí puede quitar paquetes.
Instalar con apt-get un programa que no está en los repositorios.apt-get solo conoce lo que hay en los repositorios configurados. Búscalo primero con apt-cache search nombre; si de plano no está, descarga el .deb de la web e instálalo con sudo apt install ./archivo.deb (o con sudo dpkg -i archivo.deb).
Esperar que remove borre todo lo del programa.remove deja a propósito la configuración del sistema en /etc, por si lo reinstalas. Para borrarla también usa sudo apt-get purge nombre. Y nada de esto toca tu carpeta personal: la configuración que tú creas, en ~/.config, se queda.
§ 4

Preguntas frecuentes

¿Cuál es la diferencia entre apt y apt-get?
apt-get es la interfaz clásica y estable de APT: su comportamiento no cambia entre versiones y por eso es la recomendada para scripts y para administrar servidores. apt es la interfaz moderna y amable, con mensajes más claros y colores, pero su propia documentación advierte que no tiene una interfaz de línea de comandos estable. Las dos mueven exactamente los mismos archivos por debajo.
¿Qué hace exactamente sudo apt-get update?
Descarga la lista de paquetes y versiones disponibles en los repositorios configurados, para que apt-get sepa qué hay. No instala, no actualiza ni borra nada; solo refresca ese índice. Es el paso previo obligatorio antes de install, upgrade o dist-upgrade.
¿Cómo veo qué haría apt-get sin cambiar nada?
Agrega la opción -s: sudo apt-get -s install htop o sudo apt-get -s dist-upgrade. Imprime la lista de lo que se instalaría, actualizaría o quitaría y no toca nada. Es lo mismo que --dry-run, y para las actualizaciones grandes conviene acompañarla de less para poder leerla.
¿Diferencia entre upgrade y dist-upgrade?
upgrade solo actualiza los paquetes que ya tienes y deja retenidos los que necesitarían instalar o quitar otro para resolverse. dist-upgrade sí instala, actualiza y quita paquetes según haga falta para dejar el sistema consistente; en apt nueva tiene el alias full-upgrade. Para el día a día usa upgrade, y antes de una actualización mayor, dist-upgrade revisando la lista.
¿Por qué apt-get upgrade dice que 0 upgraded?
Porque no hay nada que actualizar o porque tu lista de paquetes está vieja. Corre sudo apt-get update y vuelve a intentar. Si al final dice que hay paquetes retenidos (kept back), esos se actualizan con sudo apt-get dist-upgrade, revisando antes la lista.
§ 5

Ver también