You are currently viewing WSL Setup

WSL Setup

  • Post category:LINUX

🧰 1. Check your current WSL setup

Open PowerShell (Admin):

wsl -l -v

This shows existing distros.


🚀 2. Install a fresh Ubuntu (simple method)

If you just want a new clean Ubuntu:

wsl --install -d Ubuntu

👉 If Ubuntu is already installed, install a different version:

wsl --install -d Ubuntu-22.04

You can see all available distros:

wsl --list --online

🧪 3. Create MULTIPLE Ubuntu instances (recommended for you)

Since you want:

  • one for web dev (PHP/MySQL)
  • one for Docker

👉 Best method = clone via export/import


📦 Step 3.1: Export base Ubuntu

mkdir C:\WSL\Backups
wsl --export Ubuntu C:\WSL\Backups\ubuntu-base.tar

🧱 Step 3.2: Create new instances

mkdir C:\WSL\Ubuntu-Web
mkdir C:\WSL\Ubuntu-Dockerwsl --import Ubuntu-Web C:\WSL\Ubuntu-Web C:\WSL\Backups\ubuntu-base.tar
wsl --import Ubuntu-Docker C:\WSL\Ubuntu-Docker C:\WSL\Backups\ubuntu-base.tar

🔄 4. Run and switch between instances

▶️ Open a specific instance

wsl -d Ubuntu-Web
wsl -d Ubuntu-Docker

⭐ Set default instance

wsl --set-default Ubuntu-Web

Now just typing:

wsl

opens that one.


👤 5. Create a user (IMPORTANT)

Imported distros often start as root.

Inside each instance:

adduser dev
usermod -aG sudo dev

Then run:

wsl -d Ubuntu-Web -u dev

⚡ 6. Useful daily commands

List distros

wsl -l -v

Shutdown everything

wsl --shutdown

Run command inside specific distro

wsl -d Ubuntu-Web -- php -v
wsl -d Ubuntu-Docker -- docker ps

💾 Bonus: Backup any instance

wsl --export Ubuntu-Web C:\backup\ubuntu-web.tar

Restore:

wsl --import Ubuntu-Web-Restore C:\WSL\Restore C:\backup\ubuntu-web.tar

Leave a Reply