A Beginner's Guide To Use Windows Subsystem For Linux

In this blog, we will learn how to create or move files and folders to Linux root system from Windows. Familiarity with Windows Subsystem for Linux (WLS) is required. Please read my earlier blog post -  Windows Subsystem For Linux - Run Linux on Windows (It's FAST).

This is part 3 of our 4 part series. You can find the full series here:

  1. Part 1 – Linux Vs Windows (Why Linux For Programming & Web Dev)
  2. Part 2 – Windows Subsystem For Linux - Run Linux on Windows (It's FAST)
  3. Part 3 –  A Beginner's Guide Use Windows Subsystem For Linux 👇
  4. Part 4 - How to Install and Use Git and Visual Studio Code Editor with WSL on any Linux Project

This blog post is written purely for beginners who wants to get into programming or web development.

In my previous article where I introduced an overview of Windows Subsystem for Linux (WSL), we learnt the newer version of WSL architecture (WSL 2) is faster than the previous (WSL 1). We also learnt there are a couple of key changes in the new architecture. The key changes are:

  1. Your files need to be moved in the Linux file system instead of Windows system.
  2.  For now, an IP address is needed to access network applications.

Let's cover this one by one.

📁 Move all files inside of Linux Root System

We will move our files into Linux system. But first, let's find the home directory in Linux.

  • Launch Ubuntu 18.04 command line. Do read my previous blog to better understand Ubuntu command line in WSL
  • Run this command: explorer.exe .
  • Don't skip the space after exe and dot at the end of the command.
  • A folder will be automatically open up once the command executes. The network path to that folder will be like this: \\wsl$\Ubuntu-18.04\home\ajeet
  • You can see all the files, such as .bash files and .wsl config file, created inside this folder automatically.
    Files created by WSL
    Image: Files created by WSL
  • These are the system files. To understand, consider these files and folder similar to C-Drive files/folder in Windows. You can create a folder here. Let's create a new folder "ajeet".
  • This folder "ajeet" can also be seen using Linux command. Run ls in the Ubuntu terminal.
    see files and folder in Ubuntu using command
    Image: see files and folder in Ubuntu using command
  • You can now move files and folders into this networked folder, and work independently with Linux distro.
  • We can also install Python in this folder and learn coding Here is how to install Python.

 🖧 Access network applications

For now in WSL architecture, we need to use an IP to access network apps since Linux is inside a virtual machine. This IP can be see if you run a local server. In the newly created networked folder, you can install nvm, node.js and npm, and run a local server for an app. Learn how to install nvm, node.js, and npm. Once the app is created, you can use an IP like this 192.168.28.2:3000 to access your app. 

This section is beyond the scope of this blog post as it will need an advance knowledge of command line tools and concepts. For beginners, the previous section is enough to start learning web development and programming.

💡 What's Next

In my next blog, I will write a post on How to Install and Use Git and Visual Studio Code Editor with WSL on any Linux Project.

Happy Coding ! 🤓


Credits 🙏 : 
Official Microsoft Docs on WSL
Windows and Linux logos taken from SimpleIcons
Emojis taken from Emojipedia
Cover image built with BlogCover

 

Comments