Stesso pacchetto - Repos multipli


11

Da quale repository Ubuntu sceglierà di scaricare un pacchetto se lo stesso pacchetto è disponibile in più repository? Supponiamo che un pacchetto A sia stato inizialmente installato dal repository X e successivamente ho aggiunto il repository Y che ha anche il pacchetto A. Quale repository verrà scelto per aggiornare il pacchetto? Inoltre, se rimuovo completamente questo pacchetto e provo a reinstallare, quale repository sarebbe preferito da Ubuntu per installare il pacchetto?

Risposte:


12

Per impostazione predefinita, viene installato il pacchetto con il numero di versione più alto, indipendentemente dal repository da cui proviene, a meno che il suo numero di versione non sia inferiore alla versione del pacchetto attualmente installata (ciò può accadere, ad esempio, se si scarica una versione successiva come un .debpacchetto e installato manualmente). Nel caso molto improbabile che diversi repository abbiano la stessa (più alta) versione di un pacchetto, il pacchetto viene installato da quello che appare per primo nel sources.listfile.

È possibile modificarlo, tuttavia, assegnando una priorità diversa ad alcuni pacchetti in base a vari criteri. Il paragrafo precedente è vero con le impostazioni predefinite perché per impostazione predefinita tutti i pacchetti hanno priorità 500. Se versioni diverse del pacchetto hanno priorità diverse, tuttavia, verrà installata la versione con la priorità più alta e i numeri di versione verranno utilizzati solo come tie- interrompe se più versioni hanno la stessa (massima) priorità. Inoltre, se il pacchetto con la priorità più alta ha priorità almeno 1000, verrà installato anche se la sua versione è inferiore alla versione attualmente installata.

Le priorità sono gestite /etc/apt/preferencese documentate in man apt_preferences. Vedi la mia risposta qui per un esempio di come possono essere utilizzati.


Si noti che la documentazione afferma che assegna una priorità di 990 alle versioni che appartengono alla versione di destinazione. Quindi non 500 come dici qui ( perché per impostazione predefinita tutti i pacchetti hanno priorità 500. ) È 500 solo se non è la destinazione corretta.
Alexis Wilke,

@AlexisWilke Per impostazione predefinita, non esiste una versione di destinazione.
fkraiem,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.