Todo pacote "não tem candidato à instalação"

26

Ao tentar instalar openssh-serverno Ubuntu 14.04 de 64 bits, recebo o seguinte erro:

Package openssh-server is not available but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'openssh-server' has no installation candidate

Vejo o mesmo erro ao tentar instalar qualquer pacote.

Este é o sources.listarquivo:

deb http://archive.canonical.com/ubuntu hardy partner
deb-src http://archive.canonical.com/ubuntu hardy partner
salman 299402
fonte
2
Você correu apt-get update? Além disso, você verificou se sources.listpossui as entradas relevantes?
Psimon
Por favor, publique a saída de apt-cache policy.
Faheem Mitha 01/07/2014
4
Por favor, faça screenshots não post da saída de texto: postar o texto de modo que ele pode realmente ser lido ...
jasonwryan
salman @ salman-Inspiron: ~ $ política de apt-cache do sudo [sudo] senha do salman: Arquivos do pacote: 100 / var / lib / dpkg / status release a = now Pacotes fixados: salman @ salman-Inspiron: ~ $
salman 299402
1
Eu sugeri uma edição que deve tornar isso responsável, ele só precisa de aprovação.
Oli

Respostas:

25

Se esse é realmente todo o seu /etc/apt/sources.listarquivo, isso explica sua situação atual. E não tenho explicação para o motivo de você ter um repositório Hardy instalado. Eu suspeito que você seguiu um tutorial antigo e ele quebrou as coisas.

Seu primeiro passo é colocar seus repositórios de volta aos trilhos. Eu sugeriria usar uma ferramenta como RepoGen para obter o básico, mas, na falta disso, aqui estão os mais essenciais:

deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse 
deb http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse 
deb http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse 
deb http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse 
deb http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse 

Cole aqueles no lugar certo com sudoedit /etc/apt/sources.list(você também pode abandonar essas linhas sobre hardy). Quando isso for salvo, execute sudo apt-get updatee você poderá instalar as coisas novamente.

Oli
fonte
Esta resposta ajudou com askubuntu.com/questions/789302/… para mim.
Shayan
3

Eu tive o mesmo problema, tentei toda a solução acima, juntamente com a verificação do Ubuntu software center. Não consegui decifrar para resolvê-lo. Aqui está a minha solução

Em primeiro lugar, precisamos estar conectados à Internet para que o processo de atualização aconteça.

$sudo apt-get remove openssh-client

$sudo apt-get update

Se a atualização não puder acontecer por causa de /var/lib/apt/lists/lockvocê, remova esse arquivo, o que ajudará a baixar o processo de atualização. Em seguida, execute o seguinte comando que deve funcionar

$sudo apt-get install openssh-server
Mr.Tananki
fonte
Não tente isso, não funcionou para mim e agora eu tenho menos do que antes
WhatAMesh
2

Esta mensagem de erro indica um 'pacote virtual' que existe apenas na Provides:linha de um outro pacote, ou é referido no Depends:, Recommends:ou Suggests:linhas de outro pacote (s).

Para listar os pacotes que possuem 'Fornece: openssh-server', você deve executar:

aptitude search "?provides(openssh-server)"

Eu suspeito que você tenha outros problemas no seu sistema ubuntu, provavelmente em seu sources.list(s) arquivo (s) - no debian, pelo menos, o openssh-server é um pacote real, não um pacote virtual. Eu ficaria surpreso se fosse diferente no ubuntu.

$ aptitude search "?provides(openssh-server)"
i   openssh-server                  - secure shell (SSH) server, for secure acce
p   openssh-server:i386             - secure shell (SSH) server, for secure acce
cas
fonte
0

Eu tive o mesmo problema, removi e adicionei a lista de fontes repetidamente. No fim das contas, eu também tinha um braço de arquitetura estrangeira instalado e isso causou problemas. Então, primeiro, limpei todos os pacotes ARM e depois a arquitetura.

apt-get purge ".*:<arch>"
dpkg --remove-architecture <arch>

Depois disso, apt-get updatecorri sem problemas e finalmente pude atualizar os pacotes novamente.

Toxantrona
fonte