Posts Tagged ‘Ubuntu’
⚙️ How to Fix Missing User Setup in Ubuntu 22 on WSL2 (Windows 11)
TL;DR:
If you installed Ubuntu 22.04 on Windows 11 using WSL2 and the system never prompted you to create a user, it means the initial setup script did not run correctly. You are now logging in as root directly. To fix this, manually create your user, grant it sudo rights, and set it as the default login account:
sudo adduser jlalou
sudo usermod -aG sudo jlalou
ubuntu2204.exe config --default-user jlalou
After restarting WSL, you’ll log in as a normal user with administrator privileges.
🧩 Understanding the Issue
When you install Ubuntu from the Microsoft Store or via the wsl --install command, WSL normally runs a first-launch configuration script. That script asks for a username, sets a password, adds the user to the sudo group, and makes it the default account for future sessions.
If that welcome prompt never appeared, Ubuntu is skipping its initialization phase. This often happens when:
- The first start was interrupted or closed prematurely.
- The distribution was imported manually with
wsl --import. - You started WSL as
rootbefore the setup script ran.
In this case, WSL falls back to the default root account, leaving no regular user configured.
✅ Step-by-Step Solution
1️⃣ Create Your User Manually
Launch your Ubuntu terminal (it will open as root), then create your desired user account:
adduser jlalou
Enter a password when prompted, and confirm the optional user details. Next, give this new account administrative privileges:
usermod -aG sudo jlalou
You can confirm the membership with:
grep jlalou /etc/group
If you see sudo listed among the groups, the user has been successfully added.
2️⃣ Make This User the Default Login Account
List your installed distributions:
wsl -l -v
You’ll see something like:
NAME STATE VERSION * Ubuntu-22.04 Running 2
In PowerShell (or Command Prompt), set your new user as the default:
ubuntu2204.exe config --default-user jlalou
(The command name may vary slightly—use Get-Command *ubuntu* in PowerShell if you’re unsure.)
Close all Ubuntu windows and reopen WSL. You should now log in automatically as jlalou.
3️⃣ Verify Everything Works
Once inside the shell, check your identity and privileges:
whoami # Expected output: jlalou sudo ls /root # Should prompt for your password and succeed
If both commands work, your configuration is complete.
🔁 Optional: Trigger the Initial Setup from Scratch
If you prefer to start over and allow Ubuntu’s built-in setup wizard to handle everything automatically, simply unregister and reinstall the distribution:
wsl --unregister Ubuntu-22.04 wsl --install -d Ubuntu-22.04
Upon first launch, Ubuntu will display:
Installing, this may take a few minutes... Please create a default UNIX user account.
From there you can define your username and password normally.
🧠 Why This Happens
WSL integrates tightly with Windows, but when the initialization script fails, it bypasses Ubuntu’s user-creation process. This can occur when the image is imported, cloned, or restored without the metadata WSL expects. As a result, Ubuntu runs entirely as root, skipping all onboarding logic.
While this is convenient for testing, it’s not secure or practical for daily use. Running as a dedicated user with sudo access ensures safer file permissions, a more predictable environment, and compatibility with Ubuntu’s standard management tools.
🧾 Summary Table
| Goal | Command |
|---|---|
| Create user | adduser jlalou |
| Grant sudo rights | usermod -aG sudo jlalou |
| Set as default login | ubuntu2204.exe config --default-user jlalou |
| Verify identity | whoami / sudo echo ok |
🚀 Conclusion
Missing the initial user setup prompt in Ubuntu 22 under WSL2 can be confusing, but it’s easily corrected. Creating a dedicated user and assigning sudo privileges restores the intended WSL experience—secure, organized, and fully functional. Once configured, you can enjoy seamless integration between Windows 11 and Ubuntu, with the flexibility and power of both operating systems at your fingertips.