Start WSL2 services on Windows startup

By Dillon Smart · · · 0 Comments

Start Windows Subsystem for Linux services

In some circumstances, you may want to automatically start your WSL2 (Windows Subsystem for Linux) services on Windows startup such as Apache2, Nginx, and MySQL. Follow along below to learn how to start your services when you boot your machine.

Create a startup script

The first step is to create a startup script. This is the script that will be executed when you turn your machine on.

From the terminal, create and open a new shell script file:

nano /etc/init.sh

You may require elevated privileges, so use sudo if needed.

Within the new file, copy the following commands. You can add more commands for other services.

#!/bin/sh
service apache2 start
service mysql start

WSL2 start services on Windows Startup
After creating and saving the script you will need to make it executable:

chmod +x /etc/init.sh

Create a new Windows Task

From the start menu in Windows, search and open Task Scheduler.

In the right-hand panel, select Task Scheduler Library.

In the left-hand panel under Actions, select “Create Task…”. This will open a new window with the “General” tab selected.

Enter a name and description for your task.

Under security options within the “General” tab, select “Run whether user is logged on or not” and “Run with highest privileges”.

Create a new task scheduler task in Windows for WSL Windows Subsystem for Linux

Next, select the “Actions” tab > “New…”. This will open another window.

Enter the following in the Program/script input field.

wsl -d Ubuntu-18.04 -u root /etc/init.sh

Ensure you replace the Ubuntu version with the correct Ubuntu version.

Add an action to call WSL script in Windows Task

Select OK.

Finally, select the Conditions tab. From here you can configure the criteria that best suits you.

Select OK.

Conclusion

You have successfully created a new task to start WSL2 services on Windows startup. To make sure things are working correctly, reboot your machine.

For help setting up WSL for web developers, check out The ULTIMATE guide to setup Windows Subsystem for Linux (WSL) with Ubuntu, Apache2, MySQL and PHP

UbuntuWindowsWindows Subsystem for Linux

0 Comment

Was this helpful? Leave a comment!

This site uses Akismet to reduce spam. Learn how your comment data is processed.

How to create Alias command in Linux

Updated 16th August 2022

Alias commands in Linux are a great way to speed up your workflow. In this post, I will show you how to create Alias command in Linux using Bash on WSL (Windows Subsystem for Linux). What is an Alias command? The alias command in Linux allows you to create custom shortcuts for frequently used commands.

The Ultimate guide to create Apache2 Virtual Hosts (2022)

Updated 16th August 2022

In this post, I will be creating Virtual Hosts for Apache2 on WSL2 (Windows Subsystem for Linux). Follow along with this Ultimate guide to create Apache2 Virtual Hosts. The steps in this tutorial can be carried over onto any environment running Apache2. What we’ll cover Creating the directory structure Creating a symbolic link in Ubuntu

IPtables – How to block and unblock IP Addresses in Linux

Updated 14th December 2023

Not long ago, I noticed some strange activity on a server I manage. The server, running Ubuntu 22.04, was receiving high volumes of traffic from a single IP Address. After some investigation, I decided the activity resembled that of web scrapping, so I decided to block the IP Address. Iptables or ufw I hear you