Win11中WSL2安装NVM遇Could not resolve host错误求助
WSL2下DNS解析失败(无法访问raw.githubusercontent.com)的解决办法
问题原因
ping IP(如8.8.8.8)正常但ping域名失败,说明是DNS解析配置异常——WSL2默认同步Windows的DNS设置,偶尔会出现同步失效的情况,导致无法解析域名。
解决步骤
方法一:手动指定公共DNS并锁定配置文件
- 打开WSL2终端,先备份原DNS配置文件:
sudo cp /etc/resolv.conf /etc/resolv.conf.bak - 编辑DNS配置文件:
sudo nano /etc/resolv.conf - 删除原有内容,替换为公共DNS服务器地址:
nameserver 8.8.8.8 nameserver 8.8.4.4 - 保存并退出nano编辑器:按
Ctrl+O回车确认保存,再按Ctrl+X退出 - 锁定配置文件,防止WSL重启后自动覆盖:
sudo chattr +i /etc/resolv.conf
方法二:修改WSL全局配置(防止重启后配置失效)
如果方法一重启WSL后配置被还原,需要修改WSL的全局配置:
- 在Windows的用户目录(比如
C:\Users\你的用户名)中新建一个名为.wslconfig的文件 - 用记事本打开该文件,添加以下内容:
[network] generateResolvConf = false - 保存文件后,在Windows终端执行命令重启WSL:
wsl --shutdown - 重新打开WSL终端,再次执行方法一中的配置步骤
验证修复效果
执行以下命令测试域名解析是否正常:
ping raw.githubusercontent.com
如果能正常返回数据包,再执行nvm的安装命令即可:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh | bash
内容的提问来源于stack exchange,提问作者Matt Jaf
相关产品推荐
相关产品推荐

