Apt-mark: Excluir paquetes en una actualización en Ubuntu
Hoy vamos a ver como excluir de una actualización uno o varios paquetes, en un sistema Ubuntu 18.04, mediante la herramienta apt-mark
Excluir paquetes en una actualización en Ubuntu mediante apt-mark
Se me ocurren muchos escenarios en los que sería necesarios excluir una serie de paquetes de la actualización general del sistema operativo. Por ejemplo, si no utilizamos la última versión de PHP en el caso de un servidor web, o no queremos realizar una subida de versión del “engine” de Docker. En otros sistemas con paquetería RPM, es bastante sencillo, mediante el parámetro “exclude” pero en Ubuntu no lo tenía claro.
Y aquí es donde entra en escena apt-mark, que nos permite “marcar” un programa o paquete para que no reciba actualizaciones. Con él también podemos indicar que un paquete se actualice de manera manual o automática, pero de eso quizás hablemos otro día.
La mejor manera de decir es hacer. Hoy mismo al realizar el “apt upgrade” en mi laptop o portátil, me han aparecido un buen puñado de actualizaciones. Entre ellas está el paquete de “openssl” y a modo de test, lo vamos a marcar para que no se actualice, esto lo haremos así:
sudo apk-mark hold openssl
Quedando así:
davidochobits@hpenvyi7:/etc/apt/sources.list.d$ sudo apt-mark hold openssl
openssl fijado como retenido.
Además podemos listar todos los paquetes marcados de esta manera, utilizando el parámetro “showhold” Tal como sigue:
davidochobits@hpenvyi7:/etc/apt/sources.list.d$ apt-mark showhold
openssl
Para comprobar que efectivamente el paquete no se va a actualizar:
Si queremos, volver a marcarlo como disponible para actualizar, sería así:
sudo apk-mark unhold openssl
Esta herramienta tiene muchas más posibilidades, os invito a conocerlas:
manpages.ubuntu.com – Apt-mark
Fuentes consultadas: