Windows Subsystem for Linux (WSL).
Линукс, который всегда под рукой в Windows.

Установка WSL

На Windows 11 и Windows 10 версии 2004 и выше (сборка 19041 и выше): в терминале от админа запускаем wsl --install и перезагружаем компьютер.
Установка вручную на ранних версиях Windows: https://learn.microsoft.com/ru-ru/windows/wsl/install-manual

  • wsl --status - Дистрибутив по умолчанию и версия WSL
  • wsl --update - Обновление WSL до последней версии

Установка дистрибутивов

  • wsl --list --online - Показать список доступных дистрибутивов
  • wsl --install Ubuntu-26.04 - Установить дистрибутив Ubuntu 26.04
  • wsl --set-default Ubuntu-26.04 - Выбрать дистрибутив Ubuntu 26.04 как дистрибутив по умолчанию
  • wsl -u root - Войти в дистрибутив по умолчанию как root

Удаление дистрибутивов

  • wsl --terminate Ubuntu-26.04 - Завершить работу дистрибутива Ubuntu 26.04
  • wsl --shutdown Ubuntu-26.04 - Принудительно завершить работу дистрибутива Ubuntu 26.04
  • wsl --unregister Ubuntu-26.04 - Удалить дистрибутив Ubuntu 26.04

Доступ к файлам

Открывать файлы между системами теперь очень просто, никакой шары не надо.

Из Windows: В проводнике открыть \\wsl.localhost\Ubuntu\, любая папка в корне Ubuntu.
Из Linux: cd /mnt/c (Диск C ОС Windows)

Свой пользователь

Создадим пользователя. Добавим в sudo. Уберем парольный доступ с sudo (опционально). Дадим права на конфиг файл sudo.

sudo adduser lepkov
sudo usermod -aG sudo lepkov
echo 'lepkov ALL=(ALL) NOPASSWD:ALL' | sudo tee /etc/sudoers.d/lepkov
sudo chmod 440 /etc/sudoers.d/lepkov

В Ubuntu открываем файл nano /etc/wsl.conf и добавляем:

[user]
default=lepkov

Перезапустим Ubuntu 26 для проверки в PowerShell:

wsl --terminate Ubuntu-26.04
wsl -d Ubuntu-26.04

А теперь в Ubuntu смотрим какой пользователь активен:

whoami

Файлы .wslconfig и wsl.conf

Файл .wslconfig позволяет настроить глобальные параметры для всех WSL контейнеров, в том время как wsl.conf отдельно для каждого.

Для использования нужно создать эти файлы самостоятельно:
На Windows хосте: C:\Users\USERNAME\.wslconfig
Внутри дистрибутива WSL: /etc/wsl.conf

Пример .wslconfig

# https://learn.microsoft.com/en-us/windows/wsl/wsl-config

[wsl2]
memory=8GB
processors=6
networkingMode=nat # none, nat, bridged (deprecated), mirrored, and virtioproxy
firewall=true      # Setting this to true allows the Windows Firewall rules, as well as rules specific to Hyper-V traffic, to filter WSL network traffic
dnsTunneling=true  # Changes how DNS requests are proxied from WSL to Windows
localhostForwarding=true

[experimental]
autoMemoryReclaim=gradual

Пример wsl.conf

# https://learn.microsoft.com/en-us/windows/wsl/wsl-config
[boot]
systemd=true

[user]
default=lpkv

[network]
generateHosts=true
generateResolvConf=true

Ссылки

https://learn.microsoft.com/ru-ru/windows/wsl/install

https://learn.microsoft.com/en-us/windows/wsl/wsl-config

Поделиться