Windows Subsystem for Linux lets you use Linux commands, applications, and development tools without replacing Windows 11 or creating a traditional virtual machine. It is the simplest option for most people who want Ubuntu, Debian, Kali Linux, or another supported distribution alongside their normal Windows apps.
The standard installation takes only one command:
wsl --installThat command enables the required Windows components, installs WSL 2, and downloads Ubuntu as the default Linux distribution. After restarting the computer, you create a Linux username and password and can begin using the Linux terminal.
WSL is particularly useful for programming, Git, Python, Node.js, Bash scripting, SSH, Linux package managers, and tools designed for Linux servers. It can also run many graphical Linux applications, although it is not intended to replace a complete Linux desktop.
What WSL Does on Windows 11
WSL creates a Linux environment that works closely with Windows. You can open Linux from the Start menu or Windows Terminal, reach Windows files from Linux, launch Windows applications from a Linux shell, and run supported Linux GUI apps beside Windows programs.
WSL does not repartition the drive, remove Windows, or make you choose an operating system whenever the computer starts. Closing the Linux terminal returns you to normal Windows use.
There are two WSL architectures:
- WSL 1 translates Linux system calls so they work with Windows.
- WSL 2 uses a real Linux kernel inside a lightweight virtual machine managed automatically by Windows.
WSL 2 is the current default and the better choice for most new installations. It offers broader application compatibility, full Linux system-call support, systemd support, and strong performance when Linux tools work with files stored inside the Linux file system.
WSL 1 can still be useful in specialized workflows that repeatedly access project files stored on the Windows file system, but most readers should begin with WSL 2.
Check the Requirements Before Installing WSL
A current Windows 11 installation supports the simplified WSL setup. You will also need:
- An administrator account
- An internet connection for downloading WSL and a distribution
- Enough free storage for the Linux distribution and its files
- Hardware virtualization for WSL 2
To check virtualization:
- Press
Ctrl + Shift + Escto open Task Manager. - Select Performance.
- Choose CPU.
- Find Virtualization below the CPU graph.
You can continue when the status is Enabled. A Disabled status means the processor may support virtualization, but the feature is turned off in the computer’s firmware.
The setting may be called Intel Virtualization Technology, Intel VT-x, AMD-V, SVM, or SVM Mode. Use How to Open BIOS in Windows 11 if you need to reach the firmware settings. Change only the virtualization option unless you understand the effect of other firmware controls.
Install WSL and Ubuntu on Windows 11
Save your work before starting because Windows may require a restart.
- Right-click the Start button.
- Select Terminal (Admin).
- Approve the User Account Control prompt.
- Enter this command:
wsl --install- Wait while Windows enables the necessary features and installs Ubuntu.
- Restart the computer when prompted.
The distribution may open automatically after the restart. When it starts for the first time, it decompresses and prepares its files before asking you to create a Linux account.
Enter a username and then a password. This Linux account is separate from your Windows account. The terminal will not display letters, dots, or asterisks while you type the password, but it is still receiving your input. Press Enter when finished.
You can now run Linux commands from the Ubuntu terminal.
Microsoft maintains the current installation requirements and command options in its official WSL installation documentation.
Install a Different Linux Distribution
Ubuntu is a sensible starting point for beginners, but it is not the only choice. To see the distributions currently available through WSL, open PowerShell or Windows Terminal and run:
wsl --list --onlineThe shorter form produces the same list:
wsl -l -oInstall a distribution by using its exact name from the results. For example:
wsl --install -d DebianYou can install more than one distribution and keep separate tools, packages, and files inside each one.
To list distributions already installed on the PC, their current state, and whether each uses WSL 1 or WSL 2, run:
wsl --list --verboseor:
wsl -l -vSet the distribution used by the plain wsl command with:
wsl --set-default DistroNameReplace DistroName with the installed distribution’s exact name.
Open Linux After the First Setup
There are three convenient ways to start an installed distribution:
- Search the Start menu for Ubuntu, Debian, or its distribution name.
- Open Windows Terminal and select the distribution from the profile menu.
- Run
wslin PowerShell, Command Prompt, or Windows Terminal.
The wsl command opens the default distribution. To start a specific one without changing the default, use:
wsl --distribution DebianType exit when you want to leave the Linux shell and return to PowerShell or Command Prompt.
Update WSL and Linux Packages
WSL and the packages inside a Linux distribution are updated separately.
Run this command in PowerShell or Windows Terminal to update WSL itself:
wsl --updateThen restart the WSL environment:
wsl --shutdownOpen the distribution again after the command finishes.
Ubuntu and Debian packages are updated from inside the Linux terminal. Run:
sudo apt update
sudo apt upgradeThe first command refreshes the available package information. The second installs available upgrades. These commands update Linux packages, not Windows.
To install a package, use its package name. For example:
sudo apt install gitCommands and package managers differ between distributions, so instructions written for Ubuntu may not apply unchanged to openSUSE, Fedora, Arch, or Kali Linux.
Access Windows Files From WSL
WSL mounts fixed Windows drives below /mnt. The C drive normally appears at:
/mnt/cFor example, this command moves to the Windows users folder:
cd /mnt/c/UsersYour personal Windows folder will normally be located at /mnt/c/Users/YourName, with YourName replaced by the actual Windows profile folder.
This access is helpful when you need to read or copy an existing Windows file. However, a project that mainly uses Linux tools should normally be stored inside the Linux file system for better WSL 2 performance.
For example, keep a Linux development project somewhere below:
/home/your-linux-username/rather than working on it continually through /mnt/c. This avoids unnecessary cross-file-system activity during operations such as git clone, npm install, compilation, and package management.
Access Linux Files From Windows
Open File Explorer and enter this path in the address bar:
\\wsl$File Explorer will display the Linux distributions available through WSL. Current Windows 11 versions may also show Linux directly in the navigation pane.
Ordinary documents and project files can be opened through File Explorer. Avoid changing Linux system files with Windows applications unless you understand the consequences. Do not manually modify the distribution’s virtual disk or hidden application-data files.
From the Linux terminal, you can open the current folder in File Explorer with:
explorer.exe .The period represents the current Linux directory.
Run Linux GUI Apps and Windows Programs
Current WSL versions on Windows 11 can run supported Linux graphical applications. After installing a GUI package inside the distribution, launch it from the Linux terminal like another Linux program. Its window can appear beside normal Windows applications.
This feature is suitable when you need a particular Linux GUI tool. It does not provide a complete GNOME, KDE, or other desktop session. A traditional virtual machine is a better fit when your goal is to explore an entire Linux desktop environment.
Interoperability also works in the other direction. A Linux shell can launch many Windows executables by including the .exe extension. For example:
notepad.exeThat command opens Windows Notepad without closing the Linux session.
Check Whether systemd Is Running
Current WSL supports systemd, the service manager used by many Linux distributions. The current Ubuntu version installed by the standard WSL command uses systemd by default, although another distribution or an older installation may need additional configuration.
Check its status from inside Linux with:
systemctl statusAn error saying the system was not booted with systemd means it is not active in that distribution. Update WSL first with wsl --update, check the distribution’s current documentation, and enable systemd only when it is supported.
Fix Common WSL Installation Problems
The Install Command Shows Help Instead of Installing Ubuntu
This usually means WSL is already present but no distribution was selected. List the available distributions:
wsl --list --onlineThen install Ubuntu directly:
wsl --install -d UbuntuThe Download Remains at 0 Percent
Try the web-download option documented by Microsoft:
wsl --install --web-download -d UbuntuConfirm that the internet connection is stable and that security or organization policies are not blocking the download.
WSL Reports That Virtualization Is Disabled
Check Task Manager under Performance > CPU. Restart the PC and enable the relevant virtualization setting in BIOS or UEFI when Task Manager shows it as disabled.
Do not update the BIOS merely because virtualization is turned off. Most compatible computers only require the existing setting to be enabled. You can use How to Check the BIOS Version in Windows 11 when you need to identify the installed firmware before following manufacturer-specific advice.
WSL Stops Responding
Close open Linux work and run this from PowerShell or Windows Terminal:
wsl --shutdownStart the distribution again. When the problem continues, update WSL with wsl --update and restart Windows.
Use this command when only one distribution needs to be stopped:
wsl --terminate DistroNameReplace DistroName with the exact name shown by wsl -l -v.
Convert an Existing Distribution to WSL 2
Check the installed distributions and their WSL versions:
wsl -l -vTo convert Ubuntu from WSL 1 to WSL 2, run:
wsl --set-version Ubuntu 2The conversion can take time when the distribution contains many files. Back up important Linux data first because Microsoft warns that switching architecture can fail with large projects.
Set WSL 2 as the default for future installations with:
wsl --set-default-version 2Remove a Linux Distribution Safely
Unregistering a distribution permanently deletes its Linux files, installed software, and settings. It is not the same as shutting WSL down.
List the exact distribution names first:
wsl -l -vAfter backing up anything important, remove a distribution with:
wsl --unregister DistroNameReplace DistroName with the correct name. Do not run this command merely to fix a frozen session. Use wsl --shutdown or wsl --terminate DistroName instead so the distribution’s data remains intact.
Is WSL Better Than a Virtual Machine or Dual Boot?
WSL is usually the best starting point when you want Linux terminal tools, programming environments, package managers, or access to Linux servers while continuing to use Windows.
A virtual machine is more suitable when you want a complete Linux desktop, virtual hardware controls, isolation, or snapshots. Dual boot provides Linux with direct access to the physical hardware, but it requires disk partitioning and a restart whenever you switch operating systems.
For learning Bash, Git, SSH, Python, Linux packages, or web development, WSL avoids the added setup and risk of repartitioning the computer. You can install it with one command, keep Windows available, and remove the Linux distribution later when you no longer need it.


