La aplicación de actualizaciones periódicas debe ser una prioridad principal en las tareas diarias de un administrador de sistemas. Ejecutar un sistema sin parches durante un período prolongado de tiempo es bastante peligroso. Hay muchas maneras de parchear su sistema Linux.Hoy aprenderemos a Actualizaciones automáticas de aplicaciones dnf-automatic
En RHEL y sus clones, como AlmaLinux y Rocky Linux.
Tabla de Contenidos
¿Qué es dnf automático?
Esto dnf-automatic
es un sustituto dnf upgrade
Comandos que se pueden ejecutar automáticamente periódicamente a través de temporizadores systemd, trabajos cron, etc.
Sincroniza los metadatos del paquete según sea necesario y luego busca actualizaciones disponibles para los sistemas basados en RHEL. Según los ajustes del archivo de configuración, dnf-automatic
El comando descarga actualizaciones de paquetes, descarga e instala paquetes o simplemente sale.
La funcionalidad de dnf-automatic generalmente se controla mediante archivos de configuración (dnf-automatic.timer
) o unidades de temporizador específicas de la función, como se indica a continuación.
dnf-automatic-notifyonly
– Notificar solo cuando haya una actualización disponible,dnf-automatic-download
– solo descargar actualizaciones, pero no instalarlas,dnf-automatic-install
– Descarga e instalación automática de actualizaciones de paquetes.
Puedes elegir el que se adapte a tus necesidades.
Tenga en cuenta que las unidades de temporizador específicas de la función anularán las configuraciones predeterminadas del archivo de configuración, es decir, dnf-automatic.timer
.
Instalar dnf-automático
dnf-automatic está disponible en los repositorios predeterminados para RHEL y sus clones.
Para instalar dnf-automatic en RHEL, Fedora, CentOS Stream, AlmaLinux y Rocky Linux, ejecute:
$ sudo dnf install dnf-automatic
Aplicar actualizaciones automáticamente con dnf-automatic
Edite el archivo de configuración predeterminado de dnf-automatic con su editor favorito:
$ sudo nano /etc/dnf/automatic.conf
y ajuste la configuración según sus requisitos. Las tres configuraciones importantes que debe ajustar aquí son las siguientes:
upgrade_type = default [...] download_updates = yes [...] apply_updates = no [...]
aquí,
upgrade_type
– Define el tipo de actualización a realizar. Acepta dos valores. son»default
» y»security
«. Si el valor se establece en «default
«, se aplicarán todas las actualizaciones. Si el valor se establece en «security
«, solo se aplicarán las actualizaciones de seguridad. De forma predeterminada, se aplican todas las actualizaciones.download_updates
– Define si las actualizaciones deben descargarse cuando estén disponibles. Si el valor se establece en «yes
«, se descargarán las actualizaciones. Si el valor se establece en «no
«, las actualizaciones no se descargarán. El valor predeterminado esyes
.apply_updates
– Define si aplicar actualizaciones cuando estén disponibles. Acepta dos valores. Si se establece en Sí, las actualizaciones se aplicarán cuando estén disponibles. Si se establece en No, no se aplicarán las actualizaciones.El valor predeterminado esno
.
De acuerdo con la configuración anterior, dnf descargará automáticamente todas las actualizaciones, pero no instalar ellos.Si desea que las actualizaciones se apliquen automáticamente, simplemente configure el valor apply-updates
Establecer como yes
Por defecto, la opción de actualización automática está deshabilitada.
También hay algunas configuraciones disponibles, pero son menos importantes para mí. Puede leer una breve descripción de cada configuración en el archivo de configuración para comprender lo que hace.
Después de ajustar la configuración, habilite la unidad del temporizador:
$ sudo systemctl enable --now dnf-automatic.timer
Eso es. Las actualizaciones ahora se descargan e instalan automáticamente (si están habilitadas) cuando están disponibles.
Uso de temporizadores específicos de funciones
Como se mencionó anteriormente, podemos usar unidades de temporizador específicas de funciones para habilitar acciones específicas.
Por ejemplo, puede habilitar dnf-automatic-notifyonly.timer
Solo recibe notificaciones de actualizaciones disponibles.
$ sudo systemctl enable --now dnf-automatic-notifyonly.timer
Cuando se utiliza una unidad de temporizador de función específica, anulará la configuración predeterminada del archivo de configuración.
¿Qué hay de RHEL 7/CentOS 7 y versiones anteriores?
Las versiones RHEL 7.x y CentOS 7.x todavía se usan ampliamente.Si está utilizando la versión RHEL/CentOS 7.x, puede utilizar yum-cron
Habilitar actualizaciones automáticas.
Para instalar yum-cron en RHEL 7.x y CentOS 7.x, ejecute:
$ sudo yum install yum-cron
Después de instalar yum-cron, edite su archivo de configuración predeterminado /etc/yum/yum-cron.conf
:
$ sudo nano /etc/yum/yum-cron.conf
Ajuste y establezca la configuración según sea necesario:
[commands] # What kind of update to use: # default = yum upgrade # security = yum --security upgrade # security-severity:Critical = yum --sec-severity=Critical upgrade # minimal = yum --bugfix update-minimal # minimal-security = yum --security update-minimal # minimal-security-severity:Critical = --sec-severity=Critical update-minimal update_cmd = default # Whether a message should be emitted when updates are available, # were downloaded, or applied. update_messages = yes # Whether updates should be downloaded when they are available. download_updates = yes # Whether updates should be applied when they are available. Note # that download_updates must also be yes for the update to be applied. apply_updates = yes # Maximum amout of time to randomly sleep, in minutes. The program # will sleep for a random amount of time between 0 and random_sleep # minutes before running. This is useful for e.g. staggering the # times that multiple systems will access update servers. If # random_sleep is 0 or negative, the program will run immediately. # 6*60 = 360 random_sleep = 30
Guarde el archivo y ciérrelo.
Finalmente, habilite el servicio para aplicar la configuración:
$ sudo systemctl enable --now yum-cron
En conclusión
En esta breve guía, discutimos cómo Habilitación de actualizaciones automáticas en RHEL, CentOS, AlmaLinux y Rocky LinuxMantener actualizado un servidor Linux es una tarea muy importante para un administrador Linux. Afortunadamente, dnf-automatic
y yum-cron
hacer este trabajo más fácil.
recurso: