В данной статье произведем установку WSL. WSL - это подсистема Windows для Linux. Позволяет устанавливать дистрибутивы Linux в Windows и обращаться к ним при помощи терминала.

Предназначена в первую очередь для разработчиков, но может быть использована всеми желающими.

Преимущества WSL

Основными преимуществами wsl является то, что подсистема требует меньше ресурсов компьютера, чем полноценная виртуальная машина. Также еще одним преимуществом является общий доступ к файлам. К одному и тому же набору файлов можно получить доступ и в Windows и в дистрибутиве Linux.

Как узнать версию Windows

Для начала откроем powershell и следующей командой узнаем версию Windows:

winver

Требования к системе

Перед установкой WSL желательно полностью обновить систему и установить все обновления, если они есть. Также требуется Windows 10 версии 2004 и выше, то есть сборка 19041 и выше или Windows 11. У меня версия 22H2, сборка 19045. А значит системные требования соблюдены.

Установка WSL

Следующей командой запустим установку WSL:

wsl --install

У нас выйдет сообщение то что запрошенная операция требует повышения. Предоставляем права администратора выбрав да в каждом окне. Сначала устанавливается платформа и подсистема, далее происходит установка самой Ubuntu.

После установки необходимо перезапустить компьютер.

После перезапуска открывается командная строка где происходит установка Ubuntu:

Также на этом шаге может произойти ошибка виртуализации. Если это произошло, то необходимо включить виртуализацию в BIOS.

Решение ошибок

Большинство возможных ошибок и их решения собраны на этом сайте.

После установки нам предлагают назначить имя нашего пользователя, а также установить пароль:

По умолчанию устанавливается Ubuntu 22.04 - последняя на момент записи видео LTS версия:

Сценарии использования

Собственно систему установили. Что можно сделать? Например можно установить веб-сервер. У меня есть на сайте плейлист "установка Web сервера" или изучить основные команды терминала также есть плейлист "Основы терминала Linux".

Или например установить веб-сервер NGINX или установить Docker. Ну и множество других сценариев использования.

Запуск Ubuntu

Как же можно запустить нашу Ubuntu? Запустить ее можно из меню Пуск:

Получение доступа к файлам Linux

Также можно получить доступ к файлам системы. Для этого откроем проводник, слева выберем Linux - Ubuntu и перейдем в домашнюю папку пользователя:

И в ней создадим текстовый файл для проверки:

Теперь запустим нашу систему. Как мы видим наш файл создался:

Выведем содержимое файла на экран:

Подключение дисков Windows

Также в Ubuntu подключаются все диски из Windows. Например у меня есть диск C. Для того, чтобы получить доступ к данному диску необходимо перейти в папку mnt, куда и монтируются все диски:

Перейдем на диск C и увидим содержимое диска C:

Установка Терминала Windows

Запускать Linux дистрибутивы можно также при помощи Windows Терминала. Установим его:

Запустим его:

И увидим то, что нам доступна Ubuntu:

Доступные для установки дистрибутивы

Помимо Ubuntu доступны для установки и другие дистрибутивы. Следующей командой выведем список доступных для установки дистрибутивов:

wsl --list --online
Список доступных для установки в WSL дистрибутивов

Установка Debian

Например установим Debian. Для этого воспользуемся следующей командой

wsl --install -d Debian

Снова введём имя пользователя и пароль. Как мы видим наша система установилась:

И доступна для запуска. Для того, чтобы она появилась в терминале Windows необходимо его перезапустить.

Debian тоже используется последний на момент записи ролика версии 12:

WSL2

В новых версиях Windows по умолчанию используется WSL версии 2. Выведем список установленных дистрибутивов и их версии:

wsl -l -v

И увидим то, что используются вторые версии:

Установка WSL1

Если же необходимо установить первую версию, то следующей командой необходимо установить версию по умолчанию на первую:

wsl --set-default-version 1

Теперь если мы запустим установку какого-либо дистрибутива, то поставится WSL версии 1.

Установка Kali Linux

Например установим Kali Linux:

wsl --install -d kali-linux

Снова задаем имя пользователя, пароль. Выведем список установленных дистрибутивов:

wsl -l -v

И увидим то, что Kali Linux использует WSL версии 1:

Снова по умолчанию установим WSL версии 2:

wsl --set-default-version 2

Обновление WSL1 до WSL2

Если же необходимо обновить WSL версии 1 до WSL версии 2, то можно воспользоваться следующей командой:

wsl --set-version kali-linux 2

Перед обновлением необходимо создать резервную копию нужных файлов. Запустим данную команду и увидим то что выполняется преобразование:

Снова выведем список установленных дистрибутивов и увидим то, что наш Kali Linux обновился до WSL версии 2:

Дистрибутив для запуска команд

Также в списке дистрибутивов вы могли заметить звездочку напротив Ubuntu это означает то, что по умолчанию все используемые команды будут запускаться в Ubuntu. Например изменим используемый для команд по умолчанию дистрибутив на Debian:

wsl --setdefault Debian

И увидим то, что звездочка стоит напротив Debian:

Запустим Debian и создадим текстовый файл:

nano 3.txt

Теперь в PowerShell следующей командой выведем содержимое этого файла:

wsl cat ~/3.txt

Теперь снова вернем Ubuntu в качестве дистрибутива для выполнения команд:

wsl --setdefault Ubuntu

И еще раз запустим эту команду:

wsl cat ~/3.txt

И увидим то, что данного файла не существует:

Так можно выполнять команды, которые выполнятся в дистрибутиве установленном по умолчанию.

Обновление утилиты WSL

Для того, чтобы обновить утилиту WSL можно воспользоваться командой Update:

wsl --update

Как мы видим у нас используется последняя версия, соответственно обновление не требуется:

Получить информацию

Получить информацию можно командой статус:

wsl --status

Вывести версии

А узнать версию соответственно командой version:

wsl --version

Список доступных команд

Для того, чтобы узнать какие еще команды доступны воспользуемся ключом help:

wsl --help

Как мы видим тут доступно множество команд

Снова выведем список установленных дистрибутивов:

wsl -l

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

И например удалим Kali Linux. Для этого воспользуемся ключом unregister:

wsl --unregister kali-linux

Снова видим список дистрибутивов и увидим то, что Kali Linux пропал:

Экспорт и импорт дистрибутивов

Также дистрибутивы можно экспортировать и импортировать при помощи команд export и import соответственно.

wsl --export Debian c:/test/deb1.tar
wsl --import DebianCustom c:/test/DebianCustom c:/test/deb1.tar

Для того, чтобы установить какой-либо дистрибутив не находящийся в списке доступных для установки его необходимо импортировать при помощи tar файла. Tar архив с системой можно найти на некоторых сайтах дистрибутивов или сгенерировать при помощи Docker. Также можно создать свой собственный пользовательский дистрибутив Linux для использования с WSL.