apt-get не знайде запропонований пакет (Perf tool)


9

Я використовую лічильники продуктивності ( https://perf.wiki.kernel.org/index.php/Main_Page ) на Ubuntu 13.10 x86_64. Якщо я набираю, perfотримую:

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

Але apt-get install ...не знаходить

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

uname -rповертає 3.11.0-031100-generic, тобто трохи інше ім’я ядра (за замовчуванням Ubuntu 3.11.0-13-generic)

Як я можу за замовчуванням встановити правильні бінарні файли, що відповідають ядру (та / або які репозиторії я маю додати для цього)?

(Я знаю, що можу обійти це, компілюючи його з джерел ядра в / tools / perf /; це працює, але в ідеалі я хочу, щоб це було зроблено автоматично через apt.)

Відповіді:


3

Потрібно мати і те, linux-toolsі ядро ​​в одній версії, інакше воно не працюватиме:

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

Якщо ви використовуєте основні ядра, ви повинні компілювати perf з основних джерел, інакше це не буде працювати .


Дякуємо за ваше пояснення. Так, я зрозумів, що цей пакет досить вибагливий (версія заблокована чи так). Ось чому я зазвичай відступаю перед його складанням. Але все-таки питання полягає у тому, щоб уникнути компіляції та вдало налаштовано (якимось чином) автоматично вибирати відповідні бінарні файли. Чи не існує простого способу це зробити?
Сидячи в бухті

@SittingAtTheBay apt оновлює лише пакети, які є бінарними файлами та знаходяться у сховищі, якщо немає сховища (іншими словами, якщо ви складете його самостійно), apt не може нічого зробити для вас. Якщо ви збираєтеся будувати з джерела, вам потрібно будувати будівництво з соусів на всьому шляху.
Брайам

2

У мене була така ж проблема. Кожного разу, коли я запускаю команду perf, я отримую:

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

Але насправді Perf був встановлений установкою linux-toolsпакету, але він був з іншою назвою perf_2.6.38-16.

Отже, я можу використовувати perf з perf_2.6.38-16командою замість perf.

Ви можете створити псевдонім для perf_2.6.38-16імені perf.

Сподіваюся, хтось із тією ж проблемою може вважати його корисним.


0

Відкрийте свій термінал і введіть як

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

Потім перевірте ще раз.

Якщо вас не вдасться отримати, то також встановіть ці пакунки та повторіть спробу

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

Потім перевірте ще раз.


Не допомагає. У мене були встановлені всі три пакунки, про які ви вже згадували (двічі перевірено)
Сидіння в бухті

0

Для мене проблема була неправильною версією ядра після оновлення моєї системи з 13.10 до 14.04.

Виправлено проблему з ядром, перевстановивши загальний пакет ядра ( Неправильне ядро ​​після оновлення --- старе ядро ​​все ще встановлено? ). Після цього парфу працювали чудово.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.