Comandos comunes aptos
Actualizaciones del repositorio
| Dominio | Descripción |
|---|---|
sudo apt update | Actualizar el índice del paquete |
sudo apt upgrade | Actualizar todos los paquetes instalados |
sudo apt full-upgrade | Actualice paquetes y maneje automáticamente los cambios de dependencia |
sudo apt dist-upgrade | Igual que la actualización completa |
Instalar y quitar
| Dominio | Descripción |
|---|---|
sudo apt install package-name | Instalar un paquete |
sudo apt install package-name=version | Instalar una versión específica |
sudo apt install ./package.deb | Instalar un archivo .deb local |
sudo apt reinstall package-name | Reinstalar un paquete |
sudo apt remove package-name | Eliminar un paquete (mantener la configuración) |
sudo apt purge package-name | Eliminar un paquete y eliminar archivos de configuración |
sudo apt autoremove | Eliminar dependencias que ya no son necesarias |
Buscar y Consultar
| Dominio | Descripción |
|---|---|
apt search keyword | buscar paquetes |
apt show package-name | Mostrar detalles del paquete |
apt list --installed | Listar paquetes instalados |
apt list --upgradable | Listar paquetes actualizables |
apt depends package-name | Mostrar dependencias |
apt rdepends package-name | Mostrar dependencias inversas |
dpkg -L package-name | Listar todos los archivos instalados por un paquete |
dpkg -S /path/to/file | Encuentre qué paquete posee un archivo |
Limpieza de caché
| Dominio | Descripción |
|---|---|
sudo apt clean | Borrar todo el caché descargado |
sudo apt autoclean | Borrar sólo caché obsoleto |
sudo apt autoremove --purge | Eliminar dependencias y purgar la configuración |
Fijación de versión
| Dominio | Descripción |
|---|---|
sudo apt-mark hold package-name | Mantener una versión del paquete (evitar actualizaciones) |
sudo apt-mark unhold package-name | Retener un paquete |
apt-mark showhold | Mostrar paquetes retenidos |
Reparar
| Dominio | Descripción |
|---|---|
sudo apt --fix-broken install | Arreglar dependencias |
sudo dpkg --configure -a | Reconfigurar paquetes interrumpidos |
Gestión de repositorios
| Dominio | Descripción |
|---|---|
sudo add-apt-repository ppa:xxx/yyy | Agregar un PPA |
sudo add-apt-repository --remove ppa:xxx/yyy | Eliminar un PPA |
cat /etc/apt/sources.list.d/ubuntu.sources | Ver fuentes configuradas |
grep -rh "^deb " /etc/apt/sources.list.d/ | Listar todas las fuentes |
Firma de repositorios de terceros (se eliminó la clave apt)
APT 3.1 ha eliminado completamente apt-key y ya no se confía en el conjunto de claves global. Al agregar un repositorio de terceros, almacene la clave por separado en /etc/apt/keyrings/ y apúntela explícitamente con Signed-By en la entrada de origen.
# 1. Download the key and convert it to a binary keyring (de-armored)
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://example.com/repo.gpg \
| sudo gpg --dearmor -o /etc/apt/keyrings/example.gpg
sudo chmod 0644 /etc/apt/keyrings/example.gpgPrefiere el formato deb822 (archivos .sources), vinculando la clave con Signed-By:
# /etc/apt/sources.list.d/example.sources
Types: deb
URIs: https://example.com/apt
Suites: noble
Components: main
Signed-By: /etc/apt/keyrings/example.gpgPara el formato heredado de una línea (archivos .list), utilice la opción signed-by=:
# /etc/apt/sources.list.d/example.list
deb [arch=amd64 signed-by=/etc/apt/keyrings/example.gpg] https://example.com/apt noble mainTip
Dar a cada repositorio su propio conjunto de claves que firme solo su propio repositorio evita que se utilice una clave de terceros para falsificar paquetes oficiales, mucho más seguro que el antiguo apt-key global.
Simulación y Descarga
| Dominio | Descripción |
|---|---|
apt install -s package-name | Simular instalación (ejecución en seco) |
apt download package-name | Descargar sin instalar |
Consejos útiles
| Dominio | Descripción |
|---|---|
apt changelog package-name | Ver registro de cambios del paquete |
apt policy package-name | Mostrar qué repositorio proporciona el paquete |
grep ^Package /var/lib/apt/lists/repo-name*_Packages | sort -u | Listar todos los paquetes de un repositorio específico |