„Pobieranie niektórych plików indeksu nie powiodło się” podczas aktualizacji


18

Podczas pracy sudo apt-get updateotrzymuję następujące błędy:

Err archive.ubuntu.com quantal InRelease
Err archive.ubuntu.com quantal-updates InRelease
Err archive.ubuntu.com quantal-backports InRelease
Err archive.ubuntu.com quantal-security InRelease
Err archive.ubuntu.com quantal Release.gpg
  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
Err archive.ubuntu.com quantal-updates Release.gpg
  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
Err archive.ubuntu.com quantal-backports Release.gpg
  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
Err archive.ubuntu.com quantal-security Release.gpg
  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
Reading package lists... Done
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal/InRelease  
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal-updates/InRelease  
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal-backports/InRelease  
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal-security/InRelease  
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal/Release.gpg  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal-updates/Release.gpg  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal-backports/Release.gpg  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
W: Failed to fetch archive.ubuntu.com/ubuntu/dists/quantal-security/Release.gpg  Unable to connect to archive.ubuntu.com:http: [IP: 91.189.92.177 80]
W: Some index files failed to download. They have been ignored, or old ones used instead.

Używam Ubuntu 12.04. Jest to polecenie, którego użyłem po zainstalowaniu Ubuntu z instalatora systemu Windows. Jestem pewien, że mój laptop jest podłączony do Internetu. Co mogę teraz zrobić?



Nie aktualizowałem go .. To nowa instalacja przy użyciu pliku ubuntu-12.10-desktop-i386.iso
Rakesh Godhala

Zmieniłem źródło oprogramowania na inne w pobliżu serwerów i ponownie uruchomiłem polecenie, nadal występuje ten sam problem, z wyjątkiem archieve.ubuntu.com
Rakesh Godhala

Mam serwer Ubuntu 12.04.1 jako główny serwer dns, w tym dhcpd. w moim pliku opcji miałem tylko ip drugiego serwera dns-server na liście dozwolonych zapytań, kiedy dodałem 127.0.0.1 ten sam problem został naprawiony. Chociaż w przedstawionej metodzie wykrywania (poprzednia odpowiedź) nie mogłem pingować archive.ubuntu.com.

Odpowiedzi:


2

Po prostu otwórz menedżera synaptic, zainstaluj / zainstaluj ponownie ubuntu-extras-keyring a następnie (w terminalu) wpisz sudo apt-get update.

pozdrawiam, że wyjdziesz z tego błędu.


8
To mi nie zadziałało. Dlaczego miałoby to
pzkpfw

1
sudo apt-get install ubuntu-extras-keyringnie rozwiązałem tego problemu dla mnie.
MustModify

20

Jak wskazał vasa1 , serwerem, na którym skonfigurowano system, aby pobierać pakiety do instalacji, jest obecnie wyłączony .

Co zrobić, gdy lustro pobierania jest wyłączone ...

Rozwiązaniem tego problemu jest zmiana go na inny serwer lustrzany (inny serwer).

Opcja 1: Korzystanie z graficznych narzędzi konfiguracyjnych

Otwarte źródła oprogramowania

Naciśnij Alt+ F2, wpisz gksu software-properties-gtki wprowadź hasło. (Ewentualnie wybierz Ustawienia ... w lewym dolnym rogu Menedżera aktualizacji lub przejdź do Ustawienia> Repozytoria w Synaptic).

  • To dotyczy Ubuntu 10.04 LTS, którego używasz. W późniejszych wersjach możesz po prostu uruchomićsoftware-properties-gtk a po wprowadzeniu zmian PolicyKit Cię uwierzytelni.
  • Większość osób korzystających z nowszych wersji ma Centrum oprogramowania, a nie Synaptic. W Centrum Oprogramowania, by udać się do Edit > Źródła oprogramowania ... .
  • Menedżer aktualizacji pozostaje niezmieniony, ale w nowych wersjach nazywa się Aktualizator oprogramowania.

Zmień serwer pobierania

Na karcie Oprogramowanie Ubuntu w oknie Źródła oprogramowania znajduje się menu rozwijane z napisem Pobierz z . Wybierz serwer regionalny. Na przykład jestem w Stanach Zjednoczonych i wygląda to tak na moim komputerze 11.10:

Okno Źródła oprogramowania pokazujące, że w rozwijanym menu wybrano Serwer dla Stanów Zjednoczonych.
Okno Źródła oprogramowania pokazujące, że Sever dla Stanów Zjednoczonych jest wybrany z menu rozwijanego „Pobierz z”.

Na tej krótkiej liście możesz zobaczyć inne serwery (np. Serwer, który właśnie skonfigurowałeś).

Możesz także użyć serwera głównego, ale prawie zawsze jest on znacznie wolniejszy niż serwer regionalny. (Przynajmniej w Stanach Zjednoczonych.)

Jeśli chcesz użyć innego lustro, można przejrzeć listę mirrorów klikając Inne ... .

Wybierz okno dialogowe Pobierz serwer w Źródłach oprogramowania, aby wybrać alternatywne dublowanie

Opcja 2: Ręczna edycja pliku konfiguracyjnego

Utwórz kopię zapasową i otwórz sources.list

Utwórz kopię zapasową sources.listpliku i otwórz go w edytorze tekstu:

cd /etc/apt
sudo cp sources.list sources.list.old
gksu gedit sources.list
  • Jeśli już uruchomiłeś drugą linię, nie rób tego ponownie, chyba że chcesz zastąpić starą kopię zapasową kopią nowej konfiguracji.
  • W przypadku edytora tekstowego (nie wymagającego GUI) zamień trzeci wiersz na sudo nano -w sources.list(lub sudo vi sources.list, lub sudo -e sources.list).

W edytorze tekstu zamień każde wystąpienie starej nazwy serwera na nową nazwę serwera. Na przykład, można zastąpić wszystkie wystąpienia ubuntuarchive.hnsdc.comz us.archive.ubuntu.com. (Twój edytor tekstowy, niezależnie od tego, którego używasz, ułatwi to - nie musisz ręcznie znajdować każdego wystąpienia i wpisywać nazwy nowego serwera lustrzanego.)

Zapisz plik, zamknij edytor tekstu, uruchom sudo apt-get updatei powinien on działać z nowym serwerem.

Opcja 3: Zmiana wiersza poleceń

sedpozwala pisać proste (lub skomplikowane) skrypty działające na plik, jeden wiersz na raz. Możesz więc wydać pojedyncze polecenie, które sources.listzastąpi wszystkie wystąpienia starej nazwy serwera nową nazwą serwera.

Najpierw przejdź do /etc/apti (jeśli nie zrobiłeś tego ostatnio) wykonaj kopię zapasową pliku:

cd /etc/apt
sudo cp sources.list sources.list.old

Następnie uruchom sed:

sudo cp sources.list sources.list.tmp
sed 's/ubuntuarchive.hnsdc.com/us.archive.ubuntu.com/' sources.list.tmp | sudo tee sources.list
sudo rm sources.list.tmp
  • W przypadku starego serwera ubuntuarchive.hnsdc.comzmień to odpowiednio.
  • W przypadku nowego serwera us.archive.ubuntu.comzmień go odpowiednio.
  • Postanowiłem skopiować sources.listdo pliku tymczasowego i użyć go jako seddanych wejściowych. Jest to jeden ze sposobów, aby upewnić się, że sedplik nie jest nadpisywany podczas odczytu.
  • sed„Skrypt” jest tu bardzo prosta. To wyjaśnia, jak działa podstawienie.

Ale jakie są serwery pobierania?

Istnieje ponad 400 zarejestrowanych serwerów lustrzanych Ubuntu do instalowania i aktualizowania oprogramowania.

Są to tak zwane kopie lustrzane . Nie należy tego mylić z lustrzanymi dyskami CD , na których przechowywane są obrazy ISO i powiązane pliki do instalacji Ubuntu .

Wiele serwerów udostępnia oba te elementy, a zatem są zarówno kopiami lustrzanymi archiwów, jak i lustrzanymi płytami CD. Ale wielu jest tylko jednym z dwóch.


Czy odpowiedź nie powinna również dotyczyć „0 uaktualnionych, 3 nowo zainstalowanych, 0 do usunięcia i 21 nieaktualizowanych ?” Innymi słowy, OP będzie chciał dokonać aktualizacji?

@ vasa1 Nie ma powodu, aby sądzić, że nadal tak będzie po sudo apt-get updateudanym uruchomieniu. Opiera się na informacjach o dostępnych pakietach, które są nieaktualne. Również samo powiedzenie „uruchom apt-get dist-upgrade” nie byłoby wystarczającą odpowiedzią na to, ponieważ czasami dist-upgradenie rozwiązuje zależności w dobry sposób - ważne pakiety mogą zostać usunięte. (Prawdopodobnie nie, ale ważne jest, aby sprawdzić, co proponuje, zamiast biegać dalej.) Jeśli ten problem będzie się powtarzał, myślę, że najlepiej byłoby zadać to pytanie osobno.
Eliah Kagan

ThnQ .. Działało naprawdę dobrze
Rakesh Godhala

Następujących opcji 3 , nadal pojawia się błąd: some index files failed to download.
IgorGanapolsky

Należy zauważyć, że może się tak zdarzyć, jeśli repozytorium już nie istnieje (na stałe), po aktualizacji do nowej wersji Ubuntu, a także z wielu innych powodów.
earthmeLon

7

Albo serwer lustrzany jest wyłączony, albo masz problemy z połączeniem internetowym (może być tymczasowe).

  • upewnij się, że możesz pingować Google DNS i archive.ubuntu.com :

    ping -c3 archive.ubuntu.com
    ping -c3 8.8.8.8

    Oba polecenia powinny powrócić 0% packet lossw wierszu statystyk. W przeciwnym razie połączenie internetowe jest wyłączone.

  • Jeśli połączenie wydaje się prawidłowe, prawdopodobnie lustro jest wyłączone. Spróbuj wybrać inny blisko Twojej lokalizacji.


PING archive.ubuntu.com (91.189.92.156) 56 (84) bajtów danych. --- archive.ubuntu.com statystyki ping --- 3 przesłane pakiety, 0 odebranych, 100% utraty pakietów, czas 2015ms
Rakesh Godhala

PING 8.8.8.8 (8.8.8.8) 56 (84) bajtów danych. --- 8.8.8.8 statystyki ping --- 3 przesłane pakiety, 0 odebranych, 100% utrata pakietów, czas 1999ms
Rakesh Godhala 29.10

Dostaję 100% utraty pakietu zamiast 0% utraty.
Rakesh Godhala

Jakieś sugestie??
Rakesh Godhala

musisz najpierw zadbać o swoje połączenie internetowe. Te linki mogą pomóc: help.ubuntu.com/10.04/internet/C/connecting-wireless.html help.ubuntu.com/community/WifiDocs/WirelessTroubleShootingGuide
rosch

0

Przejdź do Terminalu i wykonaj poniższe kroki, aby znaleźć rozwiązanie ...

sudo su (login as root)
cd /var/lib/apt/lists/
rm -fr *
cd /etc/apt/sources.list.d/
rm -fr *
cd /etc/apt
sudo cp sources.list sources.list.old
sudo cp sources.list sources.list.tmp
sed 's/ubuntuarchive.hnsdc.com/us.archive.ubuntu.com/' sources.list.tmp | sudo tee sources.list
sudo rm sources.list.tmp*
apt-get clean
apt-get update

0

Spróbuj tego. Mi to pasuje.

sudo su # login as root
cd /var/lib/apt/lists/
rm -fr *
cd /etc/apt/sources.list.d/
rm -fr *
cd /etc/apt
cp sources.list sources.list.old
cp sources.list sources.list.tmp
sed 's/ubuntuarchive.hnsdc.com/us.archive.ubuntu.com/' sources.list.tmp | tee sources.list
rm sources.list.tmp*
apt-get clean
apt update  
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.