赞
踩
最近在使用wsl部署服务,看了不少wsl自启动的帖子,在这里总结一下。
大概思路:通过运行windows中的启动脚本,来启动wsl内的脚本,从而启动服务。
总结:在写完脚本后前面几次测试服务没有正常启动,通过一步一步排查发现是启动命令写错了。如果有问题,建议按测试步骤一步一步排查
不同系统带来的问题不一样,最后附有博主电脑配置,可供参考
参考链接:
#创建启动脚本 “init.wsl”,填写启动服务的命令
vim /etc/init.wsl
#! /bin/bash #以下根据需要自行更改 sudo service nginx start sudo service supervisor start#设置运行权限
sudo chmod +x /etc/init.wsl
#检查是否可以运行
sudo /etc/init.wsl [start|stop|restart]
会有服务启动成功的提示信息
# 转到“启动”文件夹 //Windows“启动”文件夹介绍,点这里
Win+r >shell:startup
//用户启动文件夹即可
#创建启动脚本,右键新建 linux-start.vbs文件
>./linux-start.vbs
Msgbox "hello" #弹窗消息,可不加 Set ws = CreateObject("Wscript.Shell") ws.run "wsl -d Ubuntu -u root /etc/init.wsl start", vbhide// Ubuntu 是 wsl 发行版的名字,可以通过“wsl -l”查看,按需修改。win10的1809 使用“wslconfig/l” 查看版本
#测试是否成功运行
cmd:
>wsl -d Ubuntu -u root /etc/init.wsl start #测试命令是否正确,如果正确显示以下内容 < * Starting nginx nginx [ OK ] Starting supervisor: >wscript //e:vbscript linux-start.vbs #测试vbs脚本是否能正常运行查看网页服务是否正常访问
硬件:
CPU 11th Gen Intel(R) Core(TM) i7-1165G7
版本 Windows 11 家庭中文版
版本 21H2
操作系统版本 22000.675
软件:通过“wsl -v”查看
WSL 版本: 0.58.3.0
内核版本: 5.10.102.1
WSLg 版本: 1.0.33
MSRDC 版本: 1.2.2924
Direct3D 版本: 1.601.0
Windows 版本: 10.0.22000.675
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。