Product SiteDocumentation Site

6.8.7. Configuración para protección de paquetes

Esta funcionalidad fue agregada a yum a partir de una antigua extensión denominada yum-plugin-protect-packages y evita que yum se desinstale él mismo así como evita que remueva otros paquetes protegidos. De caja yum es el único paquete protegido pero por extensión esto automáticamente protege todo aquello de lo que depende yum (rpm, python, glibc, etc.). Así entonces esta funcionalidad es muy buena incluso sin la necesidad de construir listas cuidadosas de paquetes importantes.
De forma estandar se bloquea la desinstalación de yum y sus dependencias pero si se desea agregar y proteger otros paquetes, se deben crear archivos /etc/yum/protected.d/*.conf y agregar un nombre de paquete por línea en cada uno de ellos.
Situación ejemplo, se desea proteger el paquete postgresql. Configure creando o editando un archivo .conf, por ejemplo rdbms.conf en el directorio adecuado.
$ vi /etc/yum/protected.d/rbdms.conf
  postgresql
:wq
Verifique probando que yum ahora no puede desinstalar por error el paquete configurado.
# yum remove postgresql 
Complementos cargados:aliases, changelog, fastestmirror, filter-data, keys, list-data, presto, refresh-packagekit, verify
Configurando el proceso de eliminación
Resolviendo dependencias
--> Ejecutando prueba de transacción
---> Paquete postgresql.i686 0:8.4.4-1.fc13 definido para ser eliminado
--> Procesando dependencias: postgresql = 8.4.4-1.fc13 para el paquete: postgresql-devel-8.4.4-1.fc13.i686
--> Procesando dependencias: postgresql = 8.4.4-1.fc13 para el paquete: postgresql-server-8.4.4-1.fc13.i686
--> Ejecutando prueba de transacción
---> Paquete postgresql-devel.i686 0:8.4.4-1.fc13 definido para ser eliminado
---> Paquete postgresql-server.i686 0:8.4.4-1.fc13 definido para ser eliminado
--> Resolución de dependencias finalizada
Error: Trying to remove "postgresql", which is protected
 Podría intentar utilizar el comando --skip-broken para sortear el problema
Podría intentar ejecutar: rpm- Va --nofiles --nodigest
El mensaje de error es bastante claro, no se ha podido desinstalar. Para poder desinstalar es necesario remover el nombre del paquete de rdbms.conf.