Текст и данные · Инструкция
WSL kernelModules: как подключить VHD с модулями ядра
У запроса «WSL kernelModules» есть конкретная цель: кастомному ядру нужны внешние модули. Ключ `kernelModules` указывает Windows-путь к VHD с модулями пользовательского ядра. Правильная тактика — изменить один параметр, проверить эффект и только затем трогать соседние настройки.
Короткий ответ
В `%UserProfile%\.wslconfig` задайте `kernelModules=C:\\WSL\\modules.vhdx`, затем выполните `wsl --shutdown` и снова запустите WSL. Модули должны соответствовать версии текущего ядра.
Что делает `kernelModules` в WSL 2
`kernelModules` относится к глобальным настройкам WSL 2. Указывает windows-путь к vhd с модулями пользовательского ядра. Это не то же самое, что `/etc/wsl.conf`: тот файл относится к отдельному дистрибутиву, а `.wslconfig` лежит в профиле Windows. Практический смысл настройки появляется, когда кастомному ядру нужны внешние модули. Если измеримого симптома нет, значение по умолчанию обычно лучше дополнительной нестандартной переменной. Перед изменением запишите текущее состояние и тест, по которому будете сравнивать результат.
Совет: Сохраните копию `.wslconfig` и меняйте один ключ за раз. Так проще понять, что именно повлияло на систему.
Как задать `kernelModules` и применить конфигурацию
- Откройте PowerShell и выполните `notepad $env:USERPROFILE\.wslconfig`; если файла нет, создайте его без расширения `.txt`.
- В секции `[wsl2]` добавьте `kernelModules=C:\\WSL\\modules.vhdx`. Если `kernelModules` уже есть, измените существующую строку, а не создавайте дубликат.
- Сохраните файл и закройте работающие Linux-процессы, чтобы не потерять несохранённую работу.
- В Windows выполните `wsl --shutdown`. Простого закрытия окна терминала недостаточно, потому что VM может продолжать работать.
- Запустите дистрибутив снова и проверьте результат: сверьте `uname -r`, затем выполните `modinfo <module>` и пробный `sudo modprobe <module>`.
Предупреждение: Модули должны соответствовать версии текущего ядра. Если результат ухудшился, верните прежнее значение, снова выполните `wsl --shutdown` и повторите исходный тест.
Как проверить эффект `kernelModules` после перезапуска
Не меняйте одновременно память, сеть, ядро и `kernelModules`. Сначала воспроизведите проблему, зафиксируйте результат, затем примените только эту правку. После перезапуска выполните тот же сценарий: проверить `uname -r`, `modinfo` и `modprobe`. Если улучшение не повторяется, причина может быть в службе дистрибутива, Windows-драйвере, VPN, файловой системе или другой части стека. Возврат к дефолту уменьшит число переменных и упростит следующую диагностику. Для длительного использования оставляйте параметр только при устойчивом, понятном результате.
Важно: Критерий успеха должен быть измеримым: время старта, число CPU, доступность сети, наличие модуля или созданный лог, а не ощущение «стало лучше».
Что зафиксировать до изменения `kernelModules`
Перед правкой выполните `wsl -l -v` и запишите исходное поведение. Для `kernelModules` важно иметь один повторяемый тест: сверьте `uname -r`, затем выполните `modinfo <module>` и пробный `sudo modprobe <module>`. Это позволит сравнить состояние до и после, а не оценивать изменение по общему впечатлению.
Как откатить `kernelModules` без переустановки дистрибутива
Верните прежнюю строку или удалите явный `kernelModules`, сохраните `.wslconfig` и выполните `wsl --shutdown`. После нового запуска WSL снова применит значение по умолчанию: не задан. Файлы Linux при таком откате не удаляются.
Какая ошибка чаще всего мешает проверить `kernelModules`
Не меняйте одновременно соседние параметры `.wslconfig`. Если вместе с `kernelModules` изменить сеть, память или ядро, источник эффекта потеряется. Сначала меняйте только этот ключ, затем повторяйте тот же тест: сверьте `uname -r`, затем выполните `modinfo <module>` и пробный `sudo modprobe <module>`.
Когда оставить `kernelModules`, а когда откатить
- `.wslconfig` находится в `%UserProfile%` Windows
- настройка относится к WSL 2, а не WSL 1
- после изменения выполнен `wsl --shutdown`
- проверена именно исходная задача, а не случайный соседний симптом
- старое значение сохранено для быстрого отката
Что учитывать
Условия меняются. Страница отражает состояние на 2026-09-23; при расхождении с официальной документацией приоритет у первоисточника.
Источники и проверка
Фактическая часть сверена по первичным источникам (в т.ч. Advanced settings configuration in WSL). Пример и формулировки — редакция N1RO на 2026-09-23.