之前windows下装了Ubuntu 20.04 子系统 设置了ssh服务
但是每次关机再次启动windows时需要再次进入bash启动ssh服务,因为默认情况下ssh服务是关闭的
启动ssh服务命令
sudo service ssh start
方法一、开机自启动
- 在windows下创建一个sshd.bat的批处理文件放到 D盘根目录下
C:\Windows\System32\bash.exe -c "sudo /etc/init.d/ssh start"
- 在windows下创建一个sshd.vbs文件 添加以下代码
Set WinScriptHost = CreateObject("WScript.Shell")
WinScriptHost.Run Chr(34) & "D:\sshd.bat" & Chr(34), 0
Set WinScriptHost = Nothing
Win + r 调出运行窗口 输入 shell:startup
打开开机启动项
将vbs文件复制到“启动”文件夹中
- 最后进入bash将ssh服务器配置为无需密码
运行命令
sudo visudo
将下面行添加到末尾:
%sudo ALL=NOPASSWD: /etc/init.d/ssh
如果配置正确,则Windows启动时,ssh服务器现在应该会在后台自动启动。
方法二、计划任务
-
以管理员权限运行cmd 输入
taskschd.msc
点击 创建任务
-
设置任务名称 Start Ubuntu WSL sshd
-
新建触发器-设置开始任务为 登陆时
-
新建操作为启动之前创建的 sshd.bat 脚本文件
-
条件里面的电源设置前的勾都去掉,否则笔记本不插电源的时候任务会不执行。
保存后重启计算机,登陆账户后可以自启动ssh服务了。
想要不弹出cmd脚本窗口的话可以改调用sshd.vbs脚本,不过我这边测试有些问题。
计划任务执行sshd.bat能正常启动