Как сбросить забытый пароль Linux в WSL

Быстрые ссылки
- Заблокированы в бесконечном цикле
- Сброс через исполняемый файл дистрибутива
- Сброс через команду wsl
- Прекратите «глотать свой хвост» — советы и безопасность
Проблема: застряли в бесконечном цикле
Если вы забыли пароль пользователя в Linux, работающем в WSL, вы попадаете в неприятную циклическую ситуацию. При установке дистрибутива вы создавали локального пользователя и пароль. WSL обычно логинит вас автоматически, поэтому вы не вводите пароль при каждом запуске — он легко забывается.
Это становится проблемой, когда нужно выполнить привилегированные действия (установить ПО, менять системные файлы, управлять пользователями). Для этого используется команда sudo, которая требует подтверждения пароля.
Команда passwd позволяет изменить пароль, но по умолчанию запрашивает текущий пароль пользователя. И тут возникает противоречие: чтобы вызвать sudo и выполнить passwd, нужен ваш пароль; чтобы запустить passwd без старого пароля — нужно быть root. Выход — запустить дистрибутив как root и сменить пароль целевого пользователя.
Важно: описанные способы требуют доступа к вашей Windows‑учётной записи и к установленному дистрибутиву WSL. Они не предоставляют удалённый обход аутентификации и не применимы к чужим системам.
Подходы — краткий обзор
- С помощью исполняемого файла дистрибутива (например, ubuntu2004.exe) переключить default-user на root, изменить пароль, вернуть default-user.
- Команда wsl –user root — проще, но в тестах работала не всегда стабильно.
Оба подхода приводят к одинаковому результату: вы получаете shell с правами root и можете выполнить passwd для нужного пользователя.
Сброс через исполняемый файл дистрибутива
Этот метод редко даёт сбои и полезен, если команда wsl ведёт себя нестабильно.
Шаг 1. Найдите исполняемый файл дистрибутива в каталоге WindowsApps. На Windows 10/11 это обычно:
C:\Users\<имя_пользователя>\AppData\Local\Microsoft\WindowsAppsЗамените <имя_пользователя> на имя вашей Windows‑учётной записи. В командной строке Windows (cmd.exe) перейдите в эту папку и выполните:
dirВы увидите множество записей, в том числе файл вида ubuntu2004.exe, ubuntu.exe, или имя вашего дистрибутива.

