Instale uma versão de versão específica não listada usando madison

0

Estou tentando instalar uma versão específica do CrateDB, por exemplo:

$sudo apt-get -s install crate=2.1.8-1~wheezy

mas este pacote não foi encontrado.

A execução de 'apt-cache madison' mostra apenas a versão mais recente:

$sudo apt-cache madison crate
     crate | 2.2.3-1~wheezy | https://cdn.crate.io/downloads/apt/stable wheezy/main amd64 Packages
     crate | 2.2.3-1~wheezy | https://cdn.crate.io/downloads/apt/stable wheezy/main i386 Packages

repositório Crate.io em sources.list:

deb https://cdn.crate.io/downloads/apt/stable/ wheezy main
deb-src https://cdn.crate.io/downloads/apt/stable/ wheezy main

Todas as versões que estão realmente disponíveis (incluindo 2.1.8-1 ~ wheezy): link

Como posso fazer com que o apt veja todos os pacotes disponíveis e não apenas o mais recente?

(estou no Ubuntu 16.04.1 LTS)

    
por Olav 16.11.2017 / 19:02

2 respostas

2

Os repositórios da Debian (incluindo o Ubuntu) são projetados para ter apenas um candidato disponível para um pacote. Por padrão, essa é a versão mais recente disponível para essa versão. Você não pode mudar isso - é upstream, e a versão é designada no arquivo Release do repositório.

Warning : Geralmente não é prudente usar os pacotes Debian no Ubuntu, a menos que você realmente saiba o que está fazendo. Existem muitas razões para isso.

Aviso : o downgrade de um pacote é possível, mas é não suportado . Se você tentar, e não funcionar por qualquer motivo, então o melhor conselho que você receberá é reverter para a versão correta para o seu lançamento do Ubuntu. Um pacote de versão incorreta pode causar todos os tipos de problemas de dependência. (É por isso que os repositórios do Debian não jogam esse jogo)

Etapa 1: faça o download do pacote para um local onde você o encontre novamente. Nesse caso, vamos colocar o diretório Downloads:

wget -o ~/Downloads/ https://cdn.crate.io/downloads/apt/stable/pool/main/c/crate/crate_2.1.8-1~wheezy_all.deb

Etapa 2: desinstale a caixa mais recente e instale a caixa mais antiga:

sudo apt remove crate
sudo apt install ~/Downloads/crate_2.1.8-1~wheezy_all.deb

Passo 3: Evitar que o apt atualize o engradado automaticamente

sudo apt-mark hold crate
sudo apt-mark unhold crate <---- Someday (not today) you will need this to undo the hold
    
por user535733 16.11.2017 / 20:13
1

Obrigado por nos chamar a atenção. - Isso é porque estávamos usando a ferramenta reprepo para gerenciar nossos repositórios Debian e Ubuntu, que infelizmente tem a limitação de permitir apenas uma versão por pacote e distribuição. Nós estaremos mudando nossa infra-estrutura de lançamento para usar algo que nos permite manter versões antigas disponíveis.

No entanto, para o Ubuntu, é aconselhável instalar o pacote CrateDB a partir de nossas versões DEB ( link . ), não o nosso APT, conforme declarado aqui .

    
por Mika Naylor 23.11.2017 / 07:58