A instalação da versão mais recente do Apache 2.4 de backports confiáveis gera erros de dependência

1

Estou tentando instalar a versão mais recente do Apache 2.4. No entanto:

$ sudo apt-get install apache2=2.4.*
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Selected version '2.4.10-1ubuntu1.1~ubuntu14.04.1' (Ubuntu:14.04/trusty-backports [i386]) for 'apache2'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 apache2 : Depends: apache2-bin (= 2.4.10-1ubuntu1.1~ubuntu14.04.1) but 2.4.7-1ubuntu4.10 is to be installed
           Depends: apache2-data (= 2.4.10-1ubuntu1.1~ubuntu14.04.1) but 2.4.7-1ubuntu4.10 is to be installed
E: Unable to correct problems, you have held broken packages.

Existem pacotes para 2.4.7 e 2.4.10 em repositórios diferentes:

$ apt-cache policy apache2-data
apache2-data:
  Installed: (none)
  Candidate: 2.4.7-1ubuntu4.10
  Version table:
     2.4.10-1ubuntu1.1~ubuntu14.04.1 0
        100 http://archive.ubuntu.com/ubuntu/ trusty-backports/main i386 Packages
     2.4.7-1ubuntu4.10 0
        500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main i386 Packages
     2.4.7-1ubuntu4.5 0
        500 http://security.ubuntu.com/ubuntu/ trusty-security/main i386 Packages
     2.4.7-1ubuntu4 0
        500 http://archive.ubuntu.com/ubuntu/ trusty/main i386 Packages

No entanto, não sei como suas dependências se confundem para que eu receba o erro acima.

    
por Florian Brucker 27.06.2016 / 13:56

1 resposta

3

O repositório Backports está configurado para não ser instalado em uma instância padrão do Ubuntu (a prioridade de 500 é maior que 100, que é mostrada em sua saída; esse também é o padrão há algum tempo). Para fazer todas as dependências instalarem do repositório trusty-backports , temos que fazer uma das duas coisas para fazer com que o apt saiba o que queremos fazer (sim, apt e apt-get não são tão inteligentes quanto gostaríamos) ser):

(1) Especifique todas as dependências para instalar a partir dos backports, com packagename/trusty-backports , que é difícil, a menos que você conheça todos os pacotes dependentes, ou a maneira mais fácil ...

(2) Diga ao apt-get quando executamos o comando que queremos especificamente usar backports para ele como o 'release de destino' para instalação.

sudo apt-get -t trusty-backports install apache2

Isto irá puxar as dependências do repositório backports e deve atualizar o software Apache de acordo.

    
por Thomas Ward 27.06.2016 / 14:01