Comandos apt y apt-get en Linux: Instalar, Actualizar y Eliminar Paquetes
El comando apt-get (Advanced Package Tool) es un gestor avanzado de paquetes para Linux de la familia Debian, como el propio Debian, Ubuntu, Kali y Mint.
El puede utilizar archivos locales o remotos para realizar la instalación o actualización de paquetes. De esta manera es posible actualizar todo el sistema Debian mediante ftp o http. Este gestor también mantiene información de los paquetes y sus dependencias.
Debido a su facilidad de operación, el apt-get es el método preferido para manipular paquetes. Esta utilidad ofrece decenas de opciones configuradas en el archivo /etc/apt/apt.conf.
El archivo /etc/apt/sources.list contiene las ubicaciones donde el apt-get encontrará los paquetes, la distribución verificada (stable, testing, unstable, Woody, Sarge) y la sección que será copiada (main, non-free, contrib, non-US).
A continuación un ejemplo simple de archivo /etc/apt/sources.list con explicación de las secciones:
deb http://www.debian.org/debian stable main contrib non-free
deb http://nonus.debian.org/debian-non-US stable non-US
En el archivo /etc/apt/apt.conf podemos especificar opciones que modificarán el comportamiento del programa apt-get durante la manipulación de los paquetes.
El apt-get utiliza una lista de paquetes para verificar si los paquetes existentes en el sistema necesitan o no ser actualizados. La lista más nueva de paquetes es copiada mediante el comando apt-get update.
El apt-get es muy útil, ya que el administrador no necesita copiar manualmente de Internet el paquete que desea instalar, mucho menos manejar las dependencias, siempre que lo que necesita esté en los repositorios indicados en el sources.list.
Las opciones más frecuentes de esta utilidad son:
- -d: Descarga los archivos, pero no instala. Es útil para descargar grandes volúmenes de paquetes para posterior instalación;
- -s: Simula la instalación de los paquetes, pero no realiza modificaciones;
- -y: Responde afirmativamente por todas las preguntas realizadas durante el proceso de instalación/desinstalación de los paquetes.
Los comandos más frecuentes son:
- dist-update: Este comando realiza la actualización automática del sistema Debian;
- install: Este comando instala un paquete determinado especificado por el nombre;
- remove: Este comando elimina un paquete determinado especificado por el nombre;
- update: Este comando genera una lista de todos los paquetes disponibles. El proceso se realiza automáticamente antes de cualquier modificación en los paquetes;
- upgrade: Este comando se utiliza para realizar una actualización segura del sistema, ya que no instala paquetes que puedan causar algún conflicto o falla en los archivos de configuración.
Ejemplos:
# apt-get install airsnort
Instala el paquete airsnort.x.y.deb. Este comando acepta instalar más de un paquete separando los nombres por espacios. Solo es necesario especificar el nombre del paquete, sin la versión (X), revisión (Y) y sufijo (.deb).
Si es necesario, el apt-get instalará automáticamente las dependencias necesarias para el funcionamiento correcto de un paquete.
El apt-get es muy usado también para realizar la actualización de todos los paquetes del sistema, con el comando update para actualizar las bases de datos con los paquetes nuevos y posteriormente el comando upgrade para realizar las actualizaciones:
# apt-get update
# apt-get upgrade
El apt-get puede actualizar toda su distribución de una forma inteligente y segura. Lee el listado de paquetes disponibles en el servidor remoto, verifica cuáles están instalados y sus versiones, y actualiza los paquetes antiguos.
# apt-get dist-update
¿Y el comando apt? ¿Es diferente en qué?
Desde 2014 las distribuciones basadas en Debian incluyeron una mejora del apt-get, que unió y mejoró varias herramientas que componían el paquete del apt-get. Esta nueva versión vitaminada del apt-get quedó conocida simplemente como apt.
El apt hace todo lo que el apt-get hace. Por lo tanto, para instalar, actualizar y eliminar paquetes en el día a día, es indiferente si usas apt o apt-get.
Para instalar uno o más paquetes con el apt:
# apt install pacote1 pacote2
Para eliminar uno o más paquetes:
# apt remove pacote1 pacote2
De vez en cuando es posible que uno o más archivos que componen un paquete instalado se dañen o sean eliminados por accidente. De esta forma, la manera más fácil de recuperar estos archivos es reinstalar el paquete afectado.
Desafortunadamente, el sistema de empaquetado puede notar que el paquete ya está instalado y se negará a reinstalarlo. Para sortear el sistema y forzar una reinstalación de un paquete, se debe utilizar la opción --reinstall del apt.
En el ejemplo el paquete httpd es reinstalado:
# apt --reinstall install httpd
Para actualizar los paquetes instalados con la última versión disponible en el repositorio, use los comandos update y después upgrade.
# apt update
El update descarga la lista de paquetes actualizada.
Para efectivamente realizar la actualización:
# apt upgrade
El gestor de paquetes apt mantiene una copia de cada archivo .deb descargado en el directorio /var/cache/apt/archives/.
Con el tiempo, este directorio puede ocupar mucho espacio del disco. Para vaciar el caché del apt, use el comando clean:
# apt clean
Para cambiar de una versión principal del Debian o Ubuntu a la siguiente, necesitas usar el comando apt full-upgrade. Con esta instrucción, el apt completará la actualización, eliminando algunos paquetes obsoletos e instalando nuevas dependencias:
# apt full-upgrade
Siempre antes de actualizar el sistema usando un full-upgrade, haz un backup. Si quieres ver cómo hacer update en tu Ubuntu, lee este post.
Conclusión
Si usas Debian o Ubuntu, es esencial aprender el comando apt para gestionar los paquetes de estos sistemas.
Aprende mucho más sobre Linux en nuestro curso en línea. Puedes realizar la inscripción aquí. Si ya tienes una cuenta, o quieres crear una, simplemente ingresa o crea tu usuario aquí.
¿Te gustó? Comparte
Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.