dpkg / apt-get deseja instalar e sobrescrever pacotes diferentes

dpkg / apt-get deseja instalar e sobrescrever pacotes diferentes

Eu quero instalar o Pound. Fazendo isso:

apt-get install pound

produz isto:

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.

mysql-server está instalado e funcionando. Não quero tentar reinstalar isso.

O pacote Pound não precisa do mysql-server como nenhuma dependência.

Como faço para corrigir isso?

Não quero atualizar isso, pois isso derrubaria um sistema de produção. Parece haver algo preso dpkgque está forçando qualquer pacote instalado a forçar uma reinstalação ou atualização do servidor mysql.

Responder1

Parece que você atualizaria seu pacote mysql-server-5.5. Essa versão corresponde às fornecidas emUSN-1909-1, então parece que você não instalou uma atualização de segurança.

Você deve revisar o que há de diferente nas diversas versões do arquivo de configuração (pressionando Dno prompt, por exemplo). Então, como diz o prompt, você pode manter sua versão atual (desse arquivo) com N, aceitar a versão do Ubuntu com You iniciar um shell para lidar com isso sozinho (por exemplo, mesclar as alterações) com Z.

em resposta à sua atualização:

Em algum momento no passado, alguém (você ou outro administrador desta caixa) iniciou uma atualização do MySQL, possivelmente sem perceber. Ou talvez o sistema esteja configurado para aplicar atualizações de segurança automaticamente e o MySQL falhou por algum motivo. Você pode ver isso na apt-getsaída:

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

Sem dúvida, se você verificasse dpkg -s mysql-server-5.5, a linha Status não seria install ok installed.

De qualquer forma, o que aconteceu na primeira vez é que o dpkg realmente descompactou os arquivos do novo pacote (provavelmente também parou o MySQL, talvez seja por isso que foi abortado). Chegou ao ponto de tentar "configurar" o MySQL, mas ocorreu um erro durante isso ou foi abortado.

aptestá tentando consertar isso configurando o pacote. Você pode contornar isso usando dpkg -idiretamente (embora dpkgtambém possa tentar configurá-lo, não tenho certeza)

A verdadeira solução é que você precisa agendar algum tempo de inatividade e concluir a atualização do MySQL (e cuidado, pode ter ocorrido um erro de configuração). Especialmente porque a versão que você está executando tem (de acordo com a Oráculo) vulnerabilidades remotas que podem prejudicar a confidencialidade e a integridade.

Responder2

Você recebeu a mensagem 2 not fully installed or removedantes mesmo de iniciar sua execução adequada. Isso énãonormal. Isso geralmente significa que seu banco de dados de pacotes está quebrado ou inconsistente. Se você alguma vez ver isso,ABOTAR IMEDIATAMENTE. Você deve tentar correr apt-get -f installpara começar, para corrigir isso. Se isso não funcionar, você pode fazer outras coisas, mas nunca prossiga com outras ações envolvendo o banco de dados de pacotes se vir mensagens que contenham palavras como not fully installed or removed. Resolva o problema primeiro.

Na verdade, estou um pouco surpreso que o apt permita que você prossiga neste caso. Não me deparo com essas situações com frequência, mas lembro que o apt não permite que você prossiga até que você conserte as coisas.

De qualquer forma, como você pode ver, ao instalar o pound, o apt tentou finalizar a instalação dos pacotes mysql, que eram os pacotes que o apt estava avisando em primeiro lugar, com a 2 not fully installed or removedmensagem citada.

NOTA: @derobert abordou o mesmo assunto em sua resposta de uma perspectiva ligeiramente diferente. Como você aparentemente não o entendeu, pensei em acrescentar meus dois centavos.

informação relacionada