Excluir paquetes al actualizar sistemas RHEL, CentOS o Scientific Linux

En muchas ocasiones me he encontrado con la vicisitud de tener que actualizar un sistema, ya sea RHEL, CentOS o derivados, con centenares de paquetes y por diversos motivos, no querer que algunos paquetes se actualicen. Por lo que el artículo de hoy forma parte de mis apuntes, y si alguna vez os puede servir, pues mejor que mejor.

Realmente la solución es bastante simple, para excluir paquetes, ya que sólo es añadir un parámetro como veremos. La herramienta principal para realizar las actualizaciones del sistema es yum, seguido de parámetros como “update” o “update-minimal”, para realizar la exclusión sólo debemos escribir:

  1. yum updateexclude=”Nombre del paquete”

Un ejemplo de uso sería:

  1. Yum update-minimal --security -yexclude=mod_ssl*

Si lo deseamos podemos hacer exclusión que sean permanentes, simplemente añadiendo en el fichero de configuración del repositorio:

  1. [main]
  2. cachedir=/var/cache/yum/$basearch/$releasever
  3. keepcache=0
  4. debuglevel=2
  5. logfile=/var/log/yum.log
  6. exclude=mod_ssl*

Algo bastante útil, que he encontrado en la documentación oficial de Red Hat, es que podemos omitir por defecto todos los paquetes para arquitectura de 32 bits, añadiendo en el fichero de configuración /etc/yum.conf :

  1. exclude=*.i?86 *.i686

Lo dejamos aquí.

Fuentes consultadas:

Redhat.com – How do I exclude kernel or other packages from getting updated in Red Hat Enterprise Linux while updating system via yum?