0%

开机启动WSL并SSH登陆

背景说明

windows的WSL功能让ubuntu作为windows的子系统,这种双系统对linux开发非常友好。一般使用远程工具如Xshell登陆Linux,对windows和WSL做一些配置,实现开启windows之后:

  • 自动启动WSL
  • WSL中开启sshd服务

实现方法

  1. 创建开机启动脚本,名称为linux-start-ssh.vbs, 里面的内容为:
    1
    2
    Set ws = WScript.CreateObject("WScript.Shell")        ' 创建windows shell对象
    ws.run "wsl -d ubuntu -u root /etc/init.wsl" ' 在shell中启动wsl,wsl启动加载 init.wsl脚本

init.wsl脚本的内容如下:

1
2
#! /bin/sh
/etc/init.d/ssh start # 在wsl中启动sshd服务,这样wsl启动时就会自动开机sshd
  1. linux-start-ssh.vbs脚本加入到开机启动项中,直接将该文件拷贝到C:\Users\Rancho\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup路径下即可

  2. 在task manager中确认enable服务,设置好后状态如下图:

windows启动后自动运行linux-start-ssh.vbs, wsl启动后自动运行init.wsl.

  1. 使用ssh rancho@localhost即可在windows上ssh登陆wsl