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
,它工作。
简短说明:
我们也可以使用echo
和tee
用一个命令(从这里)写下这个配置:
echo 'Acquire::ForceIPv4 "true";' | sudo tee /etc/apt/apt.conf.d/99force-ipv4
对于我下面的工作:
sudo vim /etc/apt/apt.conf Acquire::http::proxy "http://:8080/";