Шаг 2. Запустите дистрибутив, указав root в качестве временного default‑пользователя:
ubuntu2004.exe config --default-user rootПосле этого откройте сессию Ubuntu — вы должны увидеть приглашение вида # и имя root, или проверить с помощью:
whoamiШаг 3. Измените пароль целевого пользователя (например, dave):
passwd daveКоманда запросит новый пароль дважды. При вводе символы не отображаются — это нормально. Запомните новый пароль.
Шаг 4. Выйдите и верните default‑пользователя обратно:
exit
ubuntu2004.exe config --default-user daveШаг 5. Проверьте, что sudo теперь принимает новый пароль:
sudo ps -eЕсли команда выполняется после ввода обновлённого пароля, всё в порядке.
Важно: вместо ubuntu2004.exe у вас может быть другой файл — используйте именно тот, что соответствует установленному дистрибутиву.
Сброс через команду wsl
Этот способ короче и более прямой. На практике некоторые пользователи сообщали о нестабильности в разных версиях Windows/WSL, но стоит попробовать его первым.
В командной строке Windows выполните:
wsl --user rootОткроется сессия WSL под root. Подтвердите это:
whoamiЗатем смените пароль нужного пользователя:
passwd daveВыйдите и перезапустите сессию WSL — вы должны снова оказаться под обычным пользователем, но с новым паролем.
Что делать, если ничего не работает
- Проверьте версию WSL: wsl –version. Старые билды Windows могут вести себя иначе.
- Убедитесь, что используемый исполняемый файл соответствует дистрибутиву, который вы хотите изменить.
- Если дистрибутив сломался, можно экспортировать данные, установить новый экземпляр и импортировать домашнюю папку.
Playbook: быстрый план действий (пошагово)
- Откройте cmd.exe от своей Windows‑учётной записи.
- Попробуйте: wsl –user root. Если успех — выполнить passwd
, выйти. - Если не помогло — найдите исполняемый файл в
C:\Users\<имя>\AppData\Local\Microsoft\WindowsApps- Выполните: <имя_дистрибутива>.exe config –default-user root
- Запустите дистрибутив, выполните passwd
- Верните default‑user обратно и проверьте sudo.
Роль‑ориентированные чек‑листы
Для разработчика:
- Сохранить текущие незакоммиченные изменения в проекте
- Создать резервную копию ~/.ssh и конфигураций
- Сменить пароль и проверить sudo для установки пакетов
Для системного администратора:
- Проверить версию WSL и политики безопасности
- Убедиться, что root‑доступ логируется и защищён
- Документировать причину сброса пароля
Для случайного пользователя:
- Включить запоминание пароля в менеджере паролей
- Избегать простых паролей, но сделать их запоминаемыми
Критерии приёмки
- Успешный вход под целевым пользователем после сброса пароля.
- Команда sudo принимает новый пароль и выполняет команды.
- Default‑пользователь возвращён к исходному значению.
Мини‑методология и эвристики
- Правило 1: сначала пробуйте wsl –user root — быстрее и проще.
- Правило 2: если wsl ведёт себя нестабильно — используйте исполняемый файл dистрибутива и config –default-user root.
- Правило 3: всегда возвращайте default‑пользователя и проверяйте sudo.
Эта методика предполагает, что у вас есть доступ к локальной Windows‑учётной записи, которая владеет установленным дистрибутивом WSL.
Модель мышления (mental model)
WSL запускает дистрибутив как набор процессов Windows. По умолчанию он автоматически логинит назначенного пользователя. Чтобы изменить пароль без знания старого пароля, нужно временно получить shell с привилегиями root внутри дистрибутива — тогда passwd позволит задать новый пароль для любого пользователя.
Решение для отказа (rollback)
Если после смены пароля что‑то пошло не так:
- Войдите как root (через wsl –user root или config –default-user root).
- Верните пароль предыдущего состояния, если помните его.
- В крайнем случае экспортируйте данные: wsl –export
backup.tar, затем установите новый экземпляр и импортируйте данные назад.
Безопасность и рекомендации
Важно:
- Не используйте простой или общеизвестный пароль.
- Не оставляйте root как default‑пользователя после завершения операции.
- Храните пароли в защищённом менеджере паролей.
Примечание: этот метод не уменьшает безопасность вашей системы, если у вас есть доступ к Windows‑пользователю. Защищайте Windows‑учётную запись, поскольку владение Windows‑профилем фактически даёт контроль над установленными WSL‑дистрибутивами.
Частые ошибки и как их исправить
- Ошибка: не могу найти файл ubuntu2004.exe — проверьте папку WindowsApps и список приложений Microsoft Store. Возможно, у вас другой дистрибутив (например, Debian, kali).
- Ошибка: wsl –user root сразу закрывается — запустите wsl -d
–user root или используйте exe‑файл. - Ошибка: после смены пароля sudo все равно не принимает — убедитесь, что вводите пароль корректно (символы не отображаются), и что вы сменили пароль для нужного имени пользователя.
Decision flow (Mermaid)
flowchart TD
A[Забыли пароль WSL] --> B{Попробовать wsl --user root}
B -->|Да, открылось| C[Выполнить passwd , выйти, проверить sudo]
B -->|Не открылось| D[Найти exe в WindowsApps]
D --> E[Выполнить .exe config --default-user root]
E --> F[Запустить дистрибутив, выполнить passwd ]
F --> G[Вернуть default-user, проверить sudo]
C --> H{sudo работает?}
G --> H
H -->|Да| I[Готово]
H -->|Нет| J[Диагностика: версия WSL, экспорт данных и переустановка] Короткий глоссарий (одна строка)
- WSL — подсистема Windows для запуска Linux‑среды.
- root — системный суперпользователь в Linux.
- sudo — команда для выполнения задач с привилегиями root.
- passwd — инструмент для смены пароля пользователя.
- default‑user — пользователь, который автоматически логинится в сессии WSL.
Советы по локальному резервному копированию
Перед большими изменениями скопируйте важные файлы из домашней директории:
wsl -d -- tar -czf /mnt/c/Users/<имя>/wsl-home-backup.tar.gz -C /home/ . Это создаст архив на вашем диске C: с копией домашней директории.
Короткое резюме
- Вы можете сбросить забытый пароль в WSL, временно получив shell root и вызвав passwd.
- Самый простой способ — wsl –user root; более надёжный — переключение default‑user через исполняемый файл дистрибутива.
- Всегда возвращайте default‑пользователя и проверяйте работу sudo.
Важно: защищайте доступ к вашей Windows‑учётной записи — обладание ей эквивалентно контролю над вашими WSL‑дистрибутивами.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента