1. win+R键调出运行,输入shell:startup确定进入开始菜单启动程序目录(大致是C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup);
2. startWSL.vbs放到上述目录;
3. 打开wsl,将init.sh放到/目录,即/init.sh,记得要提前安装openssh-server(apt-get install openssh-server),应该默认安装好了;
4. 下次开机将自动启动wsl,并运行着ssh的进程,任务管理器中可以看到如下图内容。
此时,可以使用xshell等连接localhost,可以使用密码或密钥连接,方式同linux,这里不予累述。
1. startWSL.vbs
Set ws = WScript.CreateObject("WScript.Shell")
cmd = "C:\Windows\System32\bash.exe -c ""bash /init.sh"""
'运行命令不显示cmd窗口
ws.Run cmd, 0, false
Set ws = Nothing
WScript.quit
2. init.sh
#!/bin/bash
pn=$(ps aux|grep -v grep|grep sshd|wc -l)
[ -d /var/run/sshd ] || mkdir /var/run/sshd
chmod 744 /var/run/sshd
if [ "${pn}" != "0" ]; then
pid=$(ps aux|grep -v grep|grep /usr/sbin/sshd|awk '{print $2}')
kill $pid
fi
/usr/sbin/sshd -D
需要默认root运行
在cmd 下:
wslconfig /list # 查看wsl版本
ubuntu1604 config --default-user root
Ubuntu 18.04
在cmd 目录下:
ubuntu1804 config --default-user root
配置文件github地址: https://github.com/yinshangqing/WSL