Necessita de esclarecimento do apt_preferences

2

O problema:

# apt-get install libssl-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
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:
 libssl-dev : Depends: libssl1.0.0 (= 1.0.1t-1+deb8u6) but 1.0.2k-1~bpo8+1 is to be installed
              Recommends: libssl-doc but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

A pesquisa:

# apt-cache policy libssl-dev
libssl-dev:
  Installed: (none)
  Candidate: 1.0.1t-1+deb8u6
  Version table:
     1.0.2k-1~bpo8+1 0
        400 http://httpredir.debian.org/debian/ jessie-backports/main amd64 Packages
     1.0.1t-1+deb8u6 0
        900 http://security.debian.org/ jessie/updates/main amd64 Packages
     1.0.1t-1+deb8u5 0
        900 http://httpredir.debian.org/debian/ jessie/main amd64 Packages

100 <= P < 500 causes a version to be installed unless there is a version available belonging to some other distribution or the installed version is more recent

500 <= P < 990 causes a version to be installed unless there is a version available belonging to the target release or the installed version is more recent

Detalhes:

# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.7 (jessie)
Release:    8.7
Codename:   jessie

# cat /etc/apt/preferences
Package: *
Pin: release a=stable
Pin-Priority: 900

Package: *
Pin: release a=jessie-backports
Pin-Priority: 400

Parece que minhas prioridades estão fixadas corretamente, apesar de apt-get estar tentando instalar a versão do jessie-backorts . Por quê?

EDITAR

# apt-cache policy libssl1.0.0
libssl1.0.0:
  Installed: 1.0.2k-1~bpo8+1
  Candidate: 1.0.2k-1~bpo8+1
  Version table:
 *** 1.0.2k-1~bpo8+1 0
        100 /var/lib/dpkg/status
     1.0.1t-1+deb8u6 0
        990 http://security.debian.org/ jessie/updates/main amd64 Packages
     1.0.1t-1+deb8u5 0
        990 http://httpredir.debian.org/debian/ jessie/main amd64 Packages

Acho que agora entendo qual é o problema.

    
por NarūnasK 20.04.2017 / 13:44

1 resposta

3

Você não deve fixar uma suíte de backports; Por padrão, ele é configurado de modo que seja usado apenas para instalações com um destino explícito ou para atualizações de uma versão com backport. Eu recomendo que você remova seu arquivo /etc/apt/preferences inteiramente.

De qualquer forma, o seu erro não está relacionado à fixação, mas foi causado pela versão instalada de libssl1.0.0 dos backports. Observe a versão candidata dada por apt-cache policy libssl-dev : que mostra que apt-get preferiria a versão estável, não a versão backport. A mensagem de erro que você está recebendo é

The following packages have unmet dependencies:
 libssl-dev : Depends: libssl1.0.0 (= 1.0.1t-1+deb8u6) but 1.0.2k-1~bpo8+1 is to be installed
              Recommends: libssl-doc but it is not going to be installed

que mostra que apt-get está tentando instalar libssl-dev 1.0.1t-1 + deb8u6 (daí a dependência de libssl1.0.0 com a mesma versão), mas a versão de libssl1.0.0 sendo considerada é 1.0.2k -1 ~ bpo8 + 1, porque é isso que já está instalado ...

    
por 20.04.2017 / 13:52

Tags