dpkg/apt-get quiere instalar y sobrescribir paquetes diferentes

dpkg/apt-get quiere instalar y sobrescribir paquetes diferentes

Quiero instalar Pound. Haciendo esto:

apt-get install pound

produce esto:

root@myhost:~# apt-get install pound
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  linux-headers-3.2.0-23-generic linux-headers-3.2.0-23
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
  pound
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
Need to get 98.3 kB of archives.
After this operation, 226 kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/universe pound amd64 2.5-1.1 [98.3 kB]
Fetched 98.3 kB in 0s (418 kB/s)
Selecting previously unselected package pound.
(Reading database ... 102644 files and directories currently installed.)
Unpacking pound (from .../pound_2.5-1.1_amd64.deb) ...
Processing triggers for ureadahead ...
ureadahead will be reprofiled on next reboot
Processing triggers for man-db ...
Setting up mysql-server-5.5 (5.5.32-0ubuntu0.12.04.1) ...

Configuration file `/etc/apparmor.d/usr.sbin.mysqld'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.

El servidor mysql está instalado y ejecutándose. No quiero intentar reinstalar esto.

El paquete Pound no necesita el servidor mysql como dependencia.

¿Cómo puedo solucionar esto?

No quiero actualizar esto ya que esto acabaría con un sistema de producción. Parece que hay algo atascado dpkgque obliga a cualquier paquete instalado a forzar una reinstalación o actualización del servidor mysql.

Respuesta1

Parece que desea actualizar su paquete mysql-server-5.5. Esa versión coincide con las dadas enUSN-1909-1, por lo que parece que no has instalado una actualización de seguridad.

Debe revisar las diferencias en las distintas versiones del archivo de configuración (presionando Dcuando se le solicite, por ejemplo). Luego, como dice el mensaje, puede mantener su versión actual (de ese archivo) con N, aceptar la versión de Ubuntu con Y, o iniciar un shell para manejarlo usted mismo (por ejemplo, fusionar los cambios) con Z.

en respuesta a su actualización:

En algún momento en el pasado, alguien (usted u otro administrador en este cuadro) inició una actualización de MySQL, posiblemente sin darse cuenta. O tal vez el sistema esté configurado para aplicar automáticamente actualizaciones de seguridad y MySQL falló por algún motivo. Puedes ver esto en el apt-getresultado:

0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.

Sin duda, si marcaste dpkg -s mysql-server-5.5, la línea de estado no estaría install ok installed.

De todos modos, lo que sucedió la primera vez es que dpkg en realidad descomprimió los archivos del nuevo paquete (probablemente también detuvo MySQL, tal vez por eso se canceló). Llegó tan lejos como para intentar "configurar" MySQL, pero se produjo un error durante el proceso o se canceló.

aptestá intentando solucionarlo configurando el paquete. Es posible que puedas solucionarlo usándolo dpkg -idirectamente (aunque dpkgtambién puedes intentar configurarlo, no estoy seguro)

La verdadera solución es que necesita programar un tiempo de inactividad y finalizar la actualización de MySQL (y tenga en cuenta que puede haber habido un error de configuración). Especialmente porque la versión que estás ejecutando tiene (según oráculo) vulnerabilidades remotas que pueden afectar tanto a la confidencialidad como a la integridad.

Respuesta2

Recibiste el mensaje 2 not fully installed or removedincluso antes de comenzar tu ejecución adecuada. Esto esnonormal. Esto generalmente significa que la base de datos de su paquete está rota o es inconsistente. Si alguna vez ves esto,ABORTAR INMEDIATAMENTE. Deberías intentar ejecutar apt-get -f installpara empezar, para solucionar este problema. Si esto no funciona, puede hacer otras cosas, pero nunca continúe con otras acciones que involucren la base de datos del paquete si ve mensajes que contienen palabras como not fully installed or removed. Primero solucione el problema.

De hecho, estoy un poco sorprendido de que apt te permita continuar en este caso. No me encuentro con este tipo de situaciones a menudo, pero lo que recuerdo es que apt no te permite continuar hasta que hayas solucionado las cosas.

De todos modos, como puedes ver, cuando instalaste pound, apt intentó finalizar la instalación de los paquetes mysql, que eran los paquetes sobre los que apt te estaba advirtiendo en primer lugar, con el 2 not fully installed or removedmensaje antes mencionado.

NOTA: @derobert ha cubierto el mismo tema en su respuesta desde una perspectiva ligeramente diferente. Como aparentemente no lo entendiste, pensé en agregar mi granito de arena.

información relacionada