6 votos

Cómo prevenir apt-get install desde la eliminación del paquete se mantiene?

Hemos actualizado recientemente 10.04 a 14.04.

Tenemos algunos paquetes retenidos, que nos actualiza de vez en cuando. Parece que en 14.04, al instalar o actualizar un paquete se elimina la retención para el paquete.

$ dpkg --get-selections libmysqlclient18
libmysqlclient18:amd64              install

# Hold the package
$ echo 'libmysqlclient18:amd64 hold' | sudo dpkg --set-selections

# Check that worked
$ dpkg --get-selections libmysqlclient18
libmysqlclient18:amd64              hold

# Install a new version of the package
$ sudo apt-get install libmysqlclient18
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  mysql-common
The following held packages will be changed:
  libmysqlclient18
The following packages will be upgraded:
  libmysqlclient18 mysql-common
2 upgraded, 0 newly installed, 0 to remove and 14 not upgraded.
Need to get 610 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://archive.ubuntu.com/ubuntu/ trusty-updates/main mysql-common all 5.5.44-0ubuntu0.14.04.1 [13.9 kB]
Get:2 http://archive.ubuntu.com/ubuntu/ trusty-updates/main libmysqlclient18 amd64 5.5.44-0ubuntu0.14.04.1 [596 kB]
Fetched 610 kB in 1s (339 kB/s)
Reading changelogs... Done
apt-listchanges: Mailing root: apt-listchanges: changelogs for <host>
(Reading database ... 490677 files and directories currently installed.)
Preparing to unpack .../mysql-common_5.5.44-0ubuntu0.14.04.1_all.deb ...
Unpacking mysql-common (5.5.44-0ubuntu0.14.04.1) over (5.5.43-0ubuntu0.14.04.1) ...
Preparing to unpack .../libmysqlclient18_5.5.44-0ubuntu0.14.04.1_amd64.deb ...
Unpacking libmysqlclient18:amd64 (5.5.44-0ubuntu0.14.04.1) over (5.5.43-0ubuntu0.14.04.1) ...
Setting up mysql-common (5.5.44-0ubuntu0.14.04.1) ...
Setting up libmysqlclient18:amd64 (5.5.44-0ubuntu0.14.04.1) ...
Processing triggers for libc-bin (2.19-0ubuntu6.6) ...

La instalación quitado la bodega!

$ dpkg --get-selections libmysqlclient18
libmysqlclient18:amd64              install

Esto ocurre para los paquetes sin postinst/prerm secuencias de comandos, así que parece que el problema es con apt y no con los propios paquetes. No sucedió en 10.04.

Puede alguien sugerir una solución que evitará apt de hacer esto?

2voto

kormat Puntos 36

Este es un dpkg cambio, no apto para cambio:

# dpkg --get-selections  | grep hold
google-chrome-stable                            hold
# dpkg -i google-chrome-stable_44.0.2403.125-1_amd64.deb
(Reading database ... 318187 files and directories currently installed.)
...
# dpkg --get-selections  | grep hold
#

Después de hacer algunas git bisecar, este cambio se introdujo en https://anonscm.debian.org/cgit/dpkg/dpkg.git/commit/?id=fb8997a460a0ef2909199b4603604a4e855003e0 como parte de https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=162541

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: