Поиск по сайту:

Что такое подсистема Windows для Linux (WSL) и как вы ее используете?


Подсистема Windows для Linux (WSL) — это инструмент, предоставляемый Microsoft для изначального запуска Linux в Windows. Он разработан, чтобы обеспечить бесперебойную работу, по сути предоставляя полную оболочку Linux, которая может взаимодействовать с вашей файловой системой Windows.

Не просто виртуальная машина

Давайте начнем с того, чем WSL не является — это не полноценный рабочий стол Linux, который вы можете получить, например, запустив Ubuntu в VirtualBox. Технически он использует виртуализацию из соображений производительности, но это сильно отличается от запуска полноценной виртуальной машины. Все это управляется за вас и просто предоставляет простую оболочку и среду для выполнения вашей работы и использования знакомых команд bash, таких как git, ssh, и всех других инструментов, которые приходят с выбранным дистрибутивом.

По сути, WSL позволяет вам установить полный дистрибутив Linux в виде приложения из магазина приложений. Вы можете просто загрузить Ubuntu (или дистрибутив по вашему выбору), установить его и сделать его доступным в виде приложения, которое вы можете запустить, или профиля в вашем терминале для работы вместе с CMD или Powershell.

Хотя самое простое объяснение состоит в том, что он «позволяет запускать bash в Windows», это больше, чем просто оболочка; вы можете устанавливать программы с помощью apt и настраивать его как обычный экземпляр Linux.

WSL предназначен для того, чтобы предоставить разработчикам и ветеранам bash опыт работы с оболочкой Linux, несмотря на то, что им приходится использовать Windows в качестве основной ОС. Он предлагает лучшее из обоих миров, позволяя запускать приложения Windows, такие как Visual Studio, вместе с оболочкой Linux для более удобного доступа к командной строке.

Microsoft предлагает две версии WSL: версию 1 и версию 2. WSL 2 использует виртуальную машину и использует полное ядро Linux, созданное и поставляемое с Windows. WSL 1 старше и, как правило, намного медленнее, но имеет лучшую производительность при работе с файловыми системами, например. доступ к файлам Windows из Linux и наоборот. Мы рекомендуем WSL 2 для большинства операций, так как он быстрее и лучше работает с такими инструментами, как Docker.

Настройка WSL

WSL — это необязательная функция Windows, поэтому ее необходимо включить. Откройте Powershell от имени администратора через меню «Пуск»:

Затем включите его:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

Вам нужно будет перезагрузить компьютер, чтобы изменения вступили в силу. После этого вы можете открыть Магазин Windows и выполнить поиск «WSL», который отобразит доступные дистрибутивы:

При первом запуске вам будет предложено указать имя пользователя и пароль для экземпляра. Они предназначены только для Linux и не должны совпадать с вашим паролем Windows.

Первый, который вы устанавливаете, должен быть установлен по умолчанию, но если вы устанавливаете несколько, вам нужно будет установить значение по умолчанию вручную. Вы можете управлять WSL с помощью команды wsl в Powershell. Например, список всех установленных на данный момент версий:

wsl --list

Затем вы можете установить дистрибутив WSL по умолчанию с помощью следующей команды, которую также можно использовать для переключения между WSL 1 и 2 ″.

wsl --set-version Ubuntu-20.04 2

Вы также можете установить предпочтительную версию WSL (1 против 2) для всех будущих установок:

wsl --set-default-version 2

Использование WSL

Вы можете открыть WSL несколькими способами. Самый простой способ — просто нажать Windows и ввести «wsl», после чего автоматически запустится wsl.exe и откроется дистрибутив по умолчанию.

Это всего лишь основное окно терминала; если вы используете новое терминальное приложение Microsoft, которое мы настоятельно рекомендуем, ваши версии WSL могут быть доступны через раскрывающееся меню (наряду с любыми профилями SSH, которые вы, возможно, настроили):

Если вы хотите настроить новый профиль, конфигурация для этого следующая:

{
    "guid": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}",
    "hidden": false,
    "name": "Ubuntu",
    "source": "Windows.Terminal.Wsl",
    "fontFace": "RobotoMono Nerd Font",
    "fontSize" : 10,
    "cursorColor" : "#FFFFFF",
    "cursorShape" : "bar",
    "fontFace" : "RobotoMono Nerd Font",
    "acrylicOpacity" : 0.75,
    "closeOnExit" : true,
    "colorScheme" : "Campbell"
},

Примечание о файловых системах

Ваша файловая система Linux смонтирована в /, как обычно. Windows находится в /mnt/c/ или в зависимости от того, какая буква диска используется по умолчанию (также монтируются дополнительные диски).

Поскольку все это виртуально, ваши файлы Linux, конечно же, хранятся на самом диске. Для WSL 1 они хранятся в простой папке. Однако WSL 2 меняет ситуацию и сохраняет файлы в виде образа виртуального жесткого диска или VHDX.

Вы можете найти эти образы по следующему пути, и хотя их можно смонтировать, пока дистрибутив не зарегистрирован, мы не рекомендуем возиться с ними со стороны Windows.

%USERPROFILE%AppDataLocalPackagesCanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgscLocalState