pembaruan apt-get gagal mengambil file, kesalahan "Kegagalan penyelesaian sementara ..."

91
Err http://archive.canonical.com natty InRelease    
Err http://security.ubuntu.com oneiric-security InRelease               
Err http://extras.ubuntu.com natty InRelease                            
Err http://security.ubuntu.com oneiric-security Release.gpg
  Temporary failure resolving ‘security.ubuntu.com’
Err http://archive.canonical.com natty Release.gpg
  Temporary failure resolving ‘archive.canonical.com’
Err http://extras.ubuntu.com natty Release.gpg
  Temporary failure resolving ‘extras.ubuntu.com’
Err http://gb.archive.ubuntu.com oneiric InRelease
Err http://gb.archive.ubuntu.com oneiric-updates InRelease
Err http://gb.archive.ubuntu.com natty-backports InRelease
Err http://gb.archive.ubuntu.com oneiric Release.gpg
  Temporary failure resolving ‘gb.archive.ubuntu.com’
Err http://gb.archive.ubuntu.com oneiric-updates Release.gpg
  Temporary failure resolving ‘gb.archive.ubuntu.com’
Err http://gb.archive.ubuntu.com natty-backports Release.gpg
  Temporary failure resolving ‘gb.archive.ubuntu.com’

Reading package lists... Done
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric/InRelease      
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric-updates/InRelease  
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/natty-backports/InRelease  
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/oneiric-security/InRelease  
W: Failed to fetch http://archive.canonical.com/ubuntu/dists/natty/InRelease  
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/natty/InRelease  
W: Failed to fetch http://archive.canonical.com/ubuntu/dists/natty/Release.gpg  Temporary failure resolving ‘archive.canonical.com’
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/oneiric-security/Release.gpg  Temporary failure resolving ‘security.ubuntu.com’
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/natty/Release.gpg  Temporary failure resolving ‘extras.ubuntu.com’
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric/Release.gpg  Temporary failure resolving ‘gb.archive.ubuntu.com’
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/oneiric-updates/Release.gpg  Temporary failure resolving ‘gb.archive.ubuntu.com’
W: Failed to fetch http://gb.archive.ubuntu.com/ubuntu/dists/natty-backports/Release.gpg  Temporary failure resolving ‘gb.archive.ubuntu.com’
W: Some index files failed to download. They have been ignored, or old ones used instead.

Inilah yang saya lihat ketika saya mencoba lari sudo apt-get update. Saya melakukan pembaruan pada contoh saya kemarin dan sekarang saya mengalami ini.

Lewis
sumber

Jawaban:

143

gambaran

Ada dua bagian untuk pertanyaan Anda:

  • memperbaiki pesan penyelesaian sementara
  • memperbaiki masalah manajemen paket

Tekad sementara

Kemungkinan masalah ini adalah:

  • sementara karena Penyedia Layanan Internet Anda tidak meneruskan penerusan Internet (DNS) dengan benar ke server DNS eksternal atau, atau
  • karena perubahan di jaringan Anda juga telah memblokir penamaan ini - misalnya, router / modem baru, mengkonfigurasi ulang sebuah switch dengan konfigurasi baru.

Mari kita lihat kemungkinan masalah penyelesaian DNS.

Pertama, tambahkan sementara server DNS yang dikenal ke sistem Anda.

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null

Kemudian jalankan sudo apt-get update.

Jika ini memperbaiki pesan penyelesaian sementara Anda, maka tunggu selama 24 jam untuk melihat apakah ISP Anda memperbaiki masalah Anda (atau hubungi ISP Anda) - atau Anda dapat secara permanen menambahkan server DNS ke sistem Anda:

echo "nameserver 8.8.8.8" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

8.8.8.8 adalah server DNS Google sendiri.

sumber

Server DNS contoh lain yang dapat Anda gunakan adalah OpenDNS - misalnya:

echo "nameserver 208.67.222.222" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

masalah manajemen paket

Selain masalah penyelesaian sementara - Anda memiliki beberapa masalah manajemen paket yang perlu diperbaiki - Saya berasumsi Anda baru saja mencoba untuk meningkatkan dari satu versi Ubuntu ke versi yang disarankan berikutnya - dalam kasus Anda dari Natty (11,04) hingga Oneiric (11.10)

Buka terminal dan ketik

sudo nano /etc/apt/sources.list

Cari baris yang memiliki nama distribusi berbeda di daftar daripada yang Anda harapkan - dalam kasus Anda - Anda telah meningkatkan ke oneirictetapi Anda memiliki nama rilis lainnatty

Misalnya, cari garis yang terlihat seperti deb http:/archive.canonical.com/ natty backports

Tambahkan a #ke awal baris untuk berkomentar - misalnya

#deb http:/archive.canonical.com/ natty backports

Simpan dan jalankan kembali:

sudo apt-get update && sudo apt-get upgrade

Anda seharusnya tidak memiliki kesalahan penamaan rilis lagi.

Pada saat menulis ini, mungkin umum nama rilis termasuk lucid, maverick, natty, oneiric, precise, quantal, raring, saucy, trusty, utopicdan vivid.

kebebasan fosil
sumber
Sempurna bekerja :)
Maduka Jayalath
Ketika satu nama muncul saat pembaruan, Anda dapat melewati DNS dan mengutak-atik langsung ke daftar sumber.
SPRBRN
Masih berfungsi sempurna dengan 15.04 dan 15.10
lxx
1
Bagaimana jika ini tidak berhasil?
Matt G
Kemungkinan besar masalah DNS dari buruh pelabuhan tidak membiarkan pembaruan apt-get berhasil.
dashesy
11

Perhatikan bahwa jawaban ini ditulis untuk Ubuntu versi lama. Versi saat ini menggunakan server nama lokal yang dikendalikan oleh D-Bus, di mana bagian diagnosis dari jawaban ini berlaku, tetapi bukan solusinya. Jika /etc/resolv.confberisi nameserver 127.0.1.1atau lebih umum nameserver 127.X.Y.Z, jangan memodifikasinya.

"Penyelesaian kegagalan sementara ..." berarti bahwa DNS Anda , yaitu terjemahan dari nama host ke alamat IP, tidak berfungsi. Apakah Anda mengkonfigurasi ulang sesuatu di mesin Anda baru-baru ini? Jika tidak, ini mungkin kesalahan sementara di ISP Anda.

Apakah ping -n 8.8.8.8menunjukkan garis suka 64 bytes from 8.8.8.8: …? (Tekan Ctrl+ Cuntuk berhenti ping.)

  • Jika tidak, Anda secara khusus memiliki masalah konektivitas IP. Jalankan traceroute -n 8.8.8.8dan lihat di mana ia berhenti: jika ada di rumah / kantor Anda, periksa peralatan jaringan Anda. Jika Anda dapat menghubungi ISP Anda, komplainlah kepada mereka.
  • Jika ya, Anda secara khusus memiliki masalah DNS. Periksa isi /etc/resolv.conf; harus ada garis seperti nameserver 1.2.3.4(mungkin lebih dari satu dari mereka). Jika jalurnya ada, mungkin ada masalah sementara di ISP Anda, dan Anda mungkin bisa mengatasinya dengan menambahkan nameserver 8.8.8.8ke file itu (ini menyatakan server DNS tambahan, yang disediakan secara gratis oleh Google). Jika angka pertama setelahnya nameserveradalah 127, maka ada relai DNS di mesin Anda (ini adalah hal yang baik), dan Anda harus mengkonfigurasi relai DNS itu daripada memodifikasi /etc/resolv.conf. Pada versi modern Ubuntu, ada relay DNS secara default, ini Dnsmasq , dan dikendalikan oleh D-Bus.
Gilles
sumber
1
Catatan: ping 8.8.8.8 -c3hanya ping 3kali, Anda tidak perlu Ctrl + C. Anda dapat menggunakan nomor di parameter, seperti -c5, -c1, -c100dll
Arda
nameserverharus ditempatkan dengan mesin hostname?
albert
@Albert Yang /etc/resolv.confpenting adalah yang ada di mesin yang Anda gunakan . Tetapi pada sistem modern, itu hanya menunjuk ke mesin lokal, dan jika Anda memiliki masalah DNS, Anda harus bekerja dengan D-Bus dan NetworkManager.
Gilles
Anda Tuan, adalah seorang jenius! Baru saja menyelamatkan hariku. Terima kasih
Akshay Agarwal
10

Anda dapat mengomentari repo yang belum terselesaikan dari file sources.list yang ditemukan di dir / etc / apt /

Setelah memodifikasi sources.list, bersihkan repo apt-get as

apt-get clean

Kemudian perbarui

apt-get update

Kesalahan akan hilang

Mughil
sumber
1
Ini adalah solusi permanen untuk masalah DNS sementara. Jika Anda lupa untuk mengubahnya kembali, perangkat lunak dari repositori itu tidak akan diperbarui atau tersedia untuk dipasang lagi.
Chai T. Rex
3

Terkadang, ketika Anda berada di belakang server proxy, Anda bahkan perlu membuat apt.conffile /etc/apt/dan mengisinya dengan entri tertentu, seperti:

Acquire::http::proxy "http://<yourproxyserver>:<Port>";
Acquire::https::proxy "http://<yourproxyserver>:<Port>";
Acquire::ftp::proxy "http://<yourproxyserver>:<Port>";

Jika ada otentikasi yang diperlukan, file config terlihat seperti:

Acquire::http::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
Acquire::https::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
Acquire::ftp::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
Beladau
sumber
1

Masalah ini juga dapat disebabkan oleh antarmuka yang salah nama. Sebagai contoh, Temporary failure resolvingpesan kesalahan dapat disebabkan oleh antarmuka yang tidak disebutkan namanya eth0tetapi emlsebaliknya tidak disebutkan namanya .

karel
sumber
Saya tidak dapat masuk ke akun saya karena masalah yang saya hadapi dengan lightdm, saya perlu memperbarui lightdm, dapatkah Anda memperluas jawaban Anda tentang cara mengatasi masalah ini? Terima kasih.
Shayan
0

Saya mengalami kesalahan serupa saat menjalankan apt-getperintah. Ternyata saya memiliki Panel Pembaruan Perangkat Lunak terbuka di konsol.
Ini sepertinya memblokir baris perintah apt-get, tapi saya tidak yakin.

John
sumber
0

Ini adalah masalah DNS. Periksa /etc/resolv.conffile Anda .

misalnya dalam kasus saya ketika saya memiliki masalah ini & memeriksa file ini, file itu kosong! tetapi seharusnya berisi server-nama dns Anda

Milikku:

nameserver 192.168.10.x

192.168.10.x is my gateway ip address

parisssss
sumber
3
Selamat datang di AskUbuntu! Jika Anda ingin membantu, buat lebih banyak jawaban verbal. Maksud saya, mencakup skenario yang paling mungkin dan cara untuk pergi atau memposting tautan ke tutorial yang sesuai.
Danatela
1
Bisakah Anda mengklarifikasi apa yang harus diperiksa /etc/resolv.conf?
papukaija
0

Saya memiliki kesalahan ini. Mengikuti tip dari dukungan Linode, saya berkomentar semua baris IPv6 di / etc / hosts dan kemudian pembaruan apt-get mulai bekerja.

laura
sumber
0

Bagi mereka yang menggunakan EC2, ingatlah untuk memeriksa bahwa pengaturan grup keamanan Anda memungkinkan koneksi keluar ke situs web tempat Anda memperbarui. Anda dapat mengatur semua pengaturan keluar lalu lintas dan melihat apakah itu berfungsi.

Kasperi
sumber
0

Solusi yang diterima tidak bekerja untuk saya. Pertama, hanya apt-get updatememperingatkan saya tentang Temporary failure resolving 'foo.com', tetapi ketika saya mencoba nslookup foo.comatau ping foo.com, itu berfungsi dengan baik!

Retasan / perbaikan kotor saya yang luar biasa untuk mengatasi bug ini, adalah menambahkan domain yang diselesaikan secara manual ke /etc/hostsdengan skrip pendek ini:

resolveAptHosts()
{
    mapfile -t hosts < <(
        sed -n -r '/^#/d; s;deb(-src)? (http://|ftp://)?([^/ ]+).*;\3;p'\
        /etc/apt/sources.list | sort | uniq )
    # delete all hosts from /etc/hosts, e.g., from an earlier call
    sudo sed -i -r '/^[0-9]{1,3}(\.[0-9]{1,3}){3}[ \t]+('"$( printf '|%s'\
        "${hosts[@]//./\\.}" | sed 's/^|//' )"')[ \t]*$/d' /etc/hosts
    for host in ${hosts[@]}; do
        ip=$( nslookup "$host" | sed -n -r 's|Address:[ \t]*([0-9.]+).*|\1|p' |
              tail -1 )
        sudo bash -c "echo $ip $host >> /etc/hosts"
    done
}

Sekarang memperbarui harus berfungsi:

resolveAptHosts && sudo apt-get update

Jika ada yang tahu mengapa solusi ini bekerja dan bagaimana menyelesaikan bug ini secara nyata, saya akan berterima kasih selamanya. Saya juga mencoba menggunakan sudo apt-get update -o Acquire::ForceIPv4=trueuntuk mengecualikan IPv6 menyelesaikan masalah, tetapi itu juga tidak membantu.

mxmlnkn
sumber
0

Saya mendapat masalah yang sama di mesin virtual vmware, host dan guest keduanya ubuntu. Saya memecahkan masalah mengubah pengaturan mesin virtual. Alih-alih menggunakan NAT, saya mengatur Bridged. Itu berhasil untuk saya

Jean-Marc
sumber
0

Pesan kesalahan seharusnya mengatakan Anda tidak memiliki koneksi internet. Anda dapat melihat pesan-pesan kesalahan yang sama ini jika selama instalasi ubuntu awal Anda memilih untuk tidak melakukan pembaruan (tidak terhubung ke wifi / ethernet) yang setelah instalasi selesai dan Anda reboot dapat meninggalkan Anda di layar animasi login ubuntu tak berujung (menonton titik-titik bergerak). .. Anda akan melihat pesan kesalahan di atas jika Anda sekarang masuk ke Pemulihan dan pada masalah prompt root apt-get updatebahkan setelah Anda mengaktifkan jaringan dari Pemulihan yang tidak memungkinkan Anda untuk terhubung ke wifi jika Anda menghindari wifi selama pemasangan awal.

Solusi untuk kasus tepi khusus ini: colokkan kabel ethernet kemudian boot ke Pemulihan dan masalah apt-get updateatau instal ulang dari awal dan pastikan Anda mengaktifkan pembaruan

masalah inti - jika Anda tidak terhubung ke wifi saat menginstal sehingga Anda menghindari pembaruan paket Anda tidak akan diberikan prompt login wifi selama Pemulihan boot - ini harus diperbaiki ... juga pesan kesalahan di atas seharusnya hanya mengatakan Anda tidak memiliki internet koneksi

Scott Stensland
sumber