data -->

[TIP] Como congelar paquetes para que no se actualicen en Linux

Posted by José Manuel Hernández on

Muchas veces puede ser útil congelar un paquete para que cuando actualicemos el sistema, el paquete en cuestión no se actualice.
Imaginemos una aplicación X que depende de una versión de paquete específico Y, lo mejor para despreocuparnos es congelar el paquete para que no se actualice.

Te explicamos como:

Distribuciones basadas en .Deb 

Hay diferentes maneras de retener paquetes, vamos a mostrar como hacerlo con dpkg y aptitude, que hacen exactamente lo mismo para que puedas elegir el que más te guste. 

Utilizando dpkg:

Retener un paquete:
echo "package hold" | dpkg --set-selections

Ejemplo:
echo "apache2 hold" | dpkg --set-selections

Si cambia de opinión y desea eliminar el bloqueo de ese paquete:
echo "paquete install" | dpkg --set-selecciones 

Ejemplo:
echo "apache2 install" | dpkg --set-selecciones 

Si desea conocer el estado de un paquete puede utilizar el comando: 
dpkg --get-selections package

Usando aptitude

Con aptitude, puede congelar/bloquear un paquete utilizando:
aptitude hold nombre_paquete 

Eliminar el bloqueo: 
aptitude unhold package_name

Distribuciones basadas en RPM

Para la distribución que use yum puede retener un paquete editando el archivo /etc/yum.conf y añadiendo una línea con la directiva exclude: 

exclude=package/s
So for example you could use

exclude=tomboy,php*,kernel*

Para quitarlo vale con editar el archivo de nuevo y eliminar la línea.