Support for starting the Linux services in Windows Subsystem for Linux (WSL) on Windows startup.
- Clone to any directory using the git command: (e.g
C:\wsl-autostart)
git clone https://github.com/troytse/wsl-autostart-
Add a string item under
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run(e.gWSLAutostart)
-
Modify
/etc/sudoersin the WSL to specify the service commands calling on startup without a password. -
For example,
-
for the distribution Ubuntu and other Debian derivates:
%sudo ALL=NOPASSWD: /etc/init.d/cron %sudo ALL=NOPASSWD: /etc/init.d/ssh %sudo ALL=NOPASSWD: /etc/init.d/mysql %sudo ALL=NOPASSWD: /etc/init.d/apache2 -
for the distribution Opensuse:
%users ALL=(ALL) NOPASSWD: /usr/sbin/cron
-
-
Modify
commands.txtin the wsl-autostart directory to specify the service commands accordingly. For example,-
for the distribution Ubuntu and other Debian derivates:
/etc/init.d/cron /etc/init.d/ssh /etc/init.d/mysql /etc/init.d/apache2
-
for the distribution Opensuse:
/usr/sbin/cron
-
- Using
gpedit.msc, it is possible to define a program that runs when the computer startsNote that the configured program will run as the system user.
- Using
taskschd.msc, it is possible to schedule a task after the startup of the computer.You may configure which user will run the program, a delay before a run and a number of retries. the same
taskschd.mscprogram will show a specific log regarding the execution of the task
See here how to avoid the UAC prompt. One option is:
- create an elevated shortcut by https://winaero.com/blog/create-elevated-shortcut-to-skip-uac-prompt-in-windows-10/ (or more conveniently by the Winaero Tweaker as pointed out at the end of these instruction) and
- put it into the startup folder
%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

