为非标准主线内核安装 linux-tools-generic

为非标准主线内核安装 linux-tools-generic

我在 LTS 发行版上运行非发行版默认 Linux 内核方面拥有丰富的经验。更好的电源使用、硬件支持和虚拟化功能是其中的一部分。

我使用 Ubuntu Kernel MainlineBuilds 来获取一些.deb并安装它们。

现在我想使用 中的工具linux-tools-generic。但是,没有可用的软件包与我的内核匹配。

如何获取非标准内核的 linux-tools-generic?

$ perf                                                                   
WARNING: perf not found for kernel 5.9.6-050906

  You may need to install the following packages for this specific kernel:
    linux-tools-5.9.6-050906-generic
    linux-cloud-tools-5.9.6-050906-generic

  You may also want to install one of the following packages to keep up to date:
    linux-tools-generic
    linux-cloud-tools-generic
$ sudo apt-get install linux-tools-5.9.6-050906-generic                     Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package linux-tools-5.9.6-050906-generic
E: Couldn't find any package by glob 'linux-tools-5.9.6-050906-generic'
E: Couldn't find any package by regex 'linux-tools-5.9.6-050906-generic'

答案1

如果您使用非标准内核,您应该linux-tools从获取内核映像的同一位置获取。

显然,Ubuntu 存储库没有linux-tools非标准内核。

我没有看到linux-toolsdebshttps://kernel.ubuntu.com/~kernel-ppa/mainline/所以您需要自己构建它们。

答案2

是的,Ubuntu 在内核相关的工具链中确实存在极端的依赖性,这可能会让主线内核的用户感到烦恼。

对我来说,示例工具是turbostat,上游维护者保证它始终向后兼容。它也是上游升级支持数据的首选工具。Ubuntu 版本包含在一个不必要的依赖性检查脚本中。解决这个问题的方法,正如@Pilot6 提到的,是从主线源代码编译它,使用tools/power/x86/turbostat/make现在make install也可以用于破坏 Ubuntu 版本,但我不推荐这样做。只需从那里运行它,tools/power/x86/turbostat/或者将二进制文件复制到更方便的地方。

参考: 错误报告 - 请不要过度限制 turbostat。

相关内容