apt-get nie znajduje sugerowanego pakietu (narzędzie perf)

9

Korzystam z liczników wydajności ( https://perf.wiki.kernel.org/index.php/Main_Page ) na Ubuntu 13.10 x86_64. Jeśli piszę perf, otrzymuję:

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

Ale apt-get install ...go nie znajduje

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

uname -rzwraca 3.11.0-031100-generic, tj. nieco inną nazwę jądra (domyślna wersja Ubuntu to 3.11.0-13-generic)

Jak mogę domyślnie zainstalować prawidłowe pliki binarne pasujące do jądra (i / lub jakie repozytoria muszę do tego dodać)?

(Wiem, że mogę to obejść, kompilując go ze źródeł jądra w / tools / perf /; to działa, ale idealnie chcę, aby było to zrobione automatycznie przez apt.)

Siedząc w zatoce
źródło

Odpowiedzi:

3

Musisz mieć zarówno linux-toolsjądro, jak i jądro w tej samej wersji, inaczej nie będzie działać:

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

Jeśli używasz jądra głównego, musisz skompilować perf z głównymi źródłami, inaczej to nie zadziała .

Braiam
źródło
Dziękuję za wyjaśnienie. Tak, pomyślałem, że ten pakiet jest dość wybredny (mniej więcej wersja zablokowana). Dlatego zwykle wracam do kompilacji. Ale nadal celem tego pytania jest uniknięcie kompilacji i skonfigurowanie (w pewien sposób) automatycznego wybierania pasujących plików binarnych. Czy nie ma na to łatwego sposobu?
Posiedzenie w zatoce
@SittingAtTheBay apt aktualizuje tylko pakiety binarne i znajdujące się w repozytorium, jeśli nie ma repozytorium (innymi słowy, jeśli sam go skompilujesz) apt nie może nic dla ciebie zrobić. Jeśli zaczynasz budować od źródła, musisz budować od samego końca.
Braiam
2

Miałem ten sam problem. Ilekroć uruchamiam polecenie perf, dostaję:

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

Ale faktycznie zainstalowano perf, instalując linux-toolspakiet, ale miał inną nazwę perf_2.6.38-16.

Tak więc jestem w stanie używać perf z perf_2.6.38-16poleceniem zamiast perf.

Możesz utworzyć alias dla perf_2.6.38-16nazwy perf.

Mam nadzieję, że ktoś z tym samym problemem może uznać to za przydatne.

Vikram Dattu
źródło
0

Otwórz terminal i wpisz jako

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

Następnie sprawdź ponownie.

Jeśli to nie pomoże, zainstaluj również te pakiety, a następnie spróbuj ponownie

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

Następnie sprawdź ponownie.

rɑːdʒɑ
źródło
Nie pomaga. Miałem już wszystkie trzy pakiety, o których wspomniałeś, już zainstalowane (teraz sprawdzone dwukrotnie)
Sitting At The Bay,