Я следую инструкции здесь:https://www.youtube.com/watch?v=ZMfHaUkhfc0Я на отметке около 15:00. Я установил WSL2 в PowerShell учетной записи администратора. Я вошел в систему как обычный пользователь. Я установил Docker Desktop и Ubuntu. Я перезагрузился. Затем я снова открываю Powershell как учетная запись администратора, и он не видит ни установленного мной дистрибутива Ubuntu, ни установленного мной Docker Desktop.
PS C:\windows\system32> wsl -l -v
Windows Subsystem for Linux has no installed distributions.
Distributions can be installed by visiting the Microsoft Store:
https://aka.ms/wslstore
PS C:\windows\system32> wsl.exe -d Ubuntu
There is no distribution with the supplied name.
PS C:\windows\system32> wsl.exe --install Ubuntu
Copyright (c) Microsoft Corporation. All rights reserved.
Usage: wsl.exe [Argument] [Options...] [CommandLine]
Arguments for running Linux binaries:
If no command line is provided, wsl.exe launches the default shell.
--exec, -e <CommandLine>
Execute the specified command without using the default Linux shell.
--
Pass the remaining command line as is.
Опять же, я использую обычную (не администраторскую) учетную запись и могу открыть приложение Ubuntu и приложение Docker Desktop в Windows, но сеанс Powershell, запущенный мной как администратор, не видит ни того, ни другого. Как это исправить? И почему вызов завершается wsl.exe --install Ubuntu
ошибкой с простым сообщением об использовании?
решение1
Дистрибутивы Linux, устанавливаемые с помощью WSL, устанавливаются для каждого пользователя и не могут использоваться совместно с другими учетными записями пользователей Windows (см.https://learn.microsoft.com/en-us/windows/wsl/setup/environment).
Следовательно, запустив powershell как учетную запись администратора, вы не увидите дистрибутивы, установленные с помощью обычной (неадминистративной) учетной записи. Вместо этого я ожидаю, что вы увидите их, запустив wsl -l -v
с помощью сеанса powershell обычного пользователя.
Вероятно, команда wsl.exe --install Ubuntu
, запущенная сеансом powershell администратора, показывает вам справку именно потому, что у вас не установлено ни одного дистрибутива с учетной записью администратора. В этом случае, поскольку установлен wsl (очевидно, поскольку вы должны были быть администратором, чтобы установить его), но нет дистрибутива (так как вы установили их с помощью обычного пользователя), он показывает вам справку (ссылка.https://learn.microsoft.com/en-us/windows/wsl/install).
Вам следует выполнить команду wsl --list --online
, а затем wsl --install -d <DistroName>
.