If you forgot the password for your user account in a WSL Linux distro, and are unable to log in to its console, then this article will definitely be useful for you. We will see how to reset the account password in WSL Linux without using third party tools.
Advertisеment
The ability to run Linux natively in Windows 10 is provided by the WSL feature. WSL stands for Windows Subsystem for Linux, which initially, was limited to Ubuntu only. Modern versions of WSL allow installing and running multiple Linux distros from Microsoft Store.
After enabling WSL, you can install various Linux versions from the Store. You can use the following links:
and more.
When you start a WSL distro for the first time, it opens a console window with a progress bar. After a moment of waiting, you will be prompted to type a new user account name, and its password. This account will be your default WSL user account that will be used to sign-in automatically every time you run the current distro. Also, it will be included in the 'sudo' group in order to allow it to run commands elevated (as root).
Each Linux distribution running on the Windows Subsystem for Linux has its own Linux user accounts and passwords. You will have to configure a Linux user account any time you add a distribution, reinstall, or reset. Linux user accounts are not only independent per distribution, they are also independent from your Windows user account.
To Reset the Password for a WSL Linux Distro in Windows 10,
- Change the default user name for your WSL distro to root. Use the following command:
ubuntu config --default-user root
. For other distros, see Note below. - Launch your Linux distribution, e.g. type
ubuntu
, orwsl
if you are working with your default WSL distro. - Reset your password using the
passwd
command:passwd <username>
. Substitute the<username>
portion with the actual user name you want to reset the password for, e.g.#passwd winaero
. - Leave your WSL session and set the default user of the WSL distro back to your user account, e.g.
ubuntu config --default-user winaero
.
Note: Use the following commands to change your default user to root
in a WSL distro. By replacing 'root' with another user account name, you'll set it as your default user account for the distro.
- Ubuntu:
ubuntu config --default-user root
- openSUSE Leap 42:
openSUSE-42 config --default-user root
- SUSE Linux:
SLES-12 config --default-user root
- Debian:
debian config --default-user root
- Kali Linux:
kali config --default-user root
That's it.
Articles of interest:
- All Ways to Run WSL Linux Distro in Windows 10
- Set Default WSL Linux Distro in Windows 10
- Find Running WSL Linux Distros in Windows 10
- Terminate Running WSL Linux Distro in Windows 10
- Remove Linux from Navigation Pane in Windows 10
- Export and Import WSL Linux Distro in Windows 10
- Access WSL Linux Files from Windows 10
- Enable WSL in Windows 10
- Set Default User for WSL in Windows 10
- Windows 10 Build 18836 Shows WSL/Linux File System in File Explorer
Support us
Winaero greatly relies on your support. You can help the site keep bringing you interesting and useful content and software by using these options:
If you like this article, please share it using the buttons below. It won't take a lot from you, but it will help us grow. Thanks for your support!
Advertisеment
For some reason the commnad (ubuntu config –default-user root) was not working in my ubuntu wsl install.
So I opened a cmd prompt and ran wsl -u root this allowed me to run wsl as root in the cmd prompt.
Then at the root wsl prompt inside of the cmd prompt type the command to reset your account password (passwd ). You should then receive the same prompts to set a new password and confirm the new password.
Thanks to this comment I was able to change the pwd
Yes, I had the same issue and your workaround helped. Thank you!
in my Windows environment needs to call ubuntu with the version ex:
ubuntu1804 config –default-user root
, the run
ubuntu1804
Thank you very much
Thank u very much :)
type ubuntu and tab. On mine it showed the executable name was actually called ubuntu1804.exe
Thank you so much, this was helpful.
Very helpful thank you so much
But, when setting the root as a default user, we need to enter the full version of Ubuntu. For example:
CLI:
Ubuntu2004 config –default-user root
In this case the version of ubuntu is 20.40
https://www.reddit.com/r/bashonubuntuonwindows/comments/8h3my4/ubuntu_is_not_recognized_as_an_internal_or/
Thanks again
Saved my a$$. :P
A continuation of @Esam Alaslmy’s answer:
To find out the name of the command, go to:
%userprofile%\AppData\Local\Microsoft\WindowsApps
In my case I see the file: ubuntu1804.exe
To get the command you just drop the “.exe”. So for me the command is:
Please note: there are two hyphens in front of “default”
Thank you!
Thanks! It helped.
thank you <3
I’m trying to use openSUSE Tumbleweed in the WSL for class. What is the config –default-user root for openSUSE Tumbleweed
thanks.
If anybody have “ubuntu is not recognized as an internal or external command”, then add %userprofile%\AppData\Local\Microsoft\WindowsApps
to the system path or run cmd from there.
The problem is there is no config in windows command prompt