前言
由于WSL2使用的是微软定制的内核,并非标准的Ubuntu内核,因此直接使用apt安装linux-tools包会失败。
网上给出的方法很多是直接下载微软的 wsl2 内核源码并对其中的 perf 进行手动编译来实现,具体步骤有些繁琐。在进行一番 search 之后,发现有一种利用安装 linux-tools-generic 来直接获取一个可用的perf程序的方法,实操验证可行性后写下此文,希望对后来者有所帮助。
问题溯源
操作步骤
- 安装
linux-tools-generic
linux-tools-generic是 Ubuntu 等 Debian 系 Linux 发行版中一个重要的工具包集合,主要提供与当前系统内核版本匹配的内核性能分析和调试工具,方便用户对系统性能进行监控、诊断和优化。
sudo apt update
sudo apt install linux-tools-generic
- 定位到
/usr/lib/linux-tools文件夹下
/usr/lib/linux-tools目录是 Ubuntu 等 Debian 系 Linux 发行版中,专门存放 内核相关工具(如性能分析、调试、CPU 管理工具)可执行文件及依赖资源 的核心目录,所有通过linux-tools-*系列包(如linux-tools-generic)安装的工具,默认都会部署到这里。
cd /usr/lib/linux-tools
该文件夹下会有一个和内核版本号相关的文件夹

在我的电脑上是叫这个名字
- 将这个文件复制到
/usr/local/bin
/usr/local/bin路径下存放的是用户本地可执行程序,此路径会默认加载进系统环境变量中
cd 6.8.0-87-generic
sudo cp perf /usr/local/bin
- 重启
bash生效

潜在隐患
在使用 perf report 查看采样输出时候,在交互界面底端发现提示:Cannot load tips.txt file,please install.perf!,查询资料,发现是因为只复制了 perf 二进制或没有安装 linux-tools/linux-tools-common 等包
参考资料
-
如何在Windows 11 WSL2 Ubuntu 环境下安装和配置perf性能分析工具?
-
WSL2安装性能分析工具perf简易方法