Windows10内置Linux子系统(WSL)固定IP
查看Ip
ip addr show eth0 | grep 'inet\b' | awk '{print $2}' | cut -d/ -f1
安装wsl2 host
下载完成后,以管理员身份运行命令提示符,安装过程如下:
wsl2host.exe install
输入后会出现以下提示信息让你输入win10的账户和密码,这个账户和密码就是你登录电脑的账户和密码(账号可能需要加域名:域名\账号)。
Windows Username: <username-you-use-to-login-to-windows> Windows Password: <password-for-this-user>
输入密码后,如无错误提示,则表明安装wsl2host成windows服务成功,检查一下wsl2host服务启动是否成功
WSL2 Host 服务存在,表示安装成功。如果服务未启动,可以手动启动服务。
该程序通过您的发行版的名称和IP,映射固定主机名。例如 Ubuntu-20.04 变成 ubuntu2004.wsl . 如果您有多个正在运行的发行版,它也会被添加。当发行版停止时,它会从主机文件中删除。
注意:有些小伙伴可能会在install wsl2 host的时候 帐号密码输入错误,会导致wsl2 host 服务启动失败,手动启动一下,如果提示“登录失败,服务无法启动"那么命令行输入 secpol.msc 进入本地安全策略-本地策略-用户分配权限 ,找到“作为服务登录”把当前电脑登录用户名加入进去,再次重新启动服务即可
检查Windows Hosts文件
wsl2host服务启动成功后,会修改Windows hosts文件(位置: C:\Windows\System32\drivers\etc\hosts ),效果如下:
172.17.45.220 ubuntu2004.wsl # managed by wsl2-host
如果WSL2停止再重新启动的话,wsl2host服务会自动更新Win10 hosts文件里的IP地址,我们访问WSL2使用别名
ubuntu.wsl 就可以了,再也不用担心WSL2 IP地址经常变动,这里一定要看你自己host文件里是什么地址,而且这个映射地址最好不要改,每次wsl2ip地址变动,这里会根据域名来修改地址。
卸载wsl2 host
以管理员身份运行命令提示符
wsl2host.exe stop
wsl2host.exe remove
自定义域名
版本要求:0.3+
进入 WSL ,新建 ~/.wsl2hosts 文件(非root用户,最后和服务登录用户一致)
vi ~/.wsl2hosts
输入域名,多个域名逗号隔开
ubuntu.wsl mywsl.local wsl.local
退出 WSL ,重启 WSL2 Host 服务。