Windows Server Insider build 16257 brought a number of new features, including WSL: Windows Subsystem for Linux. In a post on the Windows blog, Microsoft provides more detail on what the WSL is and why Microsoft chose to include WSL in the newest Windows Server Insider build.
Microsoft wants Windows 10 to be a great place to be for developers and wantsdevelopers to have all the tools they need at their disposal. Microsoft knows that developers may need Linux to develop their apps and chose to include WSL in the newest Windows Server Insider Preview build for that reason.
Before Microsoft included WSL on Windows Server, developers had two options for using Linux in Windows 10:
- Run something like Cygwin and rely on Win32 ports of common GNU tools.
Cygwin is a great toolset but it runs into issues when using tools that haven’t been ported to Windows. Many tools simply aren’t available. This is especially common when trying to build and run Ruby & Java solutions, which utilize some Linux-only Gems, libraries and components.
The tools available through Cigwin and other Win32 ports are also notorious for being out of date – which is understandable since updating them requires recompiling them for Windows. For Windows users, however, this is both inconvenient and often leads to troublesome compatibility issues when running, building or deploying software.
- Use Linux in a virtual machine.
Virtual machines are designed for production workloads on Windows Server. They aren’t ideal for things closely tied to the Windows Server host. If you need basic Linux command-line tools integrated with their Windows system, a virtual machine will be cumbersome.
Obviously, these two options were a pain for developers to deploy, so Microsoft chose a better option by providing WSL on Windows Server. Now, running Linux on WSL allows developers to run unmodified Linux (ELF64) binaries natively. WSL allows developers to have the ability to install and run almost every Linux command-line tool integrated in Windows.
Now that Windows Server has WSL and Linux containers with Hyper-V isolation, there is a number of Linux options available for developers. If you are interested in getting started, there is an Windows Server 2016 installation guide available here. Once installed, you will be able to use WSL on Windows Server to start running Linux along with Cmd and PowerShell on your servers.