Actualizar Debian Squeeze automáticamente mediante unattended-upgrades | Algo de Linux

miércoles, 9 de mayo de 2012

Actualizar Debian Squeeze automáticamente mediante unattended-upgrades

Echando un vistazo a los últimos portátiles con Debian Squeeze que nos enviaron, me di cuenta de que tenían "ciento y pico" paquetes por actualizar y pensé que si conseguía actualizarlos con frecuencia de una manera automática, no se acumularían tantas actualizaciones y éstas se realizarían mejor y con un menor consumo de ancho de banda en la red.

unattended-upgrades, una aplicación para realizar instalaciones automáticas de actualizaciones de seguridad, es una herramienta ideal para resolver este problema.

Instalar unattended-upgrades es muy sencillo en Debian:

# apt-get install unattended-upgrades

Una vez instalado el paquete, creamos el fichero /etc/apt/apt.conf.d/10periodic con el siguiente contenido:

APT::Periodic::Enable "1"; 
APT::Periodic::Update-Package-Lists "1"; 
APT::Periodic::Download-Upgradeable-Packages "1"; APT::Periodic::AutocleanInterval "7"; 
APT::Periodic::Unattended-Upgrade "1"; 
APT::Periodic::RandomSleep "900";

Este fichero nos servirá para configurar las actualizaciones periódicas. Veamos lo que significa cada línea con un ejemplo:

  • APT::Periodic::Enable "1";  Activamos las actualizaciones automáticas poniendo el valor a 1 o las desactivamos poniendo el valor a 0.
  • APT::Periodic::Update-Package-Lists "1"; Hacemos un apt-get update. Si ponemos el valor a 0 lo desactivamos.
  • APT::Periodic::Download-Upgradeable-Packages "1"; Descargamos los paquetes actualizables. Si ponemos el valor a 0 lo desactivamos.
  • APT::Periodic::AutocleanInterval "7"; Hacemos un apt-get autoclean cada 7 días. Si ponemos el valor a 0 lo desactivamos.
  • APT::Periodic::RandomSleep "900"; El trabajo de actualización se iniciará de forma aleatoria entre 1 y 900 segundos.
  • APT::Periodic::Unattended-Upgrade "1"; Ejecutar el script"unattended-upgrade" cada día. Si ponemos el valor a 0 lo desactivamos.    
Una vez creado el fichero, modificamos el siguiente: /etc/apt/apt.conf.d/50unattended-upgrades, quitando el símbolo de comentario en las líneas del siguiente bloque que queramos:

Unattended-Upgrade::Allowed-Origins {
        "${distro_id} stable";
        "${distro_id} ${distro_codename}-security";
        "${distro_id} ${distro_codename}-updates";
//      "${distro_id} ${distro_codename}-proposed-updates";
};

En el ejemplo anterior, permitimos que se actualicen los paquetes del sistema estable, security y updates.

Y listo. Si queremos, para asegurarnos podemos parar unattended-upgrades:

# /etc/init.d/unattended-upgrades stop

Y volver a iniciarlo:

# /etc/init.d/unattended-upgrades start

Por otra parte, podemos ejecutar el script unattended-upgrade manualmente:

# unattended-upgrade

Podemos ejecutar unattended-upgrade en modo debug:

# unattended-upgrade -d

O simular la ejecución de unattended-upgrade sin llegar a actualizar:

# unattended-upgrade --dry-run

2 comentarios:

Javier Cano Linares dijo...

Hola,

completo y bien explicado. Lo único indicarte que en mi caso el fichero de configuración ya existía, lo edité para activar unattended-upgrade.

Gracias y un saludo,
Javier

Anónimo dijo...

De lo mejor Muy bien explicado muchas graciassss