n1ro°
RU

Ошибки и коды · Инструкция

WSL: No installed distributions при запуске от администратора

WSL no installed distributions от администратора часто означает другой Windows user context, а не удаление Ubuntu.

Редакция N1RO · Проверено

Короткий ответ

Дистрибутивы WSL регистрируются для конкретного пользователя. Если команда запущена из другого аккаунта или встроенного Administrator, `wsl -l -v` может быть пустым, хотя у обычного пользователя Ubuntu установлен.

Почему список WSL зависит от пользователя Windows

Симптом особенно сбивает с толку, когда ярлык «Run as administrator» открывает shell с другим user context. WSL видит регистрации текущего пользователя, поэтому отсутствие дистрибутивов в elevated/другом аккаунте не доказывает, что VHDX удалён. Microsoft также советует проверять, под каким пользователем запускается команда и использовать нативную системную консоль при проблемах с архитектурой/путём wsl.exe.

Совет: Сравните `whoami` в рабочем и проблемном окне до любых переустановок — это занимает секунды и часто сразу объясняет симптом.

Как сравнить `whoami` и `wsl -l -v`

  1. В окне, где WSL работает, выполните `whoami` в Windows и `wsl -l -v`; сохраните имя пользователя и список дистрибутивов.
  2. В проблемном окне администратора повторите `whoami` и `wsl -l -v`; если user context отличается, причина уже найдена.
  3. Запускайте WSL из обычного профиля, которому принадлежит регистрация дистрибутива; не используйте встроенный Administrator без необходимости.
  4. Если контекст пользователя тот же, выполните `where.exe wsl` и попробуйте нативный Windows Terminal/PowerShell, чтобы исключить необычный PATH/архитектуру процесса.
  5. Только если список пуст и в правильном профиле, переходите к проверке установки/импорта дистрибутива; не регистрируйте новую копию поверх старой наугад.

Важно: Не копируйте папку LocalState между профилями: физический VHDX и регистрация WSL — не одно и то же.

Почему sudo не требует другого Windows-аккаунта

  • Не переносите вручную папку LocalState между профилями как способ «показать» дистрибутив другому пользователю — регистрация WSL устроена иначе.
  • Elevation через UAC обычно сохраняет пользователя, но встроенный Administrator/Run as different user создаёт другой контекст; проверяйте фактически `whoami`.
  • Если вы импортировали дистрибутив в кастомный путь, физическое наличие VHDX не гарантирует регистрацию в текущем профиле.
  • Перед любой повторной регистрацией убедитесь, что не создадите вторую независимую копию с тем же именем и не потеряете связь со старым диском.

Предупреждение: Если нужны root-права внутри Linux, используйте `sudo`; запуск WSL из другого Windows-аккаунта для этого не требуется.

Что делать, если user context одинаковый

Для подтверждения достаточно открыть два окна рядом и сравнить `whoami` + `wsl -l -v`. Если в одном список есть, а в другом нет, переустановка WSL не нужна: вы диагностировали различие user context. Затем уже решайте, требуется ли администрирование внутри Linux через `sudo`, вместо запуска всей WSL-среды от другого Windows-аккаунта.

Почему не нужно переносить LocalState вручную

Если `whoami` отличается, вернитесь в профиль, которому принадлежит дистрибутив, и повторите `wsl -l -v`. Это безопаснее попытки «подключить» старый VHDX к другому аккаунту. Для администрирования Windows можно открыть отдельное elevated-окно, а Linux-задачи продолжать в обычном пользовательском контексте.

Как избежать второй случайной регистрации

Если пользователь один и тот же, проверьте `where.exe wsl` и запустите нативный Windows Terminal/PowerShell без нестандартного окружения. Только когда список пуст и в корректном профиле, переходите к регистрации/импорту. Перед этим убедитесь, что старый диск найден и сохранён, чтобы не создать независимую копию поверх существующих данных.

Не переносите VHDX между профилями ради видимости

Регистрация дистрибутива привязана к Windows‑пользователю, поэтому физическое наличие `ext4.vhdx` ещё не означает, что другой аккаунт увидит её в `wsl -l -v`. Не копируйте рабочий VHDX в случайный `LocalState`: сравните `whoami`, вернитесь в исходный профиль или используйте официальный export/import, если перенос действительно нужен.

Что учитывать

Симптом особенно сбивает с толку, когда ярлык «Run as administrator» открывает shell с другим user context. WSL видит регистрации текущего пользователя, поэтому отсутствие дистрибутивов в elevated/другом аккаунте не доказывает, что VHDX удалён. Microsoft также советует проверять, под каким пользователем запускается команда и использовать нативную системную консоль при проблемах с архитектурой/путём wsl.exe.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. Troubleshooting Windows Subsystem for Linux). Пример и формулировки — редакция N1RO на 2026-09-23.