apt-get findet kein empfohlenes Paket (perf tool)

9

Ich verwende Leistungsindikatoren ( https://perf.wiki.kernel.org/index.php/Main_Page ) unter Ubuntu 13.10 x86_64. Wenn ich tippe, perfbekomme ich:

perf not found for kernel 3.11.0-031100
You may need to install linux-tools-3.11.0-031100-generic

Findet es apt-get install ...aber nicht

E: Unable to locate package linux-tools-3.11.0-031100-generic

uname -rgibt 3.11.0-031100-genericdh einen etwas anderen Kernelnamen zurück (Ubuntu-Standard ist 3.11.0-13-generic)

Wie kann ich standardmäßig die richtigen Binärdateien installieren, die zum Kernel passen (und / oder welche Repositorys muss ich dazu hinzufügen)?

(Ich weiß, dass ich dies umgehen kann, indem ich es aus den Kernelquellen in / tools / perf / kompiliere. Dies funktioniert, aber im Idealfall möchte ich, dass es automatisch über apt ausgeführt wird.)

An der Bucht sitzen
quelle

Antworten:

3

Sie müssen beide linux-toolsund den Kernel in derselben Version haben, sonst funktioniert es nicht:

sudo apt-get install linux-tools linux-generic
sudo reboot

Wenn Sie Mainline-Kernel verwenden, müssen Sie perf gegen die Mainline-Quellen kompilieren, sonst funktioniert es nicht .

Braiam
quelle
Danke für Ihre Erklärung. Ja, ich habe mir gedacht, dass dieses Paket ziemlich wählerisch ist (Version gesperrt oder so). Deshalb greife ich normalerweise auf das Kompilieren zurück. Die Absicht der Frage ist jedoch, eine Kompilierung zu vermeiden und apt (in gewisser Weise) so konfiguriert zu haben, dass die passenden Binärdateien automatisch ausgewählt werden. Gibt es nicht einen einfachen Weg, das zu tun?
Sitzen an der Bucht
@SittingAtTheBay apt aktualisiert nur Pakete, die Binärdateien sind und sich im Repository befinden, wenn es kein Repository gibt (mit anderen Worten, wenn Sie es selbst kompilieren), kann apt nichts für Sie tun. Wenn Sie von der Quelle aus bauen, müssen Sie den ganzen Weg aus Quellen bauen.
Braiam
2

Ich hatte das gleiche Problem. Wann immer ich einen Perf-Befehl abfeuere, bekomme ich:

$ perf
perf_2.6.38-1208 not found
You may need to install linux-tools-2.6.38-1208

Aber tatsächlich wurde perf durch die Installation des linux-toolsPakets installiert , aber es hatte einen anderen Namen perf_2.6.38-16.

Also kann ich perf mit perf_2.6.38-16Befehl anstelle von verwenden perf.

Sie können einen Alias ​​für perf_2.6.38-16mit Name erstellen perf.

Hoffe, jemand mit dem gleichen Problem kann es nützlich finden.

Vikram Dattu
quelle
0

Öffnen Sie Ihr Terminal und geben Sie als ein

sudo apt-get install linux-lowlatency-tools-3.11.0-11

Dann erneut prüfen.

Wenn Sie dies nicht erreichen, installieren Sie auch diese Pakete und versuchen Sie es erneut

sudo apt-get install linux-tools-common linux-base 

Dann erneut prüfen.

rɑːdʒɑ
quelle
Hilft nicht. Ich hatte alle drei Pakete, die Sie erwähnen, bereits installiert (doppelt überprüft)
Sitting At The Bay
0

Für mich war das Problem eine falsche Kernelversion nach dem Upgrade meines Systems von 13.10 auf 14.04.

Das Kernel-Problem wurde behoben, indem das generische Kernel-Paket neu installiert wurde ( Falscher Kernel nach dem Upgrade --- alter Kernel noch installiert? ). Danach funktionierte perf perfekt.

Bund
quelle