Same Package - Multiple Repos

7

Qual repositório o Ubuntu escolherá para baixar um pacote se o mesmo pacote estiver disponível em mais de um repositório? Suponha que um pacote A foi inicialmente instalado a partir do repositório X e mais tarde eu adicionei o repo Y, que também possui o pacote A. Qual repositório será escolhido para atualizar o pacote? Além disso, se eu remover completamente este pacote e tentar reinstalar, então qual repositório seria preferido pelo Ubuntu para instalar o pacote?

    
por 7_R3X 03.02.2016 / 14:11

1 resposta

6

Por padrão, o pacote com o maior número de versão é instalado, independentemente de qual repositório vem, a menos que seu número de versão seja menor que a versão atualmente instalada do pacote (isso pode acontecer, por exemplo, se você baixou uma versão superior como um pacote .deb e a instalou manualmente). No caso improvável de vários repositórios terem a mesma versão (mais alta) de um pacote, o pacote é instalado daquele que aparece primeiro no arquivo sources.list .

Você pode mudar isso, no entanto, atribuindo uma prioridade diferente a alguns pacotes baseados em vários critérios. O parágrafo anterior é verdadeiro com as configurações padrão porque, por padrão, todos os pacotes têm prioridade 500. No entanto, se versões diferentes do pacote tiverem prioridades diferentes, a versão com a prioridade mais alta será instalada e os números de versão serão usados apenas como vinculados. disjuntores se várias versões tiverem a mesma prioridade (mais alta). Além disso, se o pacote de prioridade mais alta tiver prioridade de pelo menos 1000, ele será instalado mesmo que sua versão seja menor do que a versão atualmente instalada.

As prioridades são gerenciadas em /etc/apt/preferences e documentadas em man apt_preferences . Veja minha resposta aqui para um exemplo de como eles podem ser usados.

    
por fkraiem 03.02.2016 / 14:31