# Windows Subsystem for Linux (WSL) The Windows Subsystem for Linux (WSL) enables running [[Linux]] distributions on Windows machines without the need for a separate virtual machine or dual booting. WSL is ideal for software development, and for using Linux-based tools (e.g., [[Ollama]]), (mostly) without having to worry about Windows shenanigans. ## Global configuration Previously, WSL could be configured via a configuration file within the WSL VM, under `/etc/wsl.conf`. It's still possible, but we can now also create a file called `%USERPROFILE%/.wslconfig`, to configure settings globally (applied to ALL WSL VMs). More details here: https://learn.microsoft.com/en-us/windows/wsl/wsl-config#wslconfig ## Mirrored mode Using the global WSL configuration (cfr previous section), it's possible to enable a mirrored networking mode, where the networking works the same way on the host and within WSL VMs. Details: https://learn.microsoft.com/en-us/windows/wsl/networking#mirrored-mode-networking WSL2 (the modern default, replacing the original WSL1 syscall-translation layer) runs a real Linux kernel inside a lightweight utility VM under [[Hyper-V]] — which is why enabling WSL2 also enables the Hyper-V hypervisor on the host. ## References - Official documentation: https://learn.microsoft.com/en-us/windows/wsl/ - Installation guide: https://learn.microsoft.com/en-us/windows/wsl/install - Ubuntu installation for WSL: https://ubuntu.com/desktop/wsl ## Related - [[Hyper-V]] - [[Linux]] - [[WSL2 Distro Manager]]