Я использую Ubuntu в Windows, загруженную из Магазина Microsoft. Я создал пароль пользователя, но, похоже, я забыл его или набрал его неправильно. Для команд sudo мой пароль пользователя не работает.
Поскольку я не могу перезагрузить систему как Linux, используя Grub для сброса пароля, есть ли другой способ сбросить пароль пользователя без переустановки приложения (у меня уже установлено несколько приложений)?
Откройте командную строку, введите либо ubuntu config --default-user root
, либо lxrun /setdefaultuser root
. Нажмите Enter.
Затем откройте оболочку Linux Bash, и она войдет в систему как пользователь root без запроса пароля. Поэтому вы можете использовать следующую команду для сброса забытого пароля пользователя:
passwd user_name
Когда закончите, откройте командную строку и выполните эту команду:
ubuntu config --default-user user_name
Это установит ваш Linux Bash shell для запуска с обычным пользователем.
Источник: https://www.top-password.com/blog/forgot-linux-bash-password-in-windows-10/
Это было действительно сложно, когда я сам столкнулся с этой ситуацией и в конце концов решил ее.
Сначала запустите «Ubuntu», введите cat /etc/passwd/
и запишите номер UID и выйдите из терминала.
Как показано ниже в терминале
mandheer@WKWIN1754031:~$ cat /etc/passwd
корень:x:0:0:корень:/корень:/bin/баш
демон:x:1:1:демон:/usr/sbin:/usr/sbin/nologin
бин:х:2:2:бин:/бин:/usr/sbin/nologin
mandheer:x:1000:1000:,,,:/home/mandheer:/bin/bash
Запишите идентификатор пользователя «root» и вошедшего в систему пользователя (в данном случае «mandheer»)
root
это 0
а для пользователя mandheer
это 1000
WSL (подсистема Windows для Linux) использует реестр для определения некоторых значений, включая вошедшего в систему пользователя при начальном запуске.
Просто нажмите win+R
, затем введите regedit
, чтобы открыть редактор реестра.
Перейдите к :
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss
Проверьте установленные дистрибутивы и перейдите к дистрибутиву «Ubuntu».
Затем перейдите к "DefaultUid"
1000
в десятичном или 0x3e8
в шестнадцатеричном "DefaultUid"
значение равное 0
в виде десятичного числа для пользователя root
Откройте 'Ubuntu' , он должен начаться с уже зарегистрированным пользователем root .
Затем запустите команду passwd <имя_пользователя>
, например #$passwd mandheer
Введите новый пароль и повторите его.
bash#>passwd <существующее имя пользователя> и нажмите Enter
Новый пароль: <введите здесь пароль>
Повторите пароль: <повторно введите пароль здесь>
Теперь ваш существующий пароль для имени пользователя сбрасывается на новый пароль.
1000
как десятичное для mandheer
пользователяUbuntu
снова и он должен войти в систему с вашим существующим пользователем, не запрашивая пароль.
$sudo su
, чтобы получить root-доступ. У меня включен WSL и на моем компьютере установлена Ubuntu. Согласно сайту MS Docs*, я запустил PowerShell (powershell.exe
) и выполнил wsl -u root
, а затем выполнил passwd
. Я ввел новый пароль после запроса и сброс завершен. Это все для меня. Я использую Win10 [версия 10.0.19041.572] и запускаю «Ubuntu 20.04.1 LTS»
Ref: *: https://docs.microsoft.com/en-us/windows/wsl/user-support#forgot-your-password