WSL — не эмулятор, а прослойка совместимости, запускающая нативные Linux-бинарники на базе ядра Windows. С 2025 года появилась архитектура, позволяющая импортировать сжатые rootfs-образы напрямую, что принципиально меняет подход к установке дистрибутивов вроде Kali Linux под Windows.
Современная архитектура WSL: что изменилось
Начиная с ноября 2024 года, WSL поддерживает импорт сжатых файлов корневой файловой системы (rootfs) напрямую через tar-архивы. Чтобы получить доступ к этой функциональности, установите последнюю предрелизную версию WSL:
wsl --update --pre-release
После обновления становятся доступны файлы с расширением .wsl, которые можно загрузить с зеркал проекта Kali Linux. Альтернативный способ быстрой установки — через стандартную команду:
wsl --install kali-linux
[ИЗОБРАЖЕНИЕ: Схема архитектуры WSL 2: взаимодействие ядра Linux, Hyper-V и Windows]
WSL 1 и WSL 2: ключевые отличия
Windows Subsystem for Linux представлен двумя версиями:
- WSL 2 — оптимальный вариант для большинства задач. Основное отличие — использование нативного Linux-ядра внутри компактной виртуальной машины Hyper-V, полностью управляемой WSL. Это обеспечивает максимальную совместимость, современный сетевой стек и высокую производительность, особенно для задач, связанных с компиляцией, файловой системой и низкоуровневыми инструментами.
- WSL 1 — работает за счёт трансляции Linux-системных вызовов в Windows API. Стартует быстрее, экономит ресурсы, но не поддерживает многие функции Linux-ядра.
Используйте Windows 11: здесь минимум ручной настройки. На Windows 10 потребуется больше этапов подготовки. Проверьте актуальность системы — минимум патчи ноября 2022 года.
- Если работаете в виртуальной машине, включите вложенную виртуализацию. Без неё WSL 2 не поднимется внутри VM, так как Hyper-V потребует второй уровень виртуализации.
Пошаговая установка Kali на WSL 2
- Откройте cmd или PowerShell с правами администратора и выполните:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all
Первая команда включает платформу виртуализации Hyper-V, вторая — саму подсистему WSL.
- Перезагрузите компьютер при появлении соответствующего запроса.
- Скачайте и установите ядро WSL 2 (доступно по ссылке aka.ms/wsl2kernel). Это не эмулятор, а официально скомпилированное Linux-ядро. Без этого WSL 2 работать не будет.
- Снова перезагрузите систему.
- В командной строке укажите WSL 2 как версию по умолчанию:
wsl --set-default-version 2
- Откройте Microsoft Store и установите Kali Linux.
- Если Kali была установлена ранее на WSL 1, выполните:
wsl --set-version kali-linux 2 - Первый запуск Kali завершит настройку: потребуется создать пользователя и пароль.
[ИЗОБРАЖЕНИЕ: Скриншот установки Kali Linux из Microsoft Store]
Версия Windows и требования для WSL
На Windows 11 всё работает сразу. Для Windows 10 — проверьте версию в окне winver. Минимальные требования:
- WSL 1: сборка 16215, версия 1703
- WSL 2 (x64): сборка 18362.1049, версия 1903
- Рекомендовано: сборка 19041, версия 2004
- WSL 2 (ARM64): сборка 19041, версия 2004
Сборка 2004 и новее обеспечивает автоматизированную установку через wsl-хелпер.
На Windows 11 дополнительно устранены старые проблемы с устаревшими хардкод-ссылками.
Как узнать свою сборку Windows
Нажмите WIN+R, введите winver — номер сборки указан после “Сборка ОС”. Например, 18363.418 позволяет использовать обе версии WSL, но для WSL 2 понадобятся дополнительные шаги по установке ядра и включению виртуализации.
Включение WSL 1: возможные пути
WSL — опциональный компонент. Включить можно:
Через wsl-хелпер
Требуется Windows 10 версии 2004 или выше. После выполнения команды всё устанавливается автоматически, включая WSL 2:
wsl --install --distribution kali-linux
Недостаток: до патча ноября 2022 возможно получение старой версии Kali по устаревшей ссылке.
Пароль при вводе не отображается — это нормально для UNIX-систем.
Через DISM
Дает более приточный контроль. Последовательно выполните:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all
После выполнения команд требуются перезагрузка и установка ядра.
Через PowerShell
Для автоматизации и сценариев:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux,VirtualMachinePlatform
Эквивалентно DISM, но удобнее для PowerShell-скриптов.
Обновление с WSL 1 до WSL 2
- Убедитесь, что включена VirtualMachinePlatform:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- Установите соответствующее ядро (wsl_update_x64.msi или wsl_update_arm64.msi).
- Перезагрузите систему.
- Выберите WSL 2 как версию по умолчанию:
wsl --set-default-version 2
- Обновите установленную Kali до WSL 2:
wsl --list --verbose
wsl --set-version kali-linux 2
Процесс может занять несколько минут — дождитесь завершения пересоздания виртуального диска.
Преимущества обновления через Microsoft Store
Версия WSL из Microsoft Store обновляется отдельно от Windows, что позволяет получать свежие функции и исправления быстрее, без привязки к циклу обновлений системы.
Установите обновление через Microsoft Store (поиск “Windows Subsystem for Linux”), затем перезагрузитесь. Вход в аккаунт Microsoft необязателен, запрос прав администратора — нормальное поведение.
Установка Kali в WSL — варианты
Варианты:
Через Microsoft Store (рекомендуется)
Найдите “Kali Linux” в Store, нажмите «Установить», затем «Запустить». Далее — регистрация пользователя.
Этот способ всегда предоставляет актуальный официальный образ. Минус — возможная недоступность Store в некоторых регионах.
Через PowerShell и AppxBundle
Для автоматизации развертывания:
Invoke-WebRequest -Uri https://aka.ms/wsl-kali-linux-new -OutFile .kali-linux.AppxBundle -UseBasicParsing -TimeoutSec 1800
Add-AppxPackage .kali-linux.AppxBundle
Подходит для корпоративных скриптов — система должна разрешать установку доверенных пакетов.
Через wsl --install
wsl --install --distribution kali-linux
Удобно, но на старых Windows 10 версии образ может быть устаревшим. Проверяйте версию после установки через grep VERSION= /etc/*release
Импорт rootfs-образа
Для собственного кастомного образа:
- Скопируйте файл
.tar.gzна компьютер. - Импортируйте:
wsl --import kali-wsl ./wsl-test ./kali-linux-rolling-wsl-rootfs-amd64.tar.gz
- Запустите дистрибутив:
wsl --distribution kali-wsl
Полный контроль над образом, но настройка пользователей и прав вручную.
Импорт AppxBundle
Если есть собственный AppxBundle — запускайте сопутствующий Install.ps1 для регистрации сертификата и установки. Без этого установщик отклонит пакет из-за неподписи.
Как запускать Kali Linux в WSL
- В командной строке:
kali(при наличии ярлыка) - Или
wsl --distribution kali-linux - Или просто
wsl, если Kali заданы как дистрибутив по умолчанию командойwsl --setdefault kali-linux - Через меню «Пуск»: ярлык “Kali Linux”
- В Windows Terminal (если установлен)
Первый запуск может занять 1–2 минуты: происходит первичная инициализация окружения, автоматический монтирование дисков и проверка сети.
Если что-то не работает: диагностика
Чтобы быстро идентифицировать проблему:
- Проверьте архитектуру: x64 или ARM64 (от неё зависит тип используемого ядра).
- Узнайте выпуск Windows: Home, Pro, N (некоторые редакции не содержат Hyper-V по умолчанию).
- Проверьте сборку через winver.
- Убедитесь, что в BIOS/UEFI включена аппаратная виртуализация (Intel VT-x / AMD-V).
- Проверьте статус VirtualMachinePlatform:
Get-WindowsOptionalFeature -Online | Where-Object {$_.FeatureName -eq "VirtualMachinePlatform"}
- Убедитесь в наличии установленного ядра WSL:
Get-WmiObject -Class Win32_Product | Where-Object {$_.Name -eq "Windows Subsystem for Linux Update"}
- Обновите WSL:
wsl --update
- Проверьте статус WSL:
wsl --status
wsl --version
- Если появляется код ошибки, сверяйте его с документацией Microsoft или на официальном форуме Kali.
- Не забывайте о необходимости перезагрузить систему после включения опциональных компонентов.
Решение ошибки WSL 0x80370114
Ошибка 0x80370114 чаще всего связана с проблемами виртуализации или некорректными параметрами в системе:
Основные проверки и решения:
1. Включение аппаратной виртуализации в BIOS/UEFI
- Перезагрузите компьютер, войдите в BIOS (обычно F2, Del или Esc).
- В разделе Advanced/Security включите Intel VT-x или AMD-V.
- Сохраните настройки и перезагрузите ПК.
2. Активируйте необходимые компоненты Windows
Вариант А — в PowerShell от имени администратора
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
wsl --set-default-version 2
Вариант Б — через интерфейс Windows:
- WIN+R →
optionalfeatures - Отметьте «Подсистема Windows для Linux», «Платформа виртуальных машин» и «Hyper-V» (если доступен), перезагрузите ПК
3. Обновите ядро WSL 2
- Для x64: wsl_update_x64.msi
- Для ARM64: wsl_update_arm64.msi
4. Отключите защиту от эксплойтов для vmcompute.exe
- Откройте «Безопасность Windows» → «Управление приложениями и браузером»
- «Защита от эксплойтов» → «Настройки программы»
- Найдите
C:WindowsSystem32vmcompute.exe - Отключите «Control Flow Guard»
- Перезапустите службу:
net stop vmcompute
net start vmcompute
5. Восстановление системных файлов
sfc /scannow
dism /online /cleanup-image /restorehealth
После завершения обязательно перезагрузите компьютер.
6. Временное отключение антивируса/Защитника Windows
- Откройте «Безопасность Windows» → «Защита от вирусов и угроз»
- «Управление настройками»
- Отключите «Защиту в реальном времени»
- Повторите попытку установки Kali
Проверка результата
Проверьте наличие дистрибутивов:
wsl --list --verbose
В списке должна появиться Kali или другой развернутый дистрибутив.
Если проблема не устранена
- Выполните:
wsl --unregister kali-linux - Переустановите из Microsoft Store
- Для диагностики попробуйте установить старую Ubuntu 20.04 — иногда работает стабильнее
Важно: любую настройку компонентов Windows завершайте обязательной перезагрузкой ПК!
Если устранить проблему не удалось, удалите дистрибутив (wsl --unregister kali-linux) и начните настройку с нуля — ваши данные в Windows останутся нетронуты.
#KaliLinux #WSL2 #WindowsSubsystem #CyberSecurity #PenetrationTesting #LinuxOnWindows #InfoSec