apt-застрять в 0 [Соединение с us.archive.ubuntu.com]
Когда я делаю обновление, он застревает здесь:
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░
Я могу нормально пропинговать 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
4 ответа
Я разобрался, как заставить работать снова.
редактировать 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 перед обновлением и обновлением.
Открытый терминал
Войти
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
После этого запуска
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
Если он сообщает "1", значит, вы отключили IPV6.
Если он сообщает "0", пожалуйста, следуйте шагам 4 и 5.
Введите команду
sudo sysctl -p
, Вы увидите это в терминале.net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1
Повторите выше "Шаг 3", и теперь он сообщит 1.
Ни одно из исправлений IPv6 не сработало для меня. Возможно, у меня тот же симптом с другой причиной. Мой обходной путь - переключиться на другой архив, выполнив поиск и замену в sources.list, например:
sudo vim /etc/apt/sources.list
А потом:
:%s/us\.archive/de\.archive/g
:wq
Это, по крайней мере, позволяет мне вернуться к работе, пока я не выясню реальную проблему.
Что мне помогло, так это переключить мои настройки сети VirtualBox для моего гостя Ubuntu на "NAT" с "Bridged Adapter".