Bloquear la actualización de paquetes en Debian y Ubuntu

Iniciado por BlackDead, Agosto 07, 2013, 12:19:49 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Agosto 07, 2013, 12:19:49 AM Ultima modificación: Agosto 07, 2013, 12:22:16 AM por blackdead

Gracias al gestor de paquetes de Debian dpkg podemos bloquear/retener la actualización de paquetes que nos interesa mantener en una versión concreta. Para ello haremos uso del comando dpkg junto con los parámetros get-selections y set-selections.

Con get-selections podemos ver el estado de todos los paquetes instalados del sistema, veremos que si se permite su actualización estarán en estado "install" y si están bloqueados veremos "hold"

De este modo veremos el estado de todos los paquetes:

Citar~$ dpkg --get-selections

Pero podemos filtrar directamente el paquete que nos interesa:

Citar~$ dpkg --get-selections firefox
firefox                  install

Si por ejemplo quisieramos evitar que firefox se actualizara haríamos lo siguiente:

Citar~$ echo "firefox hold" | sudo dpkg --set-selections

Veis que especificamos paquete + estado. Ahora firefox ya estaría hold:

Citar~$ dpkg --get-selections firefox
firefox                  hold

Si ahora hicieramos una actualización del sistema veríamos que el paquete firefox se retiene y no se permite su actualización:

Citar~$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages have been kept back:
  firefox firefox-global

Y para volver a permitir su instalación:

Citar~$ echo "firefox install" | sudo dpkg --set-selections