无法解析主机:github,com仅在windows bash中

unhi4e5o  于 2022-10-23  发布在  Git
关注(0)|答案(3)|浏览(172)

我在1903年的win 10 64位中安装了ubuntu 18.04(WSL)。
对于命令git clone https://github.com/facebookresearch/fastText.git
它在git bash(用于windows的git)和ubuntu 18.04 shell中运行良好,但在m1o3p(C:\windows\System32\bash.exe)中运行不佳,错误消息为

$ git clone https://github.com/facebookresearch/fastText.git
Cloning into 'fastText'...
fatal: unable to access 'https://github.com/facebookresearch/fastText.git/': Could not resolve host: github.com

我的电脑中只有两个.gitconfig文件,一个用于git bash,另一个用于ubuntu 18.04 shell。我认为ubuntu 18.04外壳在某种程度上可能等于bash,但bash肯定有问题。


小时

xghobddn

xghobddn1#

可能是您的/etc/resolv.conf文件已损坏-这发生在我身上!
症状包括:

  • WSL /etc/resolv.conf内部不是纯文本,而是一些二进制垃圾。它应该是纯文本。
  • 例如,不能从WSL内部获取ping google.comping stackoverflow.com
  • 您可以从windows主机中的powershell ping这些域。Windows git也可以正常工作。

旁白:有趣的是,ping github.com今天在我的所有机器上都失败了,但这并不能阻止我在浏览器中访问github或使用git-strange。
解决方案是sudo rm /etc/resolv.conf并重新启动WSL-windows将为您重新创建该文件,您应该能够在WSL中ping并再次使用git。
要重新启动WSL,请在管理员模式下打开Powershell终端并运行以下命令。(摘自@germa vinsmoke的回答)

wsl --shutdown
Get-Service LxssManager | Restart-Service
niwlg2el

niwlg2el2#

1.编辑wsl.conf

sudo nano /etc/wsl.conf
[network]
generateResolvConf = false

1.保存此文件并退出。然后编辑/etc/resolv.conf

sudo nano /etc/resolv.conf

1.添加/编辑此行

nameserver 1.1.1.1

1.然后关闭WSL控制台。使用admin打开Powershell并关闭wsl。

wsl --shutdown

1.最后,重新启动wsl服务

Get-Service LxssManager | Restart-Service

更多信息-WSL2 - No internet connectivity. DNS Issues(Temporary failure in name resolution)
编辑1 By P.hunter l:
当您使用VPN时,您需要将您的名称服务器设置为与VPN提供的相同。
为了这个-
1.转到网络状态(在Windows上)并单击更改适配器设置。
1.找到VPN的适配器,右键单击并打开属性。
1.从下拉列表中找到IpV4选项,并将其打开。
1.找到提到的DNS并在步骤3中使用相同的DNS。

x7rlezfr

x7rlezfr3#

我可以假设你在代理方面有问题。
试试看:

git config --global --unset http.proxy
git config --global --unset https.proxy

类似问题:#20370294#5377703

相关问题