apt-get卡在0

当我升级时,它会卡在这里:

user@plato:~# sudo apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages will be upgraded: bind9-host coreutils cpio curl dnsutils libbind9-90 libc-bin libc-dev-bin libc6 libc6-dev libcgmanager0 libcurl3 libcurl3-gnutls libdns100 libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libisc95 libisccc90 libisccfg90 libjasper1 liblwres90 libplymouth2 libsepol1 libssl-dev libssl-doc libssl1.0.0 linux-libc-dev mime-support multiarch-support ntp ntpdate openssl plymouth plymouth-theme-ubuntu-text python3-distupgrade ubuntu-release-upgrader-core unzip 39 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 16.0 MB of archives. After this operation, 12.3 kB of additional disk space will be used. Do you want to continue? [Y/n] y 0% [Connecting to us.archive.ubuntu.com (2001:67c:1562::15)] ░ 

当我做更新时,它会卡在这里:

 user@plato:~# apt-get update 0% [Connecting to us.archive.ubuntu.com (2001:67c:1562::14)] [Connecting to sec░ 

我可以ping us.archive.ubuntu.com就好了:

 user@plato:~# ping us.archive.ubuntu.com PING us.archive.ubuntu.com (91.189.91.23) 56(84) bytes of data. 64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=1 ttl=54 time=81.5 ms 64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=2 ttl=54 time=81.5 ms 64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=3 ttl=54 time=81.5 ms 64 bytes from economy.canonical.com (91.189.91.23): icmp_seq=4 ttl=54 time=81.4 ms ^C --- us.archive.ubuntu.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 81.425/81.528/81.582/0.355 ms 

我该怎么做才能解决这个问题?


到目前为止我尝试了什么。

我已尝试按照此博客上的说明操作: http : //nickescobedo.com/719/ubuntu-apt-get-hangs-at-0

强制apt-get专门使用IPv4

  • /etc/apt/apt.conf.d/99force-ipv4创建一个文件
  • 将此行添加到新创建的文件Acquire::ForceIPv4 false;
  • Apt-get现在将仅使用IPv4

我想出了如何让apt-get再次上class。

编辑gai.conf

 sudo vim /etc/gai.conf 

更改行~54以取消注释以下内容:

 precedence ::ffff:0:0/96 100 

写和退出:

 :wq 

警告

看看看起来几乎相同的第50行:

 precedence ::ffff:0:0/96 10 

这是错误的路线。 向下走4行,你会发现要取消注释的正确行,因为它以100而不是10结尾

最好在更新和升级之前禁用IPV6。

  1. 开放式终端

  2. 输入sudo -H gedit /etc/sysctl.conf并打开配置文件,最后添加以下行

     net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 
  3. 在那之后

     cat /proc/sys/net/ipv6/conf/all/disable_ipv6 

    如果报告’1’表示您已禁用IPV6。

    如果报告’0’,请按照步骤4和步骤5进行操作。

  4. 输入命令sudo sysctl -p 。 你会在终端看到这个。

     net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 
  5. 重复上面的“步骤3”,它现在将报告1。

IPv6修复程序都不适用于我。 可能我有相同的症状和不同的原因。 我的解决方法是通过在sources.list中进行搜索和替换来切换到不同的存档,例如:

 sudo vim /etc/apt/sources.list 

然后:

 :%s/us\.archive/de\.archive/g :wq 

这至少让我重新开始工作,直到找出真正的问题为止。

对我有用的是将我的Ubuntu guest虚拟机的VirtualBox Network设置从“Bridged Adapter”切换为“NAT”。