Book Image

Windows Subsystem for Linux 2 (WSL 2) Tips, Tricks, and Techniques

By : Stuart Leeks
Book Image

Windows Subsystem for Linux 2 (WSL 2) Tips, Tricks, and Techniques

By: Stuart Leeks

Overview of this book

Windows Subsystem for Linux (WSL) allows you to run native Linux tools alongside traditional Windows applications. Whether you’re developing applications across multiple operating systems or looking to add more tools to your Windows environment, WSL offers endless possibilities. You’ll start by understanding what WSL is and learn how to install and configure WSL along with different Linux distros. Next, you'll learn techniques that allow you to work across both Windows and Linux environments. You’ll discover how to install and customize the new Windows Terminal. We'll also show you how to work with code in WSL using Visual Studio Code (VS Code). In addition to this, you’ll explore how to work with containers with Docker and Kubernetes, and how to containerize a development environment using VS Code. While Microsoft has announced support for GPU and GUI applications in an upcoming release of WSL, at the time of writing these features are either not available or only in early preview releases. This book focuses on the stable, released features of WSL and giving you a solid understanding of the amazing techniques that you can use with WSL today. By the end of this book, you’ll be able to configure WSL and Windows Terminal to suit your preferences, and productively use Visual Studio Code for developing applications with WSL.
Table of Contents (16 chapters)
1
Section 1: Introduction, Installation, and Configuration
5
Section 2:Windows and Linux – A Winning Combination
11
Section 3: Developing with the Windows Subsystem for Linux

Accessing Windows files from Linux

By default, WSL automatically mounts your Windows drives inside WSL distributions (distros). These mounts are created in /mnt; for example, your C: drive is mounted as /mnt/c. To try this out, create a folder called wsl-book on your C: drive and place an example.txt file in it (the contents of the text file don't particularly matter). Now, fire up a terminal in WSL and run ls /mnt/c/wsl-book, and you will see the file you created listed in the Bash output:

Figure 5.1 – A screenshot showing listing folder contents from Windows and WSL

This screenshot includes the directory listing from Windows showing example.txt in Command Prompt on the left, and the same file listed through the /mnt/c path in a WSL distro on the right.

You can interact with the mounted files as you would any other file; for example, you can cat the file to see its contents:

$ cat /mnt/c/wsl-book/example.txt
Hello from a Windows file!
...