Невозможно обновить 12.04 LTS - "404 Не найдено"

Невозможно обновить 12.04 LTS - "404 Не найдено"

можете ли вы помочь решить эту проблему?

W: Не удалось получить http://archive.ubuntu.com/ubuntu/dists/precise/restricted/binary-i386/Packages  404  Not Found [IP: 91.189.91.13 80]

W: Не удалось получить http://archive.ubuntu.com/ubuntu/dists/precise/universe/binary-i386/Packages  404  Not Found [IP: 91.189.91.13 80]

W: Не удалось получить http://archive.ubuntu.com/ubuntu/dists/precise/multiverse/binary-i386/Packages  404  Not Found [IP: 91.189.91.13 80]

E: Некоторые индексные файлы не скачались. Они были проигнорированы или вместо них были использованы старые версии.

С curl этот URL работает хорошо:

curl -I http://archive.ubuntu.com/ubuntu/dists/precise/restricted/binary-i386/Packages.gz
HTTP/1.1 200 OK
Date: Tue, 07 Oct 2014 10:29:43 GMT
Server: Apache/2.2.22 (Ubuntu)
Last-Modified: Wed, 25 Apr 2012 22:42:47 GMT
ETag: "ae0aaa-2394-4be88971e07c0"
Accept-Ranges: bytes

решение1

Ошибка HTTP 404 выглядит как некоторые распространенные проблемы.
Они вызваны исчезновением или перемещением репозиториев.

Но дело не в том, что нашего хранилища больше нет:

wget -q http://archive.ubuntu.com//ubuntu/dists/precise/ -O - | html2text
****** Index of /ubuntu/dists/precise ******
[[ICO]] Name              Last_modified     Size
============================================================================
[[DIR]] Parent_Directory                                                  -
[[   ]] Contents-amd64.gz 26-Apr-2012 05:30                              21M
[[   ]] Contents-i386.gz  26-Apr-2012 06:11                              21M
[[   ]] Release           25-Apr-2012 22:49                              48K
[[   ]] Release.gpg       25-Apr-2012 22:49                              198
[[DIR]] main/             05-Dec-2011 18:03                                -
[[DIR]] multiverse/       14-Oct-2011 00:29                                -
[[DIR]] restricted/       14-Oct-2011 00:29                                -
[[DIR]] universe/         14-Oct-2011 00:29                                -
============================================================================
     Apache/2.2.22 (Ubuntu) Server at archive.ubuntu.com Port 80

Присмотревшись, можно заметить, что он пытается получить доступ Packagesне так, Packages.gzкак обычно.

Это не выглядит подозрительно; доступно множество форматов .bz2; несжатый — это просто еще одна кодировка.

$ wget -q http://archive.ubuntu.com//ubuntu/dists/precise/restricted/binary-i386/ -O - | html2text
****** Index of /ubuntu/dists/precise/restricted/binary-i386 ******
[[ICO]] Name             Last_modified     Size
============================================================================
[[DIR]] Parent_Directory                                                  -
[[   ]] Packages.bz2     25-Apr-2012 22:42                              8.2K
[[   ]] Packages.gz      25-Apr-2012 22:42                              8.9K
[[   ]] Release          25-Apr-2012 22:49                               102
============================================================================
     Apache/2.2.22 (Ubuntu) Server at archive.ubuntu.com Port 80

Даже если выяснится, что чего-то Packagesдействительно не хватает, это не повод подозревать, что что-то не так: обычные веб-серверы имеют возможность прозрачно распаковывать файлы по мере необходимости — именно это, по-видимому, и происходит в данном случае.


Некоторое время спустя я нашел сообщение об ошибке, согласно которому имя файла без , .gzдействительно, в этом месте неверно;

Но причина действительно неожиданная: поскольку каталоги вложены глубже, чем обычно, длина URL достигла некоторого предела. Он не помещается в какой-то фиксированный буфер длины. Он на три байта длиннее; Поэтому три символа отбрасываются; URL не имеет никаких параметров URL и т. д. Поэтому путь URL обрезается;

На три символа, удалив .gz. Оставив совершенно допустимое имя файла.

Packages.gz не найден, так как вместо этого выполняется поиск только Packages

Связанный контент