Paketversion mit apt-get / aptitude prüfen?


430

Bevor ich ein Paket installiere, möchte ich wissen, welche Version ich bekommen würde. Wie überprüfe ich die Version vor der Installation mit apt-getoder aptitudeunter Debian oder Ubuntu?

Antworten:


540

passend

Sie können eine Simulation ausführen, um zu sehen, was passieren würde, wenn Sie ein Paket aktualisieren / installieren:

apt-get -s install <package>

Um alle möglichen Upgrades anzuzeigen, führen Sie einen upgradeausführlichen Modus aus und drücken Sie (um sicher zu gehen), um die Simulation nabzubrechen:

apt-get -V -s upgrade

apt-cache

Die Option policykann die installierte und die entfernte Version (Installationskandidat) eines Pakets anzeigen.

apt-cache policy <package>

apt-show-versionen

Wenn installiert, werden Versionsinformationen zu einem oder mehreren Paketen angezeigt:

apt-show-versions <package>

Wenn Sie den -uSwitch mit oder ohne Paketnamen übergeben, werden nur aktualisierbare Pakete angezeigt.

Eignung

Die Konsolen-GUI von aptitudekann aktualisierbare Pakete mit neuen Versionen anzeigen. Öffnen Sie das Menü 'Upgradable Packages'. Wenn Sie vauf ein Paket klicken, werden detailliertere Versionsinformationen angezeigt.

Oder auf der Kommandozeile:

aptitude versions <package>

Beim Bestehen -Vwerden detaillierte Informationen zu den Versionen angezeigt, um mit dem Simulationsschalter wieder sicher zu sein:

aptitude -V -s install <package>

Durch Ersetzen install <package>mit upgradewerden die Versionen aller aktualisierbaren Pakete angezeigt.


9
"Das Programm 'apt-show-versions' ist derzeit nicht installiert. Sie können es durch Eingabe von .. installieren."
Peter Ehrlich

1
apt-get -V -s upgrademachte meinen Tag, danke!
Dr. Dimitru

Ist es empfehlenswert , läuft apt-get install -smit sudo?
Edwinksl

@edwinksl: Es funktioniert gut ohne es, also würde ich nicht erwarten, dass sudo besser wäre.
Zondo

3
apt show <packages>kann auch zur Liste hinzugefügt werden
Leo

59

Ein anderer Weg mit dpkg und grep :

dpkg -s <package> | grep Version

14
Dies funktioniert nicht, wenn <package> nicht bereits installiert ist (was in der Frage eine Voraussetzung war).
Serrano

1
Serrano Pereira, diese Antwort hat mir geholfen, der eine etwas andere Frage hatte, die aber ähnlich genug war, um sich beim Stackoverflow nicht zu täuschen.
Jose Alban

Besser: dpkg -s <package> | grep-Version (Beachten Sie die Hauptstadt V)
langlauf.io

21

Wenn Sie den vollständigen Namen des Pakets nicht kennen, können Sie auch die Suchausgabe von aptitude formatieren:

aptitude search <package> -F "%c %p %d %V"

%c= Status (Paket installiert oder nicht)
%p= Name des
%dPakets
%V= Beschreibung des Pakets = Version des verfügbaren Pakets

Referenz: http://linux.die.net/man/8/aptitude


8

So erhalten Sie den Paketnamen:

apt-cache search *search term*

So erhalten Sie Versionsdetails:

apt-cache show *packagename*

Ich glaube apt-getund werde apt-cacheveraltet, mit aptund aptitudezur bevorzugten Methode. Angesichts der Langlebigkeit der Apt-Suite ist dies wahrscheinlich für einige Zeit eine sichere Sache!


Genau das habe ich gesucht. Verwendet Remote Repo, um die Version und alle möglichen anderen Informationen abzurufen.
24.

6

Du kannst schreiben apt show <package>


Dies wurde bereits in der Antwort von Ned Flanders, unix.stackexchange.com/a/362794/22812
Anthony Geoghegan,

@yurij Sie sollten Ihre eigene Antwort entsprechend der Menge der Bearbeitung, die Sie gemacht haben, verdrahtet haben
Kiwy

@AnthonyGeoghegan du liegst falsch, er spricht von zwei verschiedenen Dingen, die apt-cacheich benutze apt... Was vermisse ich?
elvis.dukaj

aptund apt-cachemache dasselbe. Wenn Sie den Quellcode überprüfen, haben beide Frontends dieselbe Funktionalität: for show, eine aufgerufene Funktion ShowPackageund for search, eine aufgerufene Funktion DoSearch.
Anthony Geoghegan

3
 $ rmadison gdm3
 gdm3 | 2.30.5-6squeeze2 | squeeze-security | i386
 gdm3 | 2.30.5-6squeeze5 | squeeze          | i386
 gdm3 | 3.4.1-8          | wheezy           | i386
 gdm3 | 3.14.1-7         | jessie           | i386
 gdm3 | 3.18.0-2         | stretch          | i386
 gdm3 | 3.18.0-2         | sid              | i386

von devscripts.deb


Für Ubuntu werden Versionen angezeigt, die für verschiedene Ubuntu-Versionen gefunden wurden (Codenamen wie "präzise", "vertrauenswürdig" und "xenial"). Sehr langsam, aber kann Ihnen bei der Entscheidung helfen, Ihr LTS zu aktualisieren;)
Tomasz Gandor

2

Anzeigen des neuesten verfügbaren Pakets vor der Installation. Führen Sie ein Update durch, damit Sie über das neueste Paket-Update verfügen.

$sudo apt-get update

Um das neueste in Ihrem Repository verfügbare Paket vor der Installation zu überprüfen, führen Sie den folgenden Befehl aus.

$apt-cache show <package name>

Beispiel:

$apt-cache show latexila

oder

$apt-cache show npm
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.