apt-macet di 0 [Terhubung ke us.archive.ubuntu.com]

164

Ketika saya melakukan peningkatan, macet di sini:

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)] ░

Ketika saya melakukan pembaruan itu macet di sini:

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

Saya dapat melakukan ping ke 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

Apa yang bisa saya lakukan untuk memperbaikinya?


Apa yang saya coba sejauh ini.

Saya sudah mencoba mengikuti petunjuk di blog ini: http://nickescobedo.com/719/ubuntu-apt-get-hangs-at-0

Untuk memaksa apt-get menggunakan IPv4 secara eksklusif

  • Buat file dalam /etc/apt/apt.conf.d/99force-ipv4
  • Tambahkan baris ini ke file yang baru dibuat Acquire::ForceIPv4 false;
  • Apt-get sekarang akan menggunakan IPv4 secara eksklusif
Arian Faurtosh
sumber
Tidak ada jawaban yang bekerja untuk saya: masalah saya adalah firewall host Windows saya memblokir tamu Ubuntu saya yang berjalan di Virtualbox.
drodsou
Tidak satu pun dari jawaban ini yang berhasil untuk saya. Saya me-restart mesin virtual saya dan berfungsi sekarang.
kilojoules

Jawaban:

309

Saya menemukan cara untuk mulai bekerja lagi.

Edit gai.conf:

sudo vim /etc/gai.conf

ubah baris ~ 54 untuk membatalkan komentar berikut ini:

precedence ::ffff:0:0/96  100

tulis dan berhenti:

:wq

PERINGATAN

Lihat baris 50 yang terlihat hampir identik:

precedence ::ffff:0:0/96  10

Ini garis yang salah. Go ~ 4 baris ke bawah dan Anda akan menemukan baris yang benar untuk tanda komentar karena berakhir dengan 100alih - alih10

Arian Faurtosh
sumber
1
Terima kasih telah memposting solusi Anda. Saya mengalami masalah yang sama dan ini memperbaikinya.
bradym
55
Bagaimana Anda mengetahui hal ini? Ini tiba-tiba mulai terjadi pada saya di salah satu server saya dan ini memperbaikinya.
Brian Neal
4
Apa yang terjadi disini? Ingin menguraikan mengapa perbaikan ini berhasil?
four43
53
Masalah: ISP mulai menyiapkan jaringan IPv6 internal sebagai persiapan untuk akhirnya terhubung ke internet IPv6. Akibatnya, server di jaringan ini sekarang mencoba terhubung ke * .ubuntu.com melalui alamat IPv6 secara default saat menjalankan apt-get. Solusi: uncommenting precedence ::ffff:0:0/96 100memungkinkan permintaan untuk memilih IPv4
Arian Faurtosh
8
TETAP! Ini jelas merupakan perbaikan yang tepat untuk masalah ini. Tetapi bagi siapa saja yang menemukan perbaikan ini pastikan Anda TIDAK melakukan apa yang saya lakukan. Saya membatalkan komentar precedence ::ffff:0:0/96 10dan saya harus kembali ke file dan berkomentar baris itu lagi dan kemudian menghapus komentar pada baris yang benarprecedence ::ffff:0:0/96 100
dtigue
14

Lebih baik menonaktifkan IPV6 sebelum Anda memperbarui dan memutakhirkan.

  1. Buka Terminal

  2. Masukkan sudo -H gedit /etc/sysctl.confdan buka file konfigurasi dan tambahkan baris berikut di akhir

    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1 
    net.ipv6.conf.lo.disable_ipv6 = 1 
    
  3. Setelah lari itu

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

    Jika dilaporkan '1 ′ berarti Anda telah menonaktifkan IPV6.

    Jika melaporkan '0' maka silakan ikuti Langkah 4 dan Langkah 5.

  4. Ketikkan perintah sudo sysctl -p. Anda akan melihat ini di terminal.

    net.ipv6.conf.all.disable_ipv6 = 1 
    net.ipv6.conf.default.disable_ipv6 = 1 
    net.ipv6.conf.lo.disable_ipv6 = 1 
    
  5. Ulangi di atas "Langkah 3" dan sekarang akan melaporkan 1.

Sudhir Belagali
sumber
ini berhasil. Saya tidak mengerti mengapa. Bisakah Anda jelaskan.
AAI
6

Tidak ada perbaikan IPv6 yang berfungsi untuk saya. Mungkin saya memiliki gejala yang sama dengan penyebab berbeda. Solusi saya adalah beralih ke arsip lain dengan melakukan pencarian dan mengganti di sources.list, misalnya:

sudo vim /etc/apt/sources.list

Lalu:

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

Setidaknya ini memungkinkan saya untuk kembali bekerja sampai saya menemukan masalah sebenarnya.

Rob Fisher
sumber
1

Apa yang berhasil bagi saya adalah untuk mengubah pengaturan Jaringan VirtualBox saya untuk tamu Ubuntu saya ke "NAT" dari "Bridged Adapter".

pengguna994165
sumber
Ya, ini pasti akan berhasil. Tapi, mengapa itu tidak berhasil pada 'Bridged Adapter'. Saya dapat melakukan semuanya dengan 'Bridged Adapter' kecuali apt-get update.
soufrk