Come scoprire quali versioni di un pacchetto posso installare su APT


63

Usando APT, puoi installare una versione specifica di un pacchetto usando:

apt-get install package=1.0

Ma non puoi farlo

apt-get install package=1.*

Quindi, come posso scoprire per quali versioni sono disponibili packagesu un repository specifico o in tutti i repository nel mio /etc/apt/sources.list?


Risposte:


90

Proprio come un addendum

apt-cache madison <<package name>>

elencherà le versioni disponibili da tutte le tue fonti.

apt-cache madison vim
   vim | 2:7.3.547-1 | http://debian.mirrors.tds.net/debian/ unstable/main amd64 Packages
   vim | 2:7.3.429-2 | http://debian.mirrors.tds.net/debian/ testing/main amd64 Packages
   vim | 2:7.3.429-2 | http://http.us.debian.org/debian/ testing/main amd64 Packages
   vim | 2:7.3.429-2 | http://debian.mirrors.tds.net/debian/ testing/main Sources
   vim | 2:7.3.547-1 | http://debian.mirrors.tds.net/debian/ unstable/main Sources

madisonè un apt-cachesottocomando, man apt-cachedice:

Il comando madison di apt-cache tenta di imitare il formato di output e un sottoinsieme della funzionalità dello strumento di gestione degli archivi Debian, madison. Visualizza le versioni disponibili di un pacchetto in un formato tabulare. A differenza della madison originale, può solo visualizzare informazioni per l'architettura per la quale APT ha recuperato gli elenchi dei pacchetti (APT :: Architecture).


3
Madison? È un parametro per apt-cache o un nome di pacchetto? Non sto più usando una distribuzione apt-get (ma +1 per ogni evenienza)
Camilo Martin,

5
parametro. Non stare male, è stata una di quelle scoperte casuali anche per me. C'è una pagina web (app?) Sul sito Debian che mostra le stesse informazioni, che suppongo fosse prima, e qualcuno l'ha codificato per apt-cache. Abbastanza utile.
lornix,

Caspita, davvero utile. Cambierò l'accettazione in questo perché è proprio quello che volevo (al momento) e viene incorporato senza afferrarlo.
Camilo Martin,

1
Questo non funziona per tutti i pacchetti.
Cerin,

1
@nuoritoveri I sorgenti Sources sono repository che contengono il codice sorgente dei vari programmi e pacchetti. Il codice sorgente può essere scaricato usando il apt-get source XYZZYcomando per scaricare la fonte per il pacchetto XYZZY . Vedi la pagina man di apt-get ( ) per maggiori dettagli. man apt-get
lornix,

25

Gli apt-cache show <Package>spettacoli il pacchetto descrizioni di tutte le versioni l'installazione di Debian possono installare (cioè da lista memorizzata nella cache dei pacchetti disponibili dai pronti contro termine elencate sources.list). Quindi suppongo che potresti provare qualcosa del genere (ad esempio):

# apt-cache show package | grep Version
Version 1.0
Version 0.9-2squeeze1

Il apt-cache showdarebbe molto più informazioni che solo le versioni.


Grazie, ci proverò. È possibile effettuare il downgrade?
Camilo Martin,

Sembra funzionare, voglio solo sapere se questo elenca i pacchetti le cui versioni sono inferiori a quelle che ho attualmente.
Camilo Martin,

5
puoi usare la politica di apt-cache se solo la versione ti interessa.
Rémi,

@ Grazie Rémi !! Questo comando ha risolto il mio prossimo dubbio, come sapere da dove verrà un pacchetto. Stavo già cercando :)
Camilo Martin,

12
apt-cache policy gdb

Uscita campione:

gdb:
  Installed: 7.7.1-0ubuntu5~14.04.2
  Candidate: 7.7.1-0ubuntu5~14.04.2
  Version table:
 *** 7.7.1-0ubuntu5~14.04.2 0
        500 http://fr.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     7.7-0ubuntu3 0
        500 http://fr.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
        500 http://archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages

Quindi vediamo che ci sono due versioni di GDB disponibili:

  • 7.7.1-0ubuntu5~14.04.2
  • 7.7-0ubuntu3

Significato dell'uscita:


1
Grazie, questo sembra più dettagliato di apt-cache madison(ma più difficile da analizzare).
Camilo Martin,

2

Un comando appositamente progettato per questo è apt-show-version . Devi spesso installarlo, ma poi puoi eseguire apt-show-version -a e ti mostrerà il numero di versione, la distribuzione (cioè testing, stable, unstable, backport, ecc.) Dove si può trovare, e infine dire se la versione installata è aggiornato o meno.

Non ti fornisce tutte le informazioni di apt-cache, ma ti dà praticamente tutto ciò di cui hai bisogno, in quanto puoi quindi installarlo dal repository corretto (usando aptitude / apt-get -t) o semplicemente installarlo usando il numero di versione corretto in il modulo che hai notato.


+1, ma durante il test sulla scatola della mia ragazza con un esempio arbitrario, manca una delle versioni apt-cachescelte: i.imgur.com/15be7.png
Camilo Martin

È interessante, sembra che abbia saltato il più vecchio. Forse le tue preferenze apt sono impostate per preferire i test?
ShankarG

Non lo so? Dove guarderei per verificare se preferisce il test?
Camilo Martin,

Controlla il file / etc / apt / preferenze
ShankarG
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.