常规做法

通常在Linux中开机启动可以通过
1.编辑/etc/rc.loacl
2.在/etc/init.d/ 下添加启动脚本
3.配置systemd
但这几种方式在子系统中无法使用,我们可以通过Windows 间接的启动子系统中的服务。

在子系统中创建脚本

sudo vim /etc/init.wsl

脚本内容如下

#! /bin/sh
/etc/init.d/ssh start
/etc/init.d/mysql start
/etc/init.d/php-fpm start
/etc/init.d/nginx start 
sudo chmod +x /etc/init.wsl

在Windows中创建脚本

在Windows下 输入快捷键 WIN+R 打开运行窗口
输入 shell:startup
打开Windows 启动脚本目录
在该目录下新建 linux-start.vbs
内容如下

Set ws = WScript.CreateObject("WScript.Shell")        
ws.run "wsl -d Ubuntu-18.04 -u root /etc/init.wsl"

上面脚本中的 wsl -d 后面的参数是你所安装的子系统的版本 可以通过wsl -l查看
现在可以重启Windows验证下

GitHub 加速计划 / ws / WSL
12
0
下载
Issues found on WSL
最近提交(Master分支:5 个月前 )
8c61f09e * Add super user detection; a powershell approach is used * use the 'id' command * avoid stderr warning & wsl alias 4 天前
ae780d11 4 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