Marcar un paquete para que no se actualice (y demarcarlo)

[h]Cómo hacer para que un paquete no se actualice y cómo hacer para que vuelva a actualizarse[/h]

https://www.wifi-libre.com/img/members/3/NoUpdate_1.jpg

Basado en :
[list=*]
]Comment empêcher certains paquets Linux de se mettre à jour ? de/@ Korben/]
[/list]

No actualizar un paquete no es generalmente una buena idea…
…Pero a veces no nos queda otra :
Por ejemplo; durante un tiempo, para poder tener reaver corriendo correctamente, debíamos sobrescribir la librería libpcap0.8 del momento por una más antigua (Reaver modificado para Pixie Dust#respuesta36)
Problema : A cada actualización, la librería vuelve a actualizarse.
En este contexto nos viene bien “marcar” este paquete para que no se actualice

Para hacerlo debemos primero pillar el nombre exacto del paquete.
Lo más fácil es hacer un listado de los paquetes instalados con dpkg y usar un pipe con grep para ver solo los paquetes que contienen la expresión regular que hemos elegido
Si queríamos marcar la librerías “libpcap” que hacía fallar reaver :

dpkg-l | grep libpcap

https://www.wifi-libre.com/img/members/3/NoUpdate_2.jpg

Tenéis el nombre completo y exacto, podéis ahora “retener” el paquete (apt-mark hold)

sudo apt-mark hold libpcap0.8:amd64

https://www.wifi-libre.com/img/members/3/NoUpdate_3.jpg

Para verificar que todo esta bien, hacer un listado de los paquetes con dpkg --get-selections seguido por un pipe con grep y la palabra “hold” :

dpkg --get-selections | grep hold

https://www.wifi-libre.com/img/members/3/mini_NoUpdate_4.jpg

Para revertir la maniobra y dejar que el paquete se actualice normalmente, debemos usar otra vez apt-mark pero con el opción unhold en lugar de hold

sudo apt-mark unhold libpcap0.8:amd64

https://www.wifi-libre.com/img/members/3/mini_NoUpdate_5.jpg
: