Windows Subsystem for Linux (WSL) — подсистема ОС Windows 10, позволяющая разработчикам, тестировщикам запускать нативные приложения Linux, писать скрипты, выполнять команды непосредственно из Windows. В обновлённой Windows 10 (2004) появилась 2я версия WSL, в которой используется полноценное ядро Linux с возможностью запуска приложений и контейнеров Docker, реализована высокая скорость загрузки, небольшой объем потребляемых ресурсов, управление в фоновом режиме, обновление ядра. Таким образом вы сможете запускать ELF64 программы, которые могут получать доступ к файловой системе Windows без использования сторонних порто (таких как Cygwin).
Образ ядра Linux (версия ядра 4.19) в Windows 10 представляет собой легкую виртуальную машину, для запуска которой не нужно ставить полноценную роль Hyper-V. Системные вызовы Linux транслируются на лету в вызовы Windows без использования эмулятора (в отличии от WSL1).
Изначально компонент WSL отключен. Чтобы его включить, вам необходимо зайти в Пуск -> Панель управления -> Программы и компоненты -> Включение и отключение компонентов Windows (Control PanelAll Control Panel ItemsPrograms and FeaturesTurn Windows features on or off), активировать галочку Подсистема Windows для Linux (Windows Subsystem for Linux), нажать кнопку ОК, и перезагрузить компьютер.
Вы можете включить компоненты WSL в Windows 10 с помощью dism:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
или PowerShell
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
В Windows Server 2004 Semi-Annual Channel (SAC) для установки компонента WSL используется командлет Install-WindowsFeature:
Install-WindowsFeature -Name Microsoft-Windows-Subsystem-Linux
После этого также необходимо перезагрузить компьютер.
В настройка BIOS/UEFI компьютера должна быть включена поддержка аппаратной виртуализации: Intel VT (Intel Virtualization Technology) или AMD-V.
Теперь вам нужно выполнить обновление WSL до версии 2. Для этого требуется зайти на сайт https://docs.microsoft.com/ru-ru/windows/wsl/wsl2-kernel, скачать файл wsl_update_x64.msi, установить его. По завершении увидите картинку
Чтобы сделать WSL2 архитектурой по умолчанию для новых дистрибутивов, в PowerShell выполните команду:
wsl --set-default-version 2
Далее вам необходимо открыть Microsoft Store, в поиске ввести слово “Linux”. В появившемся списке выберите нужный дистрибутив. Доступные Ubuntu, Debian, Kali Linux, Linux Cheatsheet, SUSE Linux Enterprise Server15, openSUSE Leap 15-1, Pengwin Enterprise, Fedora Remix for WSL или другие. В нашем примере мы будем использовать Ubuntu 20.04 LTS, нажмите кнопку Получить.
Если у вас отключен Windows Store или вы хотите установить дистрибутив WSL в Core редакции Windows Server, вы можете скачать дистрибутив Ubuntu с помощью PowerShell командлета Invoke-WebRequest:
Invoke-WebRequest https://aka.ms/wslubuntu2004 -OutFile ubuntu-2004.zip –UseBasicParsing
Распакуйте архив:
Expand-Archive -Path .ubuntu-2004.zip
Запустите установку образа Linux с помощью файла Ubuntu.exe.
Также вы можете скачать образ в виде appx файла и установить его с помощью командлета Add-AppxPackage.
После установки можно проверить используемую версию WSL с помощью команды
wsl --list –-verbose
Если у вашей среды Linux указана версия 1, нужно изменить ее на WSL2 командой:
wsl --set-version Ubuntu-20.04 2
Файл жёсткого диска с образом виртуальной машины ОС Linux Ubuntu 20.04 будет располагаться в профиле пользователя: C:Users234AppDataLocalPackagesCanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgscLocalState.
После установки дистрибутива в стартовом меню появляется ярлык на него. Для запуска Ubuntu зайдите в меню Пуск, нажмите на соответствующем ярлыке и получите в отдельном окне полноценную командную оболочку Bash. Запускать WSL можно и с помощью команды wsl. При первом запуске образа в командной строке Bash вам будет предложено создать пользователя и пароль (которые не должны совпадать с учётной записью Windows). Чтобы выполнять команды с правами root, необходимо использовать дополнительный ключ (префикс) sudo. В WSL есть общие команды для Bash и CMD, и тут нужно не забывать, что система Linux чувствительна к регистру.
Вы можете выполнить Linux-команды из CMD. Для этого необходимо вначале указать “WSL”. Например, для просмотра списка файлов и папок в каталоге Windows, выполните:
wsl
ls /mnt
ls/mnt/c
dir | wsl grep Sa
wsl ls ‑la > 123.txt
wsl ls ‑la /proc/cpuinfo
wsl ls ‑la “/mnt/c/Program Files”
Также вы можете открыть проводник командой explorer.exe, калькулятор – calc.exe, блокнот – notepad.exe, paint – mspaint.exe, календарь – cal, погоду – curl wttr.in
Ещё один пример взаимосвязи 2х систем – вы можете открыть в Windows файл из WSL-дистрибутива по сетевому пути. Для этого в CMD наберите путь к файлу:
notepad \wsl$Ubuntu-20.04home1122.txt
Из окна консоли вы можете обновить список пакетов в Ubuntu с помощью команд:
sudo apt-get update
sudo apt-get upgrade
После обновления Ubuntu папка …/LocalState будет занимать 1.5 Гб.
Из командной строки Linux можно не только просмотреть Windows-файлы и каталоги, но и получить к ним доступ. Чтобы удобнее копировать файлы, просматривать директории и их содержимое, установите файловый менеджер Midnight Commander с помощью команды
sudo apt-get install mc
Вы можете запустить Midnight Commander как в командной оболочке Bash, так и внутри CMD. На скриншоте ниже показано, что в двух панелях MC показывается список файлов с обеих ОС.
Можно отобрахить сетевые настройки (IP адрес) IP-адрес Linux-системы:
ip addr | grep eth0
В WSL не предусмотрена работа приложений с графическим интерфейсом. Тем не менее вы можете попробовать их установить и использовать. Чтобы запускать графические приложения в Linux, нужно скачать и установить в Windows программу VcXsrv Windows X Server (https://sourceforge.net/projects/vcxsrv/).
С помощью пакетного менеджера apt-get установим несколько графических программ: например, браузер, текстовый редактор или что-то ещё:
sudo apt-get install gedit
sudo apt-get install firefox
sudo apt-get install x11-app
Затем создайте файл в директории root:
cd /~
vim .bash_login
впишите строку
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0
сохраните запись
Esc -> :wr -> :q
Теперь можете запустить графические программы Linux через WSL командами:
firefox
или
gedit
Вы можете установить в Windows 10 несколько дистрибутивов Linux и запускать одновременно в разных окнах WSL. Вывести весь перечень установленных дистрибутивов можете с помощью команды:
wsl --list –all
чтобы завершить работу всех запущенных дистрибутивов и ядра WSL 2, выполните команду:
wsl --shutdown
WSL, подсистема Windows для Linux, не работает у пользователей сразу после обновления до Windows 11. По словам пользователей, происходит сбой при попытке запустить ее.
Мы изучили проблему и обнаружили, что эта проблема может быть вызвана рядом причин:
- WSL отключен — функция WSL должна быть включена в диалоговом окне функций Windows, чтобы вы могли ее использовать. Бывают случаи, когда обновление автоматически отключает эту функцию, что приводит к возникновению проблемы.
- Виртуальная машина отключена — как и WSL, функция виртуальной машины также должна быть включена в системе, чтобы вы могли переключиться на другую ОС в Windows. Если эта функция отключена, вы можете включить ее вручную, чтобы решить проблему.
- Поврежденная установка приложения Linux — установочный файл приложения Linux (Ubuntu) может быть поврежден или содержит ошибки, что не позволяет использовать WSL. В этом случае вы можете восстановить приложение или переустановить его, чтобы решить проблему.
- Вредоносное ПО — ваша система Windows может иметь дело с ошибкой повреждения или вредоносным ПО, из-за чего некоторые функции и приложения не работают. Если этот сценарий применим, вы можете запустить сканирование на наличие вредоносных программ, чтобы определить проблему и решить ее.
- Неисправное обновление. Если вы столкнулись с ошибкой после установки обновления системы, есть вероятность, что виновником является ошибочное обновление. К счастью, Windows предлагает способ удаления обновлений, поэтому вы можете удалить обновление из своей системы и посмотреть, имеет ли это какое-то значение.
Теперь, когда мы знаем о потенциальных причинах проблемы, давайте рассмотрим методы устранения неполадок, которые сработали для других затронутых пользователей. Надеюсь, они также помогут вам решить проблему навсегда. Однако, прежде чем приступить к методам, убедитесь, что вы вошли в систему как администратор.
Давайте начнем с наиболее эффективного решения в случаях ошибок, подобных этой.
В большинстве случаев пользователи не могли использовать WSL, потому что эта функция автоматически отключалась при обновлении до Windows 11. Решение в этом случае простое, так как все, что вам нужно сделать, это снова включить эту функцию вручную.
Вот как вы можете это сделать:
- Запустите поиск Windows через панель задач и введите «Включить или отключить функции Windows».
- Нажмите Открыть из списка доступных вариантов.
- В следующем диалоговом окне найдите подсистему Windows для Linux и установите флажок, связанный с ней.
Включить подсистему Windows для Linux - Нажмите OK, чтобы сохранить изменения.
Кроме того, вы также можете использовать Windows Powershell для внесения этих изменений. Если шаги, упомянутые выше, не сработали для вас, выполните следующие действия:
- Введите Windows Powershell в области поиска на панели задач и нажмите «Запуск от имени администратора».
- В следующем окне введите команду, указанную ниже, и нажмите Enter, чтобы выполнить ее.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-LinuxВключить подсистему Windows для Linux - После выполнения команды перезагрузите компьютер. После перезагрузки функция должна быть включена.
Если функция была отключена, ее включение должно решить проблему. Однако, если эта функция уже была включена, перейдите к следующему способу устранения неполадок ниже.
2. Включить виртуальную машину в функциях Windows
Чтобы любая из подсистем работала в Windows, виртуальная машина в вашей системе должна работать правильно. Виртуальные машины используются для одновременного запуска нескольких операционных систем на одном оборудовании. Если бы у нас не было виртуализации, нам потребовались бы два отдельных физических устройства для запуска Windows и Linux.
Если функция WSL уже включена в системе, вам нужно проверить, включена ли виртуальная машина. Шаги для этого очень похожи на те, которые мы перечислили выше:
- Введите Включение или отключение компонентов Windows в области поиска на панели задач и нажмите Открыть.
- Теперь найдите платформу виртуальной машины в следующем диалоговом окне и установите флажок, связанный с ней, чтобы включить ее.
Включить платформу виртуальной машины - Пока вы это делаете, мы также рекомендуем включить Hyper-V в том же окне. Hyper-V помогает создать в системе виртуальную среду.
После этого закройте диалоговое окно функций Windows и проверьте, можете ли вы теперь без проблем использовать WSL.
3. Используйте Microsoft Store для запуска WSL
Возможно, вы также не сможете использовать WSL из-за временного сбоя в установленном приложении. В этом случае вы можете попробовать запустить приложение из Магазина Microsoft, а не открывать его напрямую.
Это может показаться слишком простым для работы, но, поскольку это сработало для нескольких других пользователей, мы рекомендуем вам попробовать.
Вот что вам нужно сделать:
- Запустите Microsoft Store и перейдите в раздел «Моя библиотека» в левом нижнем углу.
Нажмите на значок библиотеки - В списке доступных приложений найдите приложение дистрибутива Linux и запустите его.
Если вы по-прежнему не можете запустить приложение, перейдите к следующему способу ниже.
4. Восстановите или переустановите приложение дистрибутива Linux.
Ваше приложение дистрибутива Linux может иметь дело с поврежденной ошибкой или просто может быть устаревшим, что мешает вам использовать его должным образом.
Чтобы проверить, не в этом ли проблема, вы можете сначала попробовать восстановить приложение и посмотреть, имеет ли это какое-то значение. Если ошибка не устранена, вы можете удалить приложение и переустановить его с нуля. Это устранит любые проблемы с повреждением в приложении, которые могут быть причиной проблемы.
Чтобы продолжить, выполните следующие действия:
- Нажмите Win + I, чтобы открыть приложение «Настройки».
- Выберите Приложения на левой панели.
- Нажмите «Приложения и функции» в правой части окна.
Нажмите «Приложения и функции» на правой панели. - В следующем окне прокрутите вниз, чтобы найти приложение дистрибутива Linux.
- Нажмите на три точки, связанные с ним, и выберите «Дополнительные параметры».
Нажмите Дополнительные параметры - Затем перейдите в раздел «Сброс» и нажмите там кнопку «Восстановить».
Нажмите на кнопку Восстановить - Следуйте инструкциям на экране, чтобы продолжить, и дождитесь завершения действия.
После завершения процесса проверьте, можете ли вы сейчас использовать WSL. Если нет, выполните следующие действия, чтобы удалить приложение:
- Повторите шаги 1-4 еще раз.
- Нажмите на три точки, связанные с приложением, и выберите «Удалить» в контекстном меню.
- Следуйте инструкциям на экране, чтобы продолжить.
После удаления приложения переустановите последнюю версию и проверьте, устраняет ли это проблему.
5. Удалить обновления
Если вы начали сталкиваться с проблемой сразу после установки ожидающего обновления системы, есть большая вероятность, что обновление было ошибочным. Пользователи Windows нередко сталкиваются с проблемами из-за поврежденных обновлений.
Лучший способ решить эту проблему — удалить обновление через панель управления.
Вот как вы можете это сделать:
- Введите «Панель управления» в поиске Windows и нажмите «Открыть».
- Выберите Просмотр установленных обновлений.
Просмотр установленных обновлений - В следующем окне вы должны увидеть список всех установленных обновлений в Windows. Щелкните правой кнопкой мыши проблемный и выберите «Удалить».
Нажмите кнопку «Удалить».
6. Запустите сканирование на наличие вредоносных программ
Наконец, последний метод в нашем списке — сканирование на наличие вредоносных программ.
Ваша система может иметь дело с вирусом или вредоносным ПО, которое вызывает сбои в работе определенных компонентов и функций. В такой ситуации сканирование вредоносных программ Защитником Windows является наиболее эффективным решением.
Вот как вы можете запустить полное сканирование системы на наличие вредоносных программ с помощью Защитника:
- Введите «Безопасность Windows» в поиске Windows и нажмите «Открыть».
- Выберите Защита от вирусов и угроз на левой панели.
Доступ к настройкам защиты от вирусов и угроз - Переместитесь в правую часть окна и щелкните гиперссылку Параметры сканирования.
Нажмите на параметры сканирования - Нажмите «Полное сканирование» > «Сканировать сейчас».
Выполнить сканирование
Теперь дождитесь завершения сканирования и после его завершения попробуйте снова использовать WSL.
Вы можете столкнуться с ошибкой сбоя выполнения сервера в WSL в одном или нескольких экземплярах вашей системы Windows 11 или Windows 10; в том числе когда вы пытаетесь запустить дистрибутив Linux, когда вы пытаетесь запустить команду bash в этой среде или когда вы пытаетесь обновить/установить WSL или обновить WSL 1 до WSL 2. В этом посте представлены наиболее подходящие исправления этой ошибки в все случаи. Имейте в виду, что устранение ошибки может зависеть от сценария вашей среды.
Если В WSL произошла ошибка сбоя выполнения сервера. среды на вашем компьютере с Windows 11/10, вы можете попробовать наши рекомендуемые ниже решения в произвольном порядке и посмотреть, поможет ли это решить проблему.
- Начальный контрольный список
- Отключить и снова включить WSL
- Отключить платформу виртуальной машины
- Сбросить Windows 11/10
Давайте взглянем на описание процесса, связанного с каждым из перечисленных решений.
1]Начальный контрольный список
Прежде чем попробовать приведенные ниже решения, вы можете сделать следующее и после каждой задачи посмотреть, сможете ли вы выполнить без проблем начальную задачу, которая выдавала ошибку в выделении:
- Перезапустите службу LxssManager. LxssManager — это служба диспетчера сеансов пользовательского режима, которая запускает новый экземпляр WSL с собственными двоичными файлами ELF. Если эта служба остановлена или отключена, эти двоичные файлы больше не будут работать. Чтобы перезапустить службу LxssManager, следуйте инструкциям в сообщении WslRegisterDistribution не удалось с ошибкой: 0x800700b7 или 0x80080005.
- Перезагрузите ПК. Если перезапуск службы LxssManager застрял на этапе «Остановка» или действие завершено, но проблема не устранена, вы можете просто перезагрузить систему вообще.
- Обновите Виндовс. Если Windows не обновлена в вашей системе, вероятно, некоторые функции или возможности не будут работать должным образом. Итак, проверьте наличие обновлений и установите все доступные биты на свое устройство с Windows 11/10 и посмотрите, не появится ли ошибка снова. С другой стороны, если ошибка возникла после недавнего обновления Windows, вы можете выполнить восстановление системы или удалить обновление, но если вы предпочитаете выполнять любую задачу в крайнем случае, вы можете перейти к решениям, приведенным ниже.
2]Отключить и снова включить WSL
Если вы столкнулись с Ошибка выполнения сервера в WSL на вашем компьютере с Windows 11/10, вы можете устранить ошибку WSL, отключив и повторно включив подсистему Windows для Linux на вашем устройстве.
Чтобы отключить и снова включить WSL, достаточно просто включить или выключить эту функцию в апплете дополнительных функций Windows на панели управления или запустить командлет PowerShell.
Чтобы включить подсистему Windows для Linux с помощью Включение или отключение функций Windows диалоговое окно, вам нужно найти Включение или отключение компонентов Windows в поле поиска Windows.
В заполненном списке отметьте опцию для Подсистема Windows для Linux. Выберите ОК. Он найдет и установит некоторые необходимые системные файлы и попросит вас перезагрузить компьютер. После перезагрузки компьютера ваш дистрибутив Linux будет работать без проблем.
Либо откройте Windows PowerShell с правами администратора. Выполните следующую команду, чтобы включить функцию подсистемы Windows для Linux:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Он начнет поиск и установку некоторых необходимых системных файлов.
При появлении запроса вам нужно ввести Y, чтобы перезагрузка твой компьютер.
Он установит все необходимые системные файлы, и теперь ваш дистрибутив Linux обычно работает.
Обязательно перезагрузите ПК после отключения, и еще раз перезагрузите после включения.
Однако это решение может быть не идеальным, если ошибка возникает несколько раз, как сообщают некоторые затронутые пользователи ПК. В этом случае вы можете попробовать любое другое решение в этом посте.
3]Отключить платформу виртуальной машины
Это решение требует, чтобы вы отключили платформу виртуальной машины, а не только отключили Hyper-V на вашем компьютере с Windows 11/10. Для выполнения этой задачи выполните следующие действия:
- Нажмите клавишу Windows + X, чтобы открыть меню опытного пользователя.
- Нажмите A на клавиатуре, чтобы запустить PowerShell в режиме администратора/с повышенными правами.
- В консоли PowerShell скопируйте и вставьте приведенную ниже команду и нажмите Enter:
$ dism.exe/online/disable-feature/featurename:VirtualMachinePlatform/norestart $ dism.exe/online/disable-feature/featurename:Microsoft-Hyper-V/norestart
- Выйдите из PowerShell после выполнения команды.
- Перезапустить компьютер.
4]Сбросить Windows 11/10
Если до сих пор ничего не сработало, возможно, вы имеете дело с серьезным повреждением системы, которое, например, нельзя устранить обычными методами; Сканирование SFC/DISM. В этом случае, чтобы увидеть, будет ли проблема устранена, вы можете сбросить Windows 11/10 с возможностью сохранить свои личные файлы. После сброса вы можете заново настроить WSL на своем устройстве.
В маловероятном случае, если рассматриваемая проблема сохраняется после процедуры сброса, вы можете задать вопрос на GitHub.com по вопросам, связанным с WSL.
Надеюсь, этот пост поможет вам!
Сообщение по теме: Ошибка выполнения Windows Backup Server (0x80080005)
Почему я продолжаю получать сообщения о сбое выполнения сервера?
Ошибка Windows Media Player Ошибка выполнения сервера может быть вызвана повреждением системных файлов Windows. Эта ошибка также может возникнуть, если по какой-либо причине сетевая служба проигрывателя Windows Media остановлена или возникла проблема с вашей учетной записью пользователя.
Почему мой WSL не работает?
Если WSL не работает на вашем ПК с Windows 11/10, это может быть связано с рядом причин, включая устаревшую ОС или поврежденные системные файлы. Как правило, вы можете обновить свою версию Windows. Если проблема не устранена и вам нужен доступ к WSL, попробуйте выполнить обновление на месте, переустановив Windows с помощью установочного носителя и выбрав Сохранить все чтобы обеспечить сохранность ваших приложений и файлов.
Связанный: Ошибка выполнения сервера Explorer.exe
WSL быстрее, чем виртуальная машина?
Кроме того, гораздо быстрее запустить терминал WSL, чем запустить полноценную виртуальную машину. WSL также гораздо полнее интегрируется в Windows, чем обычная виртуальная машина в VirtualBox. Хотя есть способы интегрировать рабочий стол Windows и виртуальную машину Linux в VirtualBox, для правильной работы может потребоваться некоторое время. WSL 2 работает как виртуальная машина Hyper-V.
- Remove From My Forums
-
Question
-
$ Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Enable-WindowsOptionalFeature : Set current directory to C:UsersJack failed:Access to the path 'C:WINDOWSLogsDISM' is denied. At line:1 char:1 + Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows- ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (Microsoft.Dism.Commands.BaseDismObject:BaseDismObject) [Enable-WindowsOpt ionalFeature], Exception + FullyQualifiedErrorId : BaseCmdLet,Microsoft.Dism.Commands.EnableWindowsOptionalFeatureCommand
I tried update the windows 10 but , did not work for me.
- Remove From My Forums
-
Question
-
$ Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Enable-WindowsOptionalFeature : Set current directory to C:UsersJack failed:Access to the path 'C:WINDOWSLogsDISM' is denied. At line:1 char:1 + Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows- ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (Microsoft.Dism.Commands.BaseDismObject:BaseDismObject) [Enable-WindowsOpt ionalFeature], Exception + FullyQualifiedErrorId : BaseCmdLet,Microsoft.Dism.Commands.EnableWindowsOptionalFeatureCommand
I tried update the windows 10 but , did not work for me.
@JenusL @sunilmut So I’ve been trying to install WSL after I updated my network card drivers, but I still get the error of not being able to install it, and Windows rolling back. The log from the event viewer has this at 7:45:43 AM
Update Microsoft-Windows-Subsystem-Linux of package Microsoft-Windows-Lxss-Optional-Package failed to be turned on. Status: 0x800f0922.
After checking the CBS.log for more info, I found this error at around the same time:
2018-03-06 07:45:25, Error [0x01805b] CSI 0000004d (F) Failed execution of queue item Installer: Network Drivers ({a111f280-5923-47c0-9a68-d0bafb577901}) with HRESULT HRESULT_FROM_WIN32(ERROR_ACCESS_DENIED). Failure will not be ignored: A rollback will be initiated after all the operations in the installer queue are completed; installer is reliable[gle=0x80004005]
Which is pretty much the same error you got. However, I don’t have any VPN installed like you do, so I don’t know what could be causing my error. I definitely don’t have the WSL folder anywhere either.
UPDATE: I looked down further in the CBS.log, and found maybe more specifics about the error:
`2018-03-06 07:45:35, Error CSI 00000070 (F) Installer: Network Drivers Binary Name: NetSetupAI.dll ErrorCode: 80070005 Phase: 31 Mode: Delta Component: NONE[gle=0x80004005]
2018-03-06 07:45:35, Info CSI 00000071 ==Error Summary End==
2018-03-06 07:45:35, Error CBS Startup: Failed to process advanced operation queue, startupPhase: 0. A rollback transaction will be created. [HRESULT = 0x800f0922 — CBS_E_INSTALLERS_FAILED]`
After that, the computer starts rolling back the transactions
Содержание
- Вариант 1: Установка в полуавтоматическом режиме
- Шаг 1: Выбор доступных дистрибутивов Linux
- Шаг 2: Запуск инсталляции
- Вариант 2: Установка в ручном режиме
- Шаг 1: Предварительная настройка системы
- Шаг 2: Загрузка и настройка ядра WSL2
- Шаг 3: Выбор и инсталляция дистрибутива Linux
- Вопросы и ответы
Вариант 1: Установка в полуавтоматическом режиме
Установка WSL в операционной системе Windows осуществляется посредством выполнения специальных команд в консоли. Для этого потребуется предварительно определиться с дистрибутивом Linux, а затем запустить процесс его инсталляции.
Важно! Приведенная ниже инструкция может быть выполнена только при условии использования Windows 10 версии 2004 (19041) и более новых. Узнать эту информацию можно в свойствах системы. Этой теме на нашем сайте посвящена отдельная статья, при необходимости ознакомьтесь с ней, перейдя по ссылке ниже.
Подробнее: Как узнать версию Windows 10
Шаг 1: Выбор доступных дистрибутивов Linux
Каждому пользователю актуальной версии Windows 10 предоставляется возможность вручную выбрать дистрибутив Linux, который будет использоваться в WSL2. Для просмотра списка доступных систем необходимо ввести специальную команду в консоль, поэтому предварительно запустите «Командную строку» с правами администратора. Сделать это можно множеством способов, например посредством поискового запроса, как показано на изображении ниже.
Читайте также: Как открыть «Командную строку» от имени администратора в Windows 10
Примечание! По умолчанию всегда выбрана последняя версия дистрибутива Ubuntu. Если именно его вы и хотите установить, то пропустите этот шаг и переходите сразу ко второму.
После того как окно консоли будет открыто, впишите или вставьте в него одну из нижеприведенных команд, после чего нажмите клавишу Enter:
wsl --list --online
или wsl -l -o
В результатах выдачи будет приведен список всех доступных дистрибутивов Linux. На этом этапе вам необходимо запомнить или скопировать в буфер обмена название, которое находится в столбце «NAME».
Обратите внимание! Если в списке доступных дистрибутивов нет желаемого, его можно импортировать в WSL2 посредством файла TAR или APPX. При необходимости есть возможность создать собственный дистрибутив на базе ядра Linux. Эти процессы описываются в официальной документации Microsoft, при необходимости ознакомиться с ними можно, воспользовавшись ссылками ниже.
Импорт любого дистрибутива Linux для использования с WSL
Создание пользовательского дистрибутива Linux для WSL
Шаг 2: Запуск инсталляции
После того как версия дистрибутива Linux для WSL2 была выбрана, можно переходить непосредственно к ее инсталляции. Делается это тоже в «Командной строке», для чего нужно воспользоваться приведенной ниже командой. Не забудьте после ее ввода нажать клавишу Enter.
wsl --install -d <НазваниеДистрибутива>
Примечание! Если вы хотите установить версию по умолчанию, тогда нет необходимости прописывать название дистрибутива вручную, можно воспользоваться следующей командой:
wsl —install
Сразу после этого начнется процесс установки платформы виртуальной машины, затем инсталлируется «Подсистема Windows для Linux», а в завершение будет выполнена загрузка ядра WSL2.
После всех этих процедур можно будет воспользоваться WSL2 для вызова подсистемы Linux. Для этого достаточно будет запустить установленный дистрибутив через меню «Пуск».
Вариант 2: Установка в ручном режиме
Если версия вашей операционной системы Windows 10 ниже 2004 (19041), тогда воспользоваться вышеприведенной инструкцией не получится и большинство действий придется выполнять вручную.
Шаг 1: Предварительная настройка системы
Первостепенно необходимо проверить, поддерживает ли установленная версия операционной системы обновление WSL до второй версии. Сделать это можно посредством вызова окна «Windows: сведения». Для этого нажмите сочетание горячих клавиш Win + R, впишите в поле запроса команду winver
и нажмите клавишу Enter.
Появится соответствующее окно, в котором будет указана версия операционной системы и ее сборка. Убедитесь, что она выше 1903 (18362). Если это так, можете продолжить выполнение этой инструкции, в противном случае попробуйте прежде обновить Windows 10 до актуальной версии.
Читайте также: Как обновить Windows 10 до последней версии
Важно! Если ваш компьютер работает на процессоре с архитектурой ARM64, этот способ установки WSL2 не подойдет. Обновитесь до последней версии Windows 10 и воспользуйтесь ранее предоставляемой инструкцией.
После того как вы удостоверились в актуальности версии операционной системы, необходимо произвести ее предварительную настройку, а именно — включить «Подсистему Windows для Linux» и компонент виртуальных машин. Делается это в оболочке PowerShell, поэтому предварительно запустите ее с правами администратора. Проще всего сделать это через контекстное меню кнопки «Пуск», как показано на изображении ниже. Но это не единственный способ.
Подробнее: Как открыть PowerShell в Windows 10
Теперь необходимо включить компонент «Подсистема Windows для Linux». Для этого скопируйте и вставьте в окно консоли PowerShell следующую команду, после чего нажмите Enter:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Ожидайте завершения процедуры, когда на экране появится приглашение к вводу новой команды. После этого включите компонент виртуальных машин. Это делается посредством нижепредставленной команды:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Важно! Если результатом ее выполнения является ошибка, потребуется предварительно включить виртуализацию. Делается это через BIOS, но сначала следует проверить статус этой функции в операционной системе. На нашем сайте есть отдельные статьи, посвященные этой теме.
Подробнее:
Как проверить, включена ли виртуализация в Windows 10
Как включить виртуализацию в BIOS
После того как компонент виртуальных машин будет установлен, потребуется перезагрузить компьютер.
Шаг 2: Загрузка и настройка ядра WSL2
Следующим шагом будет загрузка и установка ядра второй версии WSL, но изначально нужно определить архитектуру процессора, на которой работает операционная система. Для этого вызовите окно «Командной строки», в котором выполните следующую команду:
systeminfo | find "Тип системы"
В результатах выдачи будет указана архитектура процессора. Если упоминается x64, скачайте пакет обновления ядра Linux в WSL2 для 64-разрядных компьютеров на базе процессора x86. Если в результатах выдачи есть упоминание ARM64, загрузите пакет обновлений по этой ссылке. Сохраните файл в любое удобное место, после чего запустите его, дважды кликнув по названию. Далее следуйте инструкции инсталлятора, пока не будет произведена установка.
Теперь необходимо выбрать WSL2 версией по умолчанию, чтобы при установке дистрибутивов Linux они инсталлировались в этом окружении. Для этого достаточно в окне PowerShell выполнить представленную ниже команду:
wsl --set-default-version 2
Шаг 3: Выбор и инсталляция дистрибутива Linux
Как только все необходимые компоненты будут установлены, можно переходить к выбору дистрибутива Linux для инсталляции в окружении WSL2. В отличие от первого способа, представленного в этой статье, все действия будут выполняться не в «Командной строке», а в Microsoft Store. Для удобства ниже приведен список доступных систем со ссылками на них:
- Ubuntu 18.04 LTS
- Ubuntu 20.04 LTS
- Ubuntu 22.04 LTS
- openSUSE Leap 15.1
- SUSE Linux Enterprise Server 12 SP5
- SUSE Linux Enterprise Server 15 SP1
- Kali Linux
- Debian GNU/Linux
- Fedora Remix for WSL
- Pengwin
- Pengwin Enterprise
- Alpine WSL
- Raft (пробная версия)
Воспользуйтесь нужной ссылкой, чтобы перейти в магазин приложений от Microsoft. Находясь на странице нужного дистрибутива, щелкните по кнопке «Получить», расположенной рядом с его названием.
Дождитесь завершения загрузки, после чего кликните по появившейся кнопке «Открыть». Запустится окно консоли, в котором будет предложено подождать несколько минут, пока идет распаковка дистрибутива. В дальнейшем процедура инициализации ядра Linux будет занимать считанные секунды.
Примечание! Представленный выше список дистрибутивов взят с официального сайта Microsoft и может со временем измениться. В случае необходимости рекомендуем обратиться за справкой непосредственно к статье-первоисточнику.
Ubuntu is a Linux based distribution that is totally free and open source. The program also provides support for Windows 10 and is used by a lot of people for software developing purposes. However, quite recently a lot of reports have been coming in where users are unable to use it and the Error “The WSL Optional Component is not Enabled. Please Enable it and Try Again” is seen while trying to do so.
What Causes “The WSL Optional Component is Not Enabled. Please Enable it and Try Again” Error on Ubuntu?
After receiving numerous reports from multiple users, we decided to investigate the issue and devised a set of solutions to fix eradicate it completely. Also, we looked into the reason due to which this issue is triggered and listed it as follows.
- Disabled Component: As the error message indicates, the error is triggered if the Windows Subsystem for Linux is disabled. Windows Subsystem for Linux is a very important feature and needs to be enabled in order for Ubuntu to work properly on Windows 10 because it provides all the important configurations and distributions needed for Ubuntu to run correctly.
Now that you have a basic understanding of the nature of the problem, we will move on towards the solutions. Make sure to implement the solutions carefully, in order to avoid conflict.
Method 1: Turning WSL ON Through Control Panel
There are a couple of methods which we can apply to rectify the problem. However, in this step, we will be taking the easiest route and enable WSL through the Control Panel. For that:
- Press “Windows” + “R” keys simultaneously to open the Run prompt.
- Type in “Control Panel” and press “Shift” + “Ctrl” + “Enter” to provide administrative privileges.
Typing in “Control Panel” and pressing “Shift” + “Ctrl” + “Enter” to provide administrative privileges - Click on the “View By” option and select “Small Icons“.
Clicking on “View By” and selecting “Small Icons” - Click on the “Programs and Features” option.
- Select the “Turn Windows Features On or OFF” option in the left pane.
- Scroll down and select “Windows Subsystem for Linux“.
Checking the “Windows Subsystem for Linux” option” - Click on “OK” to enable the feature.
- Check to see if the issue persists.
Solution 2: Turning WSL ON Through PowerShell
We can also enable the WSL Feature by using the Command Prompt. Therefore, in this step, we will be implementing a command in the command prompt to enable the WSL Feature. For that:
- Press “Windows” + “R” keys simultaneously to open the Run prompt.
- Type in “Powershell” and press “Shift“+ “Ctrl” + “Enter” to provide administrative privileges.
- Type in the following command and press “Enter“.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
- Wait for the command to be executed and check to see if the issue persists.
Enabling WSL
Kevin Arrows
Kevin is a dynamic and self-motivated information technology professional, with a Thorough knowledge of all facets pertaining to network infrastructure design, implementation and administration. Superior record of delivering simultaneous large-scale mission critical projects on time and under budget.
Back to top button