openSUSE for WSL
WSL (Windows Subsystem for Linux) is a special interface of the Microsoft Windows 10 operating system that allows to run Linux user space programs on top of the Windows kernel. In a sense similar to how a chroot or containers work on Linux.
Enabling WSL on Windows 10
WSL is not enabled by default on Windows 10. It needs to be installed explicitly for WSL apps to work. There are two ways to enable WSL:
Open a command prompt (cmd.exe) as administrator and run the following command:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
- Open Control Panel (Start > Windows System > Control Panel).
- If you see eight to ten items: Click the "View by:" drop-down box and select, "Small icons."
- Open "Programs and Features."
- Click the "Turn Windows features on or off" hyperlink.
- In the Windows Features window, check "Windows Subsystem for Linux." The list is alphabetized, so it should appear near the bottom.
- Click the OK button to close the Windows Features Window.
- Close the Control Panel.
- Restart your computer (Required).
Installing openSUSE on WSL
The easiest way to get openSUSE for WSL is to install the apps from the app store:
The app store also offers SUSE Linux Enterprise versions:
Alternatively it's also possible to install development versions manually
Known Issues and limitations
- The apps unpack a root file system tarball in a WSL specific location in the Windows C: drive. Make sure to have sufficient space there. Other drives will not work due to limitations of WSL!
- Since the root filesystem is disconnected from the app after installation, any potential update of the app won't actually update the root file system content. The installed openSUSE system on WSL has to be updated from within as usual using zypper patch for maintenance updates, resp zypper up or zypper dup for updates and upgrades.
- A system in WSL does not actually boot and does not use systemd. A proprietary Microsoft /init binary initializes the system. Therefore service management does not work like in a VM. It rather behaves like an interactive container.
- zypper is currently not working on certain newer Windows builds due to use of the wslfs file system (https://github.com/microsoft/WSL/issues/3972). A work around is to mount a tmpfs on /var/tmp by adding the following line to /etc/fstab:
tmpfs /var/tmp tmpfs defaults 0 0
Bugs about openSUSE on WSL can be reported in Bugzilla
WSL specific bugs unrelated to openSUSE have to be reported to Microsoft via GitHub
- Common Error Codes
- About Windows Subsystem for Linux (WSL)»
- Windows 10 Installation Guide»
- Windows Server Installation Guide»
- Windows Subsystem for Linux (WSL) for Enterprise»
- Frequently Asked Questions about Windows Subsystem for Linux (WSL)»
- Troubleshooting Windows Subsystem for Linux (WSL)»
- About WSL2
- Run Linux tools from a Windows command line»
- Run Windows tools from WSL»
- Share environment variables between Windows and WSL»