Wie kann ich die verfügbare Version eines Pakets in den Repositorys überprüfen?

257

Wie kann ich die Version des verfügbaren Pakets in den Ubuntu-Repositorys überprüfen, ohne es zu installieren?

rɑːdʒɑ
quelle

Antworten:

330

Verwenden Sie den Befehl:

apt-cache policy <packageName>

Hier finden Sie Informationen zu allen verfügbaren Paketversionen.

Beispiel:

alaa @ aa-lu: ~ $ apt-cache policy vlc
VLC:
  Installiert: 2.0.8-0ubuntu0.13.04.1
  Kandidat: 2.0.8-0ubuntu0.13.04.1
  Versionstabelle:
 *** 2.0.8-0ubuntu0.13.04.1 0
        500 http://ae.archive.ubuntu.com/ubuntu/ raring-updates / universe i386-Pakete
        500 http://security.ubuntu.com/ubuntu/ raring-security / universe i386-Pakete
        100 / var / lib / dpkg / status
     2.0.6-1 0
        500 http://ae.archive.ubuntu.com/ubuntu/ raring / universe i386-Pakete
  • An der Ausgabe können Sie erkennen, dass zwei Versionen verfügbar sind: 2.0.8-0ubuntu0.13.04.1und 2.0.6-1. Außerdem erfahren Sie, aus welchen Repositorys sie stammen.

  • Installed:teilt Ihnen die installierte Version mit. Wenn Sie das Paket nicht installiert haben, werden Sie sehen (none).

  • Candidate:ist die Version, die installiert wird, wenn Sie verwenden apt-get install vlc. Wenn Sie die andere Version installieren möchten, würden Sie tun apt-get install vlc=2.0.6-1.

Alaa Ali
quelle
26

Gehen Sie zu packages.ubuntu.com , füllen Sie das Suchformular aus und erhalten Sie eine schöne Ansicht des Pakets einschließlich der Version.


Bildbeschreibung hier eingeben


Hit suchen, dann:


Bildbeschreibung hier eingeben


Zusätzliche Vorteile

  • Listet auch Versionen von Paketen für andere Versionen von Ubuntu auf. Z.B. Wenn Sie wissen möchten, welche Version des Pakets in Raring (13.04) enthalten ist, Ihr System jedoch Precise (12.04) aufweist, können Sie dies auf diese Weise herausfinden.
  • Sie brauchen nicht einmal Ubuntu, um installiert zu werden.

Der größte Nachteil ist, dass die Versionen anderer Repositorys, die Sie möglicherweise installiert haben, wie z. B. PPAs, nicht aufgelistet werden. Sie benötigen dann den apt-cache policyAnflug wie bereits gebucht.

Profi-Tipp

Nehmen Sie die Verknüpfung - suchen Sie einfach nach dem Namen des Pakets, das Sie abfragen möchten, http://packages.ubuntu.com/packagenameund ersetzen Sie ihn packagenamedurch den Namen.

gertvdijk
quelle
18
apt-cache madison <packageName>

Es enthält auch Informationen zu allen verfügbaren Paketversionen in den Repositorys. Diese Befehlsausgabe hatte die folgende Syntax:

packageName | Version | Repository

Der Befehl madison von apt-cache versucht, das Ausgabeformat und einen Teil der Funktionalität des Debian-Archivverwaltungstools madison nachzuahmen. Es zeigt verfügbare Versionen eines Pakets in einem tabellarischen Format an. Im Gegensatz zum ursprünglichen Madison können nur Informationen für die Architektur angezeigt werden, für die APT Paketlisten abgerufen hat (APT :: Architecture).

Beispiel:

$ apt-cache madison chromium-browser
chromium-browser | 32.0.1700.102-0ubuntu0.13.10.1~20140128.970.1 | http://mirror.sov.uk.goscomb.net/ubuntu/ saucy-updates/universe amd64 Packages
chromium-browser | 32.0.1700.102-0ubuntu0.13.10.1~20140128.970.1 | http://mirror.sov.uk.goscomb.net/ubuntu/ saucy-security/universe amd64 Packages
chromium-browser | 29.0.1547.65-0ubuntu2 | http://mirror.sov.uk.goscomb.net/ubuntu/ saucy/universe amd64 Packages
chromium-browser | 29.0.1547.65-0ubuntu2 | http://archive.ubuntu.com/ubuntu/ saucy/universe amd64 Packages
chromium-browser | 29.0.1547.65-0ubuntu2 | http://mirror.sov.uk.goscomb.net/ubuntu/ saucy/universe Sources
chromium-browser | 32.0.1700.102-0ubuntu0.13.10.1~20140128.970.1 | http://mirror.sov.uk.goscomb.net/ubuntu/ saucy-updates/universe Sources
chromium-browser | 32.0.1700.102-0ubuntu0.13.10.1~20140128.970.1 | http://mirror.sov.uk.goscomb.net/ubuntu/ saucy-security/universe Sources
chromium-browser | 29.0.1547.65-0ubuntu2 | http://archive.ubuntu.com/ubuntu/ saucy/universe Sources
chromium-browser | 29.0.1547.65-0ubuntu2 | http://archive.ubuntu.com/ubuntu/ saucy/universe Sources
Avinash Raj
quelle
Vielen Dank für diese Antwort, die Ausgabe ist mit Skripten viel lesbarer und besser zu bearbeiten als mitapt-cache policy
MisterZ
9

Öffne dein Terminal mit CTRL+ ALT+ T und tippe dann als

apt-cache showpkg <package_name>

Dann erhalten Sie Informationen darüber, welche Version verfügbar ist.

zum Beispiel:

jai@frank-Jai:~$ apt-cache showpkg chromium
Package: chromium
Versions: 

Reverse Depends: 
  mozplugger,chromium 10.0.648.114~r75702-1~
  chromium-bsu,chromium 0.9.14
  chromium-bsu,chromium 0.9.14
Dependencies: 
Provides: 
Reverse Provides: 
jai@frank-Jai:~$ 
rɑːdʒɑ
quelle
1
Soweit ich weiß, gibt es kein solches Paket, das nur "Chrom" heißt. Daher apt-cache showist in diesem Sinne praktischer.
Radu Rădeanu
@ RaduRădeanu Chrom ist ein Browser.
Donnerstag,
1
Ja, Sie haben Recht, aber der Name des Pakets ist chromium-browser. Sie können mit überprüfen apt-cache search chromium. Es ist die 5. Zeile von der Ausgabe :)
Radu Rădeanu
8

apt-cache showoder aptitude showSie erhalten viele Informationen zu einem Paket aus Ihren Repositorys (auch wenn dieses installiert ist oder nicht), einschließlich der Version. Wenn Sie sich nur für die Version interessieren, verwenden Sie:

apt-cache show <packageName> | grep Version

oder

aptitude show <packageName> | grep Version

Wenn ein Paket in mehreren Versionen verfügbar ist, wird dies angezeigt. Um nur die letzte Version anzuzeigen, verwenden Sie:

apt-cache show <packageName> | grep Version | head -1

Mit dem obigen Befehl können Sie keine Zweifel haben.

Radu Rădeanu
quelle
3
apt-cache policy <PackageName> | grep Candidate | cut -d ':' -f 3 | cut -d '-' -f 1
munsingh
quelle
4
Wäre schön, wenn Sie Ihre Antwort so bearbeiten würden, dass sie eine kurze Beschreibung der Funktionsweise Ihres Befehls und seiner Unterteile enthält, damit zukünftige Leser möglicherweise einen Einblick erhalten. Nicht jeder ist geschickt genug, um zu verstehen, was Sie dort tun. Prost.
Videonauth
0

Hier ist ein anderer Weg:

sudo apt-get -s install --only-upgrade <package-name>

Die obige Methode funktioniert nur, wenn sie mit sudo ausgeführt wird.

Jerry Hoffmeister
quelle
2
Ich glaube nicht, dass du Sudo dafür brauchst, da du nur simulierst ( -s)
Gerhard Burger
2
Dies ist der Fall, wenn der Benutzer, unter dem Sie den Befehl ausführen, keinen Lesezugriff auf die Dateien in /etc/apt/sources.list.d/ hat. Dies ist auch der Fall, wenn Sie die apt-cache-Richtlinie <pkg name> ausführen. Ich musste mit sudo
Jerry Hoffmeister