Actualización automática de ArchLinux usando SystemD

Foros

Actualizar automáticamente los paquetes instalados de Arch Linux y comprobar si hay una nueva actualización disponible es importante para mantener los paquetes actualizados y proporcionará una mejora de las correcciones de seguridad, estabilidad, rendimiento, características y más.

Para mantener los paquetes instalados actualizados, Arch Linux puede actualizar automáticamente si hay una nueva actualización disponible utilizando un servicio systemd y un temporizador (programador). También ayuda a proteger contra ataques y vulnerabilidades de día cero.

Información: El servicio de actualización automática a continuación no puede resolver automáticamente conflictos de paquetes durante el proceso de actualización, saltará o cancelará automáticamente el proceso de actualización si se detecta conflictos. Para resolver el conflicto del paquete, ejecute "pacman -Syu" (comando de actualización) manualmente.

Crear un servicio de actualización.

Aquí crearemos un servicio de SystemD con nuestro editor de texto favorito dentro de /etc/systemd/system/.

sudo vim /etc/systemd/system/actualizar.service

Ahora añadimos estas líneas dentro del archivo:

[Unit]
 Description=Actualización automática
 After=network-online.target 

[Service]
 Type=simple
 ExecStart=/usr/bin/pacman -Syuq --noconfirm
 TimeoutStopSec=180
 KillMode=process
 KillSignal=SIGINT

[Install]
 WantedBy=multi-user.target

El servicio actualizar.service requiere que la red esté activa. Al instalar un paquete, pacman no finalizará inmediatamente el proceso después de recibir la señal de interrupción (SIGINT), en su lugar, pacman continuará actualizando el paquete hasta el final, luego abandonará el proceso. Evitará que el paquete se rompa o se corrompa.

Crear un servicio para programar las actualizaciones.

Cree un temporizador o planificador systemd (actualizar.timer) usando un editor de texto como vim para ejecutar las actualizaciones automáticas periódicamente (por ejemplo, cada 45 minutos):

sudo vim /etc/systemd/system/actualizar.timer

Añadimos las siguientes líneas:

[Unit]
 Description=Actualización automatica de ArchLinux cuando el sistema arranca luego de 5 minutos, entonces luego busca actualizaciones cada 60 minutos
[Timer]
 OnBootSec=5min
 OnUnitActiveSec=60min
 Unit=actualizar.service

[Install]
 WantedBy=multi-user.target

Finalmente habilitaremos actualizar.timer para que se ejecute al incio:

sudo systemctl enable actualizar.timer

Con esto ArchLinux se actualizará automaticamente sin necesidad de intervención por parte del usuario, cualquier duda déjela en los comentarios.

Acerca del autor

Especialista en Seguridad Informática bajo certificación OSCP, desarrollador de software y desarrollador backend, miembro de la FSF y Fundador de Security Hack Labs. Entusiasta de la tecnología y amante de GNU/Linux. Twitter: @edu4rdshl