Sorry, you have been blocked
This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.
What can I do to resolve this?
You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.
Cloudflare Ray ID: 7458065f4f6577b9 • Your IP: Click to reveal 88.135.219.175 • Performance & security by Cloudflare
Fix: WSLRegisterDistribution Failed with Error: 0x8007019e
You may encounter the WSLRegisterDistribution Failed error due to the disabled subsystem for the Linux. Moreover, a corrupt installation of the Linux distro application may also cause the error.
The affected user gets the error when he tries to launch the Linux terminal with the following message:
WslRegisterDistribution failed with error 0x8007019e
Before proceeding with the troubleshooting process, try to launch the Linux console using the Windows Search bar (located on the Taskbar of your system), not by the bash.
Solution 1: Enable/Disable Subsystem for Linux
Windows has a feature “Subsystem for Linux” which is essential for the operation of your Linux distribution. If the said option is not enabled, then you may encounter the error at hand. In this case, enabling the option of the subsystem for Linux may solve the problem.
- On the Taskbar, click on the Windows Search bar and type Control Panel. Then in the results shown, click on Control Panel.
Open Control Panel
- Now click on Uninstall a Program.
Click Uninstall a Program in Control Panel
- Then, in the left pane of the window, click on Turn Windows Feature on or off.
Turn Windows Feature on or off
- Now, scroll down till the end and enable Windows Subsystem for Linux Option.
Enable Windows Subsystem For Linux
- Then restart your system and then check if the system is clear of the error.
- If the option is already enabled at step 4, then disable it and restart your system.
- Upon restart, enable the Subsystem option and then restart your system.
- Upon restart, check if the Linux distro is working fine.
Solution 2: Restart the LxssManager Service
Linux instance life cycle service i.e. LxssManager operates in the background to keep things under control. You may encounter the error at hand if the said service is stuck in operation or is in an error state. In this scenario, restarting the service may clear the glitch and thus solve the problem.
- Press Windows + R keys to bring out the Run command box.
- Now type Services.msc and then click on OK.
Type “services.msc” into the Run dialog and press Enter
- Now find and restart the LxssManager service.
Restart Lxss Manager Service
- Then relaunch the terminal to check if it is clear of the error.
Solution 3: Launch the Subsystem from Microsoft Store
Linux distribution has a bug, in which, sometimes the terminal starts to show the error at hand when launched from the shortcut/command prompt. This glitch can be cleared by launching the application directly from the Microsoft Store interface.
- On the Taskbar of your system, click on Windows Search box and type Microsoft Store. Then in the list of results shown, click on Microsoft Store.
Open Microsoft Store
- Then, in the top right corner of the window, click on the horizontal Ellipses and then click on My Library.
Open My Library in Microsoft Store
- Now in the left pane of the window, click on Installed.
Open the Installed Tab in My Library
- Then in the right pane of the window, click on your Linux distro App.
- Now click on the Launch button and then check if the issue has resolved.
Launch the Linux Console Application from the Microsoft Store
Solution 4: Update the Linux Terminal by Using Command Prompt
You may encounter the error under discussion if you are using an older version of the distribution. In this context, updating the application may solve the issue. You can use the Command Prompt to achieve the same without reinstalling the application.
- On the Taskbar of your system, click on the Windows Search box and type Command Prompt. Then in the results shown, right-click on Command Prompt and then in the sub-menu, click on Run as Administrator.
Open Command Prompt from Windows Search
- Now type the following commands in the Command Prompt and press the enter key after each command:
- Now, launch the terminal to check if it is clear of the error.
Solution 5: Repair the Linux Terminal App
If nothing has helped you so far, then the issue may have been caused by a corrupt installation of the Linux distribution app. To overcome such corruption, the Repair feature of Windows Settings can be used which will then solve the problem.
- Right-click on the Windows button and click on Settings.
Open Windows Settings
- Then tap on Apps.
Open Apps in Windows Settings
- Now, find and click on your Linux Distribution Application, e.g., if you are using Ubuntu, click on Ubuntu. Then click on Advanced Options.
Open Advanced Settings of the Linux Distribution Application
- Now, scroll down till the end and click on the Repair button.
Repair the Linux Distribution Application
- After repairing the distro, check if it is clear of the error.
- If not, open Advanced Options (step 1 to 2).
- Then, scroll down till the end and click on the Reset button (your data/settings will be lost).
Reset the Linux Distribution Application
- Now, launch the distro to check if it is clear of the error.
Solution 6: Reinstall the Linux Console Application
If the repairing of the Linux console has not solved the issue, then the corrupt module of the application is beyond repairing and you have to manually uninstall and then reinstall the application to solve the problem.
- Right-click on the Windows button and click on Settings.
- Now, find and click on your Linux Distribution Application, e.g., if you are using Ubuntu, click on Ubuntu. Then click on Uninstall.
Uninstall the Linux Distribution Application
- After uninstalling, disable the Subsystem for Linux Option (as discussed in solution 1) and restart your system.
- Upon restart, enable the Subsystem for Linux (as discussed in solution 1).
- Now install your Linux Console Application and hopefully, your issue has been resolved.
If nothing has worked for you, then you may have to Reset your Windows PC or perform a clean installation of Windows.
Устранение неполадок подсистемы Windows для Linux
Мы рассмотрели некоторые распространенные сценарии устранения неполадок с WSL, но также вы можете просмотреть сведения о проблемах, опубликованные в репозитории продуктов WSL в GitHub.
Регистрация сведений о проблеме, отчета об ошибке, запроса на функцию
- Выполнять поиск сведений о существующих проблемах, чтобы найти информацию, связанную с возникшей проблемой. Обратите внимание, что в строке поиска можно удалить is:open, чтобы включить в результаты поиска проблемы, которые уже были решены. Рассмотрите возможность комментирования или одобрения любых открытых проблем, чтобы выразить свою заинтересованность в их продвижении в качестве приоритетных.
- Регистрировать сведения о новых проблемах. Если вы обнаружили проблему с WSL, о которой нет упоминаний, вы можете нажать зеленую кнопку New issue (Новая проблема), а затем выбрать элемент WSL — Bug Report (WSL — отчет об ошибках). Вам нужно будет включить название проблемы, номер сборки Windows (выполните cmd.exe /c ver , чтобы узнать номер текущей сборки), независимо от того, используете ли вы WSL 1 или WSL 2, текущую версию ядра Linux (выполните wsl.exe —status или cat /proc/version ), номер версии дистрибутива (выполните lsb_release -r ), а также любые другие версии используемого программного обеспечения, сведения о действиях для воспроизведения, ожидаемом поведении, фактическом поведении, а также журналы диагностики, если они доступны и применимы. Дополнительные сведения см. в разделе, посвященном вкладу в WSL.
- Отправить запрос на функцию, нажав зеленую кнопку New issue (Новая проблема) и выбрав Feature request (Запрос на функцию). Вам нужно будет ответить на несколько вопросов, описывающих ваш запрос.
Кроме того, вы можете сделать следующее:
- Зарегистрировать сведения о проблеме с документацией, используя репозиторий документов WSL. Чтобы внести изменения в документацию по WSL, ознакомьтесь с руководством для участников разработки портала «Документация» Майкрософт.
- Зарегистрировать сведения о проблеме с Терминалом Windows, используя репозиторий продуктов Терминала Windows, если проблема связана с Терминалом Windows, консолью Windows или пользовательским интерфейсом командной строки.
Проблемы с установкой
Сбой установки с ошибкой 0x80070003
- Подсистема Windows для Linux работает только на системном диске (обычно это диск C: ). Убедитесь, что дистрибутивы хранятся на системном диске.
- В Windows 10 выберите Параметры ->Система ->Хранилище ->Другие параметры хранилища: изменить место сохранения нового содержимого
.
- В Windows 11 выберите Параметры ->Система ->Хранилище ->Расширенные параметры хранилища ->Место сохранения нового содержимого
.
Сбой WslRegisterDistribution с ошибкой 0x8007019e
- Дополнительный компонент «Подсистема Windows для Linux» не включен.
- Выберите Панель управления ->Программы и компоненты ->Включение или отключение компонентов Windows -> установите флажок Подсистема Windows для Linux или используйте командлет PowerShell, упомянутый в начале этой статьи.
Сбой установки с ошибкой 0x80070003 или ошибкой 0x80370102.
- Убедитесь, что в BIOS вашего компьютера включена виртуализация. Расположение этого параметра зависит от компьютера, но обычно он находится в разделе настроек ЦП в BIOS.
- Для WSL2 требуется, чтобы ЦП поддерживал функцию преобразования адресов второго уровня (SLAT), которая появилась в процессорах Intel Nehalem (Intel Core 1-го поколения) и AMD Opteron. Более старые ЦП (например, Intel Core 2 Duo) не смогут запускать WSL2, даже если платформа виртуальной машины успешно установлена.
При попытке обновления возникает ошибка Invalid command line option: wsl —set-version Ubuntu 2 .
- Убедитесь, что у вас включена подсистема Windows для Linux и используется сборка Windows 18362 или выше. Чтобы включить WSL, выполните эту команду в командной строке PowerShell с правами администратора: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux .
Не удалось завершить запрошенную операцию из-за ограничения системы виртуального диска. Файлы виртуального жесткого диска должны быть распакованными, незашифрованными и не разреженными.
- Снимите флажок Compress contents (Сжимать содержимое) (а также флажок Encrypt contents (Шифровать содержимое), если он установлен), открыв папку профиля для дистрибутива Linux. Он должен находиться в подпапке файловой системы Windows, для примера: %USERPROFILE%\AppData\Local\Packages\CanonicalGroupLimited. .
- В этом профиле дистрибутива Linux должна находиться папка LocalState. Щелкните эту папку правой кнопкой мыши, чтобы отобразить меню параметров. Выберите «Свойства» > «Дополнительно» и убедитесь, что флажки «Сжимать содержимое для экономии места на диске» и «Шифровать содержимое для защиты данных» не установлены. Если вы увидите запрос на применение параметров к текущей папке или ко всем вложенным папкам и файлам, выберите вариант только для текущей папки, так как вы очищаете только флаг сжатия. После этого команда wsl —set-version будет работать правильно.
В этом примере папка LocalState для дистрибутива Ubuntu 18.04 расположена по адресу C:\Users<имя_пользователя>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc.
Чтобы получать обновленные сведения, проверьте ветку № 4103 в документации GitHub WSL, где отслеживается эта проблема.
Термин WSL не распознан как имя командлета, функции, файла скрипта или действующей программы.
- Убедитесь, что установлен дополнительный компонент Подсистема Windows для Linux. Кроме того, эта ошибка возникнет, если вы используете устройство ARM64 и выполняете эту команду в PowerShell. Вместо этого запустите wsl.exe из PowerShell Core или командной строки.
Error: Windows Subsystem for Linux has no installed distributions (Ошибка. Для подсистемы Windows для Linux не установлены дистрибутивы).
- Если эта ошибка возникает после установки дистрибутивов WSL, выполните следующие действия:
- Запустите дистрибутив минимум один раз, прежде чем вызывать его из командной строки.
- Проверьте, не выполняются ли две отдельные учетные записи пользователей. Выполнение основной учетной записи пользователя с повышенными разрешениями (в режиме администратора) не должно приводить к этой ошибке. Но следует убедиться, что вы случайно не запустили встроенную учетную запись администратора, поставляемую в Windows. Это отдельная учетная запись пользователя, для которой установленные дистрибутивы WSL не будут отображаться по умолчанию. Дополнительные сведения см. в статье Включение и отключение встроенной учетной записи администратора.
- Исполняемый файл WSL устанавливается только в собственный системный каталог. При выполнении 32-разрядного процесса в 64-разрядной системе Windows (в ARM64 в любом несобственном сочетании) для размещенного несобственного процесса доступна другая папка System32. (Этот 32-разрядный процесс в 64-разрядной системе Windows хранится на диске в папке \Windows\SysWOW64.) Чтобы получить доступ к собственной папке System32 из размещенного процесса, найдите виртуальную папку \Windows\sysnative . Хотя фактически эта папка не будет присутствовать на диске, сопоставитель путей в файловой системе найдет ее.
Error: This update only applies to machines with the Windows Subsystem for Linux (Ошибка. Это обновление применяется только к компьютерам с подсистемой Windows для Linux).
- Чтобы установить пакет обновления MSI для ядра Linux, нужно сначала включить WSL. В случае сбоя отображается следующее сообщение: This update only applies to machines with the Windows Subsystem for Linux .
- Есть три возможные причины, по которым вы видите это сообщение:
Вы используете старую версию Windows, которая не поддерживает WSL 2. Требования к версиям и ссылки пакеты обновления см. на шаге 2.
Компонент WSL не включен. Необходимо вернуться к шагу 1 и убедиться, что на компьютере включен необязательный компонент WSL.
Когда он будет включен, перезагрузите компьютер, чтобы изменения вступили в силу, и повторите попытку.
Error: WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel. (Ошибка. Для WSL 2 требуется обновление компонента ядра. Дополнительные сведения см. здесь: https://aka.ms/wsl2kernel).
- Эта ошибка возникает, если пакет ядра Linux отсутствует в папке %SystemRoot%\system32\lxss\tools. Чтобы устранить ошибку, установите пакет обновления MSI для ядра Linux, как описано на шаге 4 в этих инструкциях по установке. Возможно, вам потребуется удалить пакет MSI в разделе Установка и удаление программ, а затем снова установить его.
Распространенные проблемы
Я использую Windows 10 версии 1903, но не вижу параметры для WSL 2.
Скорее всего, это связано с тем, что на компьютере еще не установлены исправления для WSL 2. Чтобы решить эту проблему самым простым способом, перейдите в параметры Windows, нажмите кнопку «Проверить наличие обновлений» и установите последние обновления в системе. Изучите полные инструкции по получению исправления для старой версии.
Если после нажатия кнопки «Проверить наличие обновлений» вы не получили обновление, можно установить исправления KB4566116 вручную.
Ошибка. 0x1bc, когда wsl —set-default-version 2
Это может произойти, если язык интерфейса или язык системы не является английским.
Фактическая ошибка для 0x1bc :
См. сведения о проблеме 5749.
Не удается получить доступ к файлам WSL из Windows
Файловый сервер протокола 9p предоставляет службу на стороне Linux, которая позволяет Windows получить доступ к файловой системе Linux. Если вы не можете получить доступ к WSL с помощью \\wsl$ в Windows, возможно, это вызвано неправильным запуском 9P.
Чтобы убедиться в этом, можно проверить журналы запуска с помощью команды dmesg |grep 9p . Если ошибки есть, отобразятся сведения о них. Выходные данные выглядят следующим образом:
Дополнительные сведения об этой ошибке см. в этом потоке GitHub.
Не удается запустить дистрибутив WSL 2, а в выходных данных отображается только WSL 2.
Если язык интерфейса не английский, возможно, отображается усеченная версия текста ошибки.
Чтобы устранить эту проблему, перейдите по адресу https://aka.ms/wsl2kernel и установите ядро вручную, следуя инструкциям на этой странице документации.
Ошибка command not found при выполнении исполняемых файлов Windows в Linux
Пользователи могут запускать исполняемые файлы Windows, например notepad.exe, прямо в среде Linux. Но иногда это действие приводит к ошибке «Команда не найдена», как показано ниже:
Если в переменной $PATH нет обязательных путей Win32, подсистема взаимодействие не сможет найти EXE-файл. Чтобы проверить это, выполните echo $PATH в среде Linux. В выходных данных вы должны увидеть путь к win32 (например, /mnt/c/Windows). Если вы не видите эти пути Windows, скорее всего переменная PATH перезаписана оболочкой Linux.
Ниже приведен пример файла /etc/profile на ОС Debian, который вызывал такую проблему:
Чтобы решить эту проблему в среде Debian, нужно удалить приведенные выше строки. Вы также можете добавить значения в переменную $PATH во время назначения, как показано ниже, но это может вызвать другие проблемы с WSL и VSCode.
Дополнительные сведения см. в описании проблем 5296 и 5779.
«Ошибка: 0x80370102 The virtual machine could not be started because a required feature is not installed (Не удалось запустить виртуальную машину, так как не установлена необходимая функция).
Включите компонент платформы виртуальных машин Windows и убедитесь, что в BIOS включена виртуализация.
Если компьютер является виртуальной машиной, включите вложенную виртуализацию вручную. Запустите PowerShell с правами администратора и выполните следующую команду:
Следуйте рекомендациям производителя компьютера, чтобы включить виртуализацию. Как правило, для проверки того, что эти функции включены в ЦП, может использоваться BIOS системы. Инструкции для этого процесса могут быть разными для разных компьютеров, один из примеров вы можете изучить в этой статье от Bleeping Computer.
Перезагрузите компьютер после включения дополнительного компонента Virtual Machine Platform .
Убедитесь, что запуск гипервизора включен в конфигурации загрузки. Это можно проверить, выполнив следующее (с повышенными правами PowerShell):
Если вы видите hypervisorlaunchtype Off , это значит, что гипервизор отключен. В окне PowerShell с повышенными привилегиями выполните следующее:
Кроме того, если у вас установлены сторонние гипервизоры, (например, VMware или VirtualBox), убедитесь, что это последние версии, поддерживающие HyperV (VMware 15.5.5+ и VirtualBox 6+), или что они выключены.
Узнайте больше о том, как настроить вложенную виртуализацию при запуске Hyper-V на виртуальной машине.
WSL не имеет сетевого подключения на рабочем компьютере или в среде Enterpise
В средах Business или Enterprise могут быть настроенные параметры брандмауэра Защитника Windows для блокировки несанкционированного сетевого трафика. Если для слияния локальных правил установлено значение «Нет», сеть WSL не будет работать по умолчанию, и ваш администратор должен будет добавить правило брандмауэра, чтобы разрешить это поведение.
Чтобы подтвердить настройку слияния локальных правил:
- Откройте раздел «Брандмауэр Защитника Windows с повышенной безопасностью» (он отличается от раздела «Брандмауэр Защитника Windows» на Панели управления).
- Щелкните правой кнопкой мыши вкладку «Брандмауэр Защитника Windows с расширенной безопасностью на локальном компьютере».
- Выберите «Свойства».
- Выберите вкладку «Общедоступный профиль» в открывшемся окне.
- Выберите «Настроить» в разделе «Параметры».
- Установите флажок в открывшемся окне «Настройка параметров для общедоступного профиля», чтобы проверить, задано ли параметру «Слияние правил» значение «Нет». Это приведет к блокировке доступа к WSL.
Инструкции по изменению этого параметра брандмауэра см. в статье Корпоративная среда: настройка WSL для вашей компании.
В WSL отсутствует подключение к сети после подключения к сети VPN
Если после подключения к VPN в Windows оболочка Bash утрачивает подключение к сети, попробуйте воспользоваться этим обходным решением в Bash. Это решение позволит вручную переопределить разрешение DNS с помощью /etc/resolv.conf .
- Запишите DNS-сервер виртуальной частной сети. Для этого выполните ipconfig.exe /all
- Создайте копию существующего resolv.conf, выполнив sudo cp /etc/resolv.conf /etc/resolv.conf.new
- Разорвите связь с текущим файлом resolv.conf, выполнив команду sudo unlink /etc/resolv.conf .
- sudo mv /etc/resolv.conf.new /etc/resolv.conf
- Измените /etc/wsl.conf и добавьте это содержимое в файл. (Дополнительные сведения об этом см. в статье Расширенная конфигурация.)
- Откройте /etc/resolv.conf и сделайте следующее.
a. Удалите первую строку из файла с комментарием, описывающим автоматическое создание.
b. Добавьте запись DNS из пункта 1 выше в качестве первой записи в списке DNS-серверов.
c. Закройте файл.
После отключения VPN необходимо будет отменить изменения в /etc/resolv.conf . Для этого сделайте следующее.
- cd /etc
- sudo mv resolv.conf resolv.conf.new
- sudo ln -s ../run/resolvconf/resolv.conf resolv.conf
При запуске WSL или установке дистрибутива возвращается код ошибки
Выполните эти инструкции, чтобы получить подробные журналы и сообщить о возникшей проблеме на портале GitHub.
Обновление WSL
Есть два компонента подсистемы Windows для Linux, которые могут требовать обновления.
Чтобы обновить саму подсистему Windows для Linux, используйте команду wsl —update в PowerShell или CMD.
Чтобы обновить определенные двоичные файлы пользователя дистрибутива Linux, используйте команду apt-get update | apt-get upgrade в дистрибутиве Linux, который требуется обновить.
Ошибки apt-get upgrade
Некоторые пакеты используют функции, которые еще не реализованы. Например, udev пока не поддерживается и вызывает несколько ошибок apt-get upgrade .
Чтобы устранить проблемы, связанные с udev , выполните следующие действия.
Введите приведенный ниже код в /usr/sbin/policy-rc.d и сохраните изменения.
Добавьте разрешения на выполнение в /usr/sbin/policy-rc.d :
Выполните следующие команды:
«Ошибка: 0x80040306» при установке
Это связано с тем, что мы не поддерживаем устаревшую консоль. Чтобы отключить устаревшую консоль, выполните следующие действия.
- Выполните файл cmd.exe.
- Щелкните правой кнопкой мыши строку заголовка -> выберите «Свойства» -> снимите флажок «Использовать прежнюю версию консоли».
- Нажмите кнопку «ОК».
«Ошибка: 0x80040154» после обновления Windows
Компонент «Подсистема Windows для Linux» может быть отключен во время обновления Windows. В этом случае данную функцию Windows необходимо включить заново. Инструкции по включению подсистемы Windows для Linux см. в статье Руководство по установке.
Изменение отображаемого языка
Установщик WSL попытается автоматически изменить языковой стандарт Ubuntu в соответствии с языковым стандартом установки Windows. Если это нежелательно, можно выполнить приведенную ниже команду, чтобы изменить языковой стандарт Ubuntu после завершения установки. Чтобы это изменение вступило в силу, потребуется повторно запустить bash.exe.
В приведенном ниже примере языковой стандарт изменяется на EN-US.
Проблемы установки после восстановления системы Windows
- Удалите папку %windir%\System32\Tasks\Microsoft\Windows\Windows Subsystem for Linux .
Примечание. Не делайте этого, если дополнительный компонент полностью установлен и работает. - Включите дополнительный компонент WSL (если он еще не включен).
- Выполните перезагрузку.
- Выполните команду lxrun /uninstall /full
- Установите Bash.
Нет доступа к Интернету в WSL
Некоторые пользователи сообщили о проблемах с определенными приложениями брандмауэра, блокирующими доступ к Интернету в WSL. Сообщили о следующих брандмауэрах:
- Kaspersky;
- AVG;
- Avast.
- Symantec Endpoint Protection
В некоторых случаях отключение брандмауэра обеспечивает доступ. В некоторых случаях доступ блокируется просто при наличии установленного брандмауэра.
Если вы используете брандмауэр в Microsoft Defender, снимите флажок «Блокирует все входящие подключения, в том числе для приложений, указанных в списке разрешенных программ», чтобы разрешить доступ.
Ошибка «Отказ в разрешении» при проверке связи
В выпуске Windows Anniversary Update, версия 1607 для проверки связи в WSL требуются права администратора. Чтобы выполнить проверку связи, запустите Bash для Ubuntu в Windows от имени администратора или запустите bash.exe из командной строки или сеанса PowerShell с привилегиями администратора.
В более поздних версиях Windows (сборка 14926+) права администратора не требуются.
Bash перестал отвечать на запросы
Если при работе с Bash вы обнаружите, что Bash перестал отвечать на запросы (или взаимозаблокирован), помогите нам диагностировать проблему путем сбора и передачи дампа памяти. Обратите внимание на то, что выполнение этих действий приведет к сбою системы. Не делайте этого, если вас это не устраивает, либо предварительно сохраните результаты своей работы.
Сбор дампа памяти
Измените тип дампа памяти на «Полный дамп памяти». При изменении типа дампа запишите текущий тип.
Выполните эти действия, чтобы настроить аварийное завершение с помощью клавиатуры.
Воспроизведите взаимоблокировку или прекращение ответа на запросы.
Выполните аварийное завершение системы с помощью последовательности клавиш из пункта 2.
Произойдет аварийное завершение системы и будет собран дамп памяти.
После перезагрузки системы отправьте memory.dmp на адрес электронной почты secure@microsoft.com. По умолчанию файл дампа находится в папке %SystemRoot%\memory.dmp или C:\Windows\memory.dmp, если C: является системным диском. В письме укажите, что дамп предназначен для команды разработчиков WSL или Bash в Windows.
Восстановите исходное значение типа дампа памяти.
Проверка номера сборки
Чтобы узнать архитектуру компьютера и номер сборки Windows, выберите
Параметры>Система>О программе
Найдите поля Сборка ОС и Тип системы.
Чтобы найти номер сборки Windows Server, выполните в PowerShell следующую команду.
Подтверждение включения WSL
Вы можете убедиться, что подсистема Windows для Linux включена, выполнив следующую команду в окне PowerShell повышенного уровня:
Проблемы с подключением к серверу OpenSSH
Попытка подключения к серверу SSH завершается следующей ошибкой: «Connection closed by 127.0.0.1 port 22» (Подключение закрыто узлом 127.0.0.1 через порт 22).
Убедитесь, что сервер OpenSSH работает
Завершите работу службы sshd и запустите sshd в режиме отладки.
Проверьте журналы запуска и убедитесь, что ключи сервера доступны и в журнале нет сообщений, как показано ниже.
Если вы видите такие сообщения и в разделе /etc/ssh/ отсутствуют ключи, потребуется повторно создать ключи или просто очистить и установить сервер OpenSSH.
Сообщение «Указанная сборка не найдена» может появиться при включении дополнительного компонента WSL.
Данная ошибка связана с неправильным состоянием установки. Чтобы устранить эту проблему, выполните следующие действия.
Если вы используете команду включения компонента WSL в PowerShell, попробуйте использовать графический пользовательский интерфейс. Для этого откройте меню «Пуск», выполните поиск фразы «Включение или отключение компонентов Windows», а затем из списка выберите «Подсистема Windows для Linux». Этот дополнительный компонент будет установлен.
Обновите версию Windows, выбрав «Параметры» > «Обновления» и щелкнув «Проверить наличие обновлений».
Если оба способа не помогли и вам нужно использовать WSL, рассмотрите возможность обновления на месте, переустановив Windows с установочного носителя и выбрав параметр «Сохранить все», чтобы сохранить свои приложения и файлы. Инструкции по такой установке можно найти на странице Переустановка Windows 10.
Правильные (связанные с SSH) ошибки разрешений
Если вы видите эту ошибку:
Чтобы устранить эту проблему, добавьте следующий текст в файл /etc/wsl.conf :
Обратите внимание, что добавление этой команды будет включать метаданные и изменять разрешения для файлов Windows, показанных в WSL. См. сведения о разрешениях файловой системы.
Выполнение команд Windows завершается сбоем в дистрибутиве
Некоторые дистрибутивы, доступные в Microsoft Store, еще не полностью поддерживают выполнение команд Windows. Если при выполнении powershell.exe /c start . или любой другой команды Windows возникает ошибка -bash: powershell.exe: command not found , ее можно устранить, выполнив следующие действия:
- В дистрибутиве WSL выполните echo $PATH .
Если /mnt/c/Windows/system32 отсутствует, что-то переопределяет стандартную переменную PATH. - Проверьте параметры профиля с помощью cat /etc/profile .
Если присутствует назначение переменной PATH, измените файл, чтобы закомментировать блок назначения PATH, используя символ # . - Проверьте, существует ли файл wsl.conf ( cat /etc/wsl.conf ), и убедитесь, что он не содержит appendWindowsPath=false . В противном случае закомментируйте эту строку.
- Перезапустите дистрибутив, введя wsl -t , после чего следует имя дистрибутива, либо выполните wsl —shutdown в cmd или PowerShell.
Не удается выполнить загрузку после установки WSL 2
Мы осведомлены о проблемах, из-за которых пользователям не удается выполнить загрузку после установки WSL 2. Пока мы полностью диагностировали эту проблему, от пользователей поступали сообщения о том, что помочь в ее устранении может изменение размера буфера или установка правильных драйверов. Просматривайте новейшие сведения об этой проблеме на сайте GitHub.
Ошибки WSL 2, возникающие при отключении ICS
Совместное использование подключения к Интернету (ICS) — обязательный компонент WSL 2. Служба ICS используется сетевой службой узлов (HNS) для создания базовой виртуальной сети. На ее основе в WSL 2 реализуется работа с NAT, DNS и DHCP, а также совместное использование подключения к узлу.
Если отключить службу ICS (SharedAccess) или ICS через групповую политику, нельзя будет создать сеть WSL службы HNS. Это приведет к сбоям при создании нового образа WSL версии 2 и возникновению указанной ниже ошибки при попытке преобразовать образ версии 1 в образ версии 2.
Для систем, требующих использования WSL 2, нужно оставить службу ICS (SharedAccess) в состоянии запуска по умолчанию «Вручную (активировать запуск)», а любую политику, запрещающую ICS следует перезаписать или удалить. Отключение службы ICS приведет к нарушению работы WSL 2. Мы не рекомендуем отключать ICS, но некоторые части ICS можно отключить с помощью этих инструкций.
Использование более старых версий Windows и WSL
Есть несколько отличий, которые следует учитывать, если вы используете более раннюю версию Windows и WSL, например Windows 10 Creators Update (октябрь 2017 г., сборка 16299) или Anniversary Update (август 2016 г., сборка 14393). Рекомендуется выполнить обновление до последней версии Windows, но если это невозможно, ознакомьтесь с некоторыми из описанных ниже различий.
Особенности взаимодействия команд:
- bash.exe заменен на wsl.exe ; Команды Linux можно запускать из командной строки Windows или из PowerShell, но для ранних версий Windows необходимо использовать команду bash . Например: C:\temp> bash -c "ls -la" . Команды WSL, передаваемые в bash -c , перенаправляются в процесс WSL без изменения. Пути к файлам должны быть указаны в формате WSL, кроме того, необходимо внимательно экранировать соответствующие знаки. Пример: C:\temp> bash -c "ls -la /proc/cpuinfo" или C:\temp> bash -c "ls -la \"/mnt/c/Program Files\"" .
- Чтобы узнать, какие команды доступны для определенного дистрибутива, выполните команду [distro.exe] /? . Например, с Ubuntu: C:\> ubuntu.exe /? .
- путь Windows включен в переменную $PATH WSL.
- При вызове средства Windows из дистрибутива WSL в ранних версиях Windows 10 необходимо указать путь к каталогу. Например, чтобы вызвать приложение Windows «Блокнот» из командной строки WSL, введите /mnt/c/Windows/System32/notepad.exe .
- Чтобы изменить пользователя по умолчанию для использования root этой команды в PowerShell, введите C:\> lxrun /setdefaultuser root и выполните Bash.exe, чтобы выполнить вход: C:\> bash.exe . Сбросьте пароль с помощью команды $ passwd username для паролей для дистрибутивов и закройте командную строку Linux: $ exit . В командной строке Windows или PowerShell сбросьте настройки пользователя по умолчанию до стандартной учетной записи пользователя Linux: C:\> lxrun.exe /setdefaultuser username .
Удаление устаревшей версии WSL
Если первоначально вы установили WSL в Windows 10 Creators Update (октябрь 2017 г., сборка 16299), рекомендуется перенести все необходимые файлы, данные и пр. из старого дистрибутива Linux в более новый дистрибутив, установленный с помощью Microsoft Store. Чтобы удалить устаревший дистрибутив с компьютера, выполните следующую команду в командной строке или экземпляре PowerShell: wsl —unregister Legacy . Кроме того, вы можете вручную удалить устаревший дистрибутив, удалив папку %localappdata%\lxss\ (и все ее содержимое) с помощью проводника Windows или PowerShell: rm -Recurse $env:localappdata/lxss/ .
Installation Failed with Error 0x8007019e #2982
I have tried Repair, Reset and reinstall these two apps, but the problem is still there. Is there anything I can do to check the detail of the problem?
The text was updated successfully, but these errors were encountered:
0NG commented Feb 27, 2018
I have collected some yesterday (if no mistake). However, ubuntu works again today. Sorry for I cannot reproduce it now.
detail.zip
ItaiSent commented Mar 1, 2018
@0NG Make sure Windows Subsystem for Linux is checked.
0NG commented Mar 1, 2018
Yes, it was checked at first, since I have used WSL for a long time. When the problem occured but I couldn’t find any solution, I tried to uncheck it, test if ubuntu work, and then checked it again, but the problem was still there. I think it may not because of this Windows feature unchecked.
benhillis commented Mar 1, 2018
Yep somehow the WSL feature was disabled, that’s what error 0x8007019e means.
0NG commented Mar 2, 2018
krysjez commented Apr 1, 2018
In case it helps someone, I had the same error despite having WSL checked.
Unchecking it, rebooting, checking it, rebooting again, and running Ubuntu install worked for me.
0NG commented Apr 1, 2018
@krysjez Aha! Yes, it also worked for me! Just two weeks ago, the error came up again, and I solved it by the same steps.
NoahNye commented Apr 15, 2018
michellaevens commented Apr 23, 2018
Same issue here. The Windows Susbsystem for Linux feature was turned off. I guess that happened during a Windows update. However, I had another error : 0x800700b7. I could fix it by reinstalling the Ubuntu app from the store.
janbernloehr commented May 1, 2018
I am not so happy with this having been closed without any changes. Can’t we add a more descriptive error message which points the user into the right direction?
psychohamster commented May 2, 2018
I have a similar scenario to @michellaevens except instead of a second error code, I get a GSOD — depending on the exact invocation means, it’s either a SYSTEM_SERVICE_EXCEPTION in hbflt.sys or a SYSTEM_THREAD_EXCPEPTION_NOT_HANDLED in fltmgr.sys
This has been happening for the last several slow ring builds, plus the official release on Monday.
Anyone else seeing the same thing?
Brian-Perkins commented May 2, 2018
It appears hbflt.sys is a BitDefender file-system filter, and there have been a couple of other reports (#1750, #2323) involving BitDefender. Those were usability issues instead of crashes, but possibly all related.
psychohamster commented May 2, 2018
@Brian-Perkins — Aha — You are correct! Uninstalling BitDefender allowed WSL to run. I’ll work on seeing if there is an updated version of it available to get pushed out to our dev machines. Had been working until roughly mid-march builds, if I recall correctly.
AGiantSquid commented May 14, 2018
In case this helps anyone else, I had this problem show up today after using WSL for months with no problems. I recently changed my startup to automatically open ConEmu on system boot. All I did to rectify this was to close all open terminals. I reopened ConEmu and now it seems to be working fine. Perhaps trying to open WSL too early in the boot process can cause this error.
AnthonySteele commented Jun 13, 2018 •
The happened to me today. I have been using WSL daily, suddenly it does not work. The Windows feature is checked.
to: fix: uncheck the feature, reboot, check the feature, reboot.
JuKu commented Jun 26, 2018
I get the same error, but my linux subsystem is already installed and enabled.
AnthonySteele commented Jun 27, 2018
This comes and goes on mine.
ghost commented Jul 3, 2018
I get a same error in Win 10 1803. I am sad.
JuKu commented Jul 3, 2018
@benhillis Maybe this issue should be reopened?
ghost commented Jul 3, 2018
molnare commented Aug 3, 2018
@AnthonySteele this reminds me of The IT Crowd: «Have you tried turning it off and on again?»
But I must say. It worked!
AnthonySteele commented Aug 4, 2018
I have seen a similar error a few more times, usually right after the machine was started up.
In those cases, I tried again 5 minutes later and it worked then. Without a re-install.
chinezilian commented Sep 12, 2018
OrekiDawson commented Oct 27, 2018
checor commented Jan 13, 2019
stsands commented Apr 21, 2019
SalamiArmy commented May 2, 2019
I think I’m the first person in this thread for whom unchecking and re-checking didn’t work. I’ve tried Ubuntu 18, OpenSuse and Debian
JuKu commented May 23, 2019
@SalamiArmy This didn’t work for me, too.
But after a while (and many windows updates) it works now without doing anything.
CarlosOrtiz4200 commented Nov 14, 2019
@0NG Make sure Windows Subsystem for Linux is checked.
nuno-andre commented Dec 8, 2019
Rebooting only after enabling worked for me:
Run as administrator:
dksadiq commented Apr 14, 2020
- Run as administrator:
Running the second line of this as Admin on PowerShell and then rebooting right afterwards also worked for me.
lawrencekiba commented Jun 6, 2020
@0NG Make sure Windows Subsystem for Linux is checked.
This worked like a charm for me for now.
tiitii18d106 commented Aug 5, 2020
@JuKu Did you discover what the problem was?
I currently have the same issue
pra17dod commented Sep 15, 2020
@0NG Make sure Windows Subsystem for Linux is checked.
Thanks man!! It worked
KasperKivimaeki commented Feb 9, 2021
I had this error after WSL had crashed/frozen.
My wsl crashed after I had opened two Ubuntu wsl terminals and moved some files to its filesystem with file explorer. Afterwards I got this error everytime I opened WSL. I had used Ubuntu WSL previously for years. I hope to find out how to properly reproduce this.
I solved this problem by disabling and enabling the feature and then rebooting.
anony436 commented May 9, 2021
In case it helps someone, I had the same error despite having WSL checked.
Unchecking it, rebooting, checking it, rebooting again, and running Ubuntu install worked for me.
I have an issue of automatically unchecking wsl after restart. Error when restart: we couldn’t complete the features undoing changes..
anony436 commented May 9, 2021
In case it helps someone, I had the same error despite having WSL checked.
Unchecking it, rebooting, checking it, rebooting again, and running Ubuntu install worked for me.
I have an issue of automatically unchecking wsl after restart. Error when restart: we couldn’t complete the features undoing changes..
anony436 commented May 9, 2021
I think I’m the first person in this thread for whom unchecking and re-checking didn’t work. I’ve tried Ubuntu 18, OpenSuse and Debian
I have an issue of automatically unchecking wsl after restart. Error when restart: we couldn’t complete the features undoing changes..
AviralDhingra commented Jun 11, 2021 •
In case it helps someone, I had the same error despite having WSL checked.
Unchecking it, rebooting, checking it, rebooting again, and running Ubuntu install worked for me.
Thank You So Much. This fixed my error
yaoayh commented Jun 15, 2021
It’s helped for Me also, just checked it and restart pc.
I used UbuntuLTD20.4
Thx
catafest commented Aug 6, 2021
Windows Subsystem for Linux is checked if is , uncheck and check again . then need to be restart in order to have LxssManager on Services.msc, then install Ubuntu app from ms store .
measproem commented Aug 23, 2021
@0NG Make sure Windows Subsystem for Linux is checked.