16.04 apt-get update挂起

apt-get更新和升级都挂起:

sudo apt-get update [sudo] password for xxx: 0% [Connecting to archive.ubuntu.com (2001:67c:1360:8001::17)] 

我可以ping archive.ubuntu.com:

 ping archive.ubuntu.com PING archive.ubuntu.com (91.189.88.162) 56(84) bytes of data. 64 bytes from yukinko.canonical.com (91.189.88.162): icmp_seq=1 ttl=50 time=42.2 ms 64 bytes from yukinko.canonical.com (91.189.88.162): icmp_seq=2 ttl=50 time=42.1 ms 64 bytes from yukinko.canonical.com (91.189.88.162): icmp_seq=3 ttl=50 time=42.1 ms ^C --- archive.ubuntu.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 42.169/42.206/42.265/0.240 ms 

我检查了这个问题 ,我不认为它是同一个问题。

有进一步调查的提示吗?

从你的输出看来,这是一个IPv6问题,所以我们应该强迫使用IPv4

如果我们搜索IPv4 apt.conf (5)手册,我们会发现:

ForceIPv4:
下载时,强制仅使用IPv4协议。

要启用此选项,我们应在以下内容中创建文件:

 /etc/apt/apt.conf.d/ 

这个名字可以是我们使用99force-ipv4相对东西,这个数字是这个目录中配置文件的优先级。

然后将以下命令添加到此文件并保存:

 Acquire::ForceIPv4 "true"; 

然后尝试再次更新您的来源:

 sudo apt update 

不确定问题的原因,但我认为你的大学正在运行内部IPv6网络; 所以试图将IPv6连接到它的镜像,并且可能存在一些不兼容性。 我只是试图强迫使用IPv4 ,它工作。

简短说明:

我们也可以使用echotee用一个命令(从这里)写下这个配置:

 echo 'Acquire::ForceIPv4 "true";' | sudo tee /etc/apt/apt.conf.d/99force-ipv4 

对于我下面的工作:

 sudo vim /etc/apt/apt.conf Acquire::http::proxy "http://:8080/";