⚠️

JavaScript 已禁用

本网站需要 JavaScript 才能正常运行。请启用浏览器中的 JavaScript 设置, 然后刷新页面继续访问。

如需帮助,请参考浏览器的帮助文档或联系技术支持。

替换WSL内核

替换WSL内核

点击展开摘要
本文介绍如何在WSL Ubuntu 24.04中替换默认内核,使用自定义编译的 Linux 内核。

替换 WSL2 的 Linux 内核

本文介绍如何在 WSL Ubuntu 24.04(宿主机为 Windows 11 25H2)中替换默认内核,使用自定义编译的 Linux 内核。

1. 安装编译依赖

在 WSL 终端中运行以下命令安装必要工具:

sudo apt install build-essential flex bison dwarves libssl-dev libelf-dev libncurses5-dev

2. 下载内核源码

kernel.org 选择目标版本(如 v6.18.7),并克隆源码:

git clone --depth=1 --branch=v6.18.7 https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
cd linux

3. 获取 .config 配置文件

下载适用于 WSL2 的配置文件并保存为 .config

🔗 配置文件地址:https://blog-sb.abc6.fun/config_file.txt

wget -O .config https://blog-sb.abc6.fun/config_file.txt

4. 编译内核

执行编译命令(使用全部 CPU 核心):

make -j$(nproc) bzImage

过程中若出现配置提示,直接按回车使用默认选项。编译成功后将显示:

Kernel: arch/x86/boot/bzImage is ready (#1)
⏱️ 编译时间因机器而异:实测约 1 分钟(部分用户报告长达 12 分钟)。

5. 复制内核到 Windows 主机

进入内核输出目录并打开 Windows 文件资源管理器:

cd arch/x86/boot
explorer.exe .

bzImage 文件复制到 Windows 目录,例如:

  • C:\Users\YourName\wsl2-kernel\bzImage

6. 配置 WSL 使用新内核

在 Windows 用户目录下创建或编辑 .wslconfig 文件(路径:C:\Users\%USERNAME%\.wslconfig),添加以下内容:

[wsl2]
kernel=C:\\Users\\YourName\\wsl2-kernel\\bzImage
⚠️ 注意:路径中的反斜杠需双写(\\),且避免使用系统保护目录(如 System32)。

7. 重启并验证

在 PowerShell 中关闭 WSL:

wsl --shutdown

重新启动 WSL 终端,运行以下命令确认内核版本:

uname -a

若输出包含 6.18.7 或你编译的版本号,则替换成功!