Обновление apt-get не может найти некоторые зеркала

Я настроил свои источники для использования «112» «протокола», чтобы находить серверы рядом со мной, в основном, так как я много передвигаюсь.

Однако, по какой-то причине это не работает для всех репозиториев - когда я запускаю sudo apt-get update, я получаю кучу ошибок (около 45), таких как:

W: Failed to fetch mirror://mirrors.ubuntu.com/mirrors.txt/dists/raring/main/source/Sources  404  Not Found [Mirror: http://giano.com.dist.unige.it/ubuntu/]

W: Failed to fetch mirror://mirrors.ubuntu.com/mirrors.txt/dists/raring/universe/source/Sources  404  Not Found [Mirror: http://giano.com.dist.unige.it/ubuntu/]

Если я помню правильно, я настроил это через графический интерфейс, но я все еще пошел и посмотрел, что строки, соответствующие этим репозиториям, сказали в /etc/apt/sources.list - вот что я нашел:

deb-src mirror://mirrors.ubuntu.com/mirrors.txt raring main restricted
deb-src mirror://mirrors.ubuntu.com/mirrors.txt raring universe

(я не мог отобразить все ошибки в строках из sources.list, но я думаю, это только потому, что я не уверен на 100% в том, что я ищу ...)

Я думал, что весь смысл в настройке таких источников был чтобы убедиться, что mirrors.ubuntu.com выбирает зеркало с необходимыми вам репозиториями. Почему я получаю 404 ошибки здесь, и что я могу с этим поделать?

Я бы предпочел по-прежнему использовать настройку зеркал, а не жестко программировать конкретные серверы, чтобы получить все, если это возможно. [ 1128]

Обновление:
Благодаря полезным комментариям в первой паре ответов я смог исключить проблемы как с обслуживанием сервера, так и с брандмауэром - у меня нет проблем с получением других вещей с того же сервера, используя протокол зеркала. Проблема в том, что источники не доступны на зеркале, на которое я указал . Другими словами, все пакеты есть, поэтому строки в sources.list, начинающиеся с deb, не имеют проблем, но строки deb-src не работают.

Я также подтвердил, открыв, например, http://giano.com.dist.unige.it/ubuntu/dists/raring/main/ в моем браузере. Согласно сообщению об ошибке, apt-get ищет подкаталог этой директории под названием source, который не существует. Так что проблема не в соединении с сервером, а в том, что на сервере нет ресурсов, которые я ищу.

Я полагаю, что это зависит от зеркала, чтобы решить, хотят ли они также предоставить источники или только пакеты, но я удивлен, что mirrors.ubuntu.com служит мне зеркалом, которое не имеет того, о чем я прошу. Я вижу три варианта, и мне они тоже не нравятся:

  • Жесткое кодирование источников ресурсов deb-src на серверах, где я знаю, что они доступны, т. Е. Жертвовать протоколом mirror в этих экземпляры.
  • Снимите флажок с исходных пакетов в Software Sources, то есть пожертвуйте загрузкой исходных текстов для пакетов.
  • Не обращайте внимания на сообщения об ошибках из apt-get и надеюсь, что mirrors.ubuntu.com укажет мне на другой сервер в будущем.

Есть ли четвертый вариант, который на самом деле решает проблему? =)

0
задан 3 May 2013 в 21:42

3 ответа

Протокол зеркал выбрал ближайший зеркальный сервер, который является http://giano.com.dist.unige.it/ubuntu/. Но в этом случае http://giano.com.dist.unige.it/ubuntu/ не удалось ответить действительным ответом. (Может быть, они занимались небольшим обслуживанием)

И, похоже, к моменту написания статьи все было в порядке.

Пожалуйста, попробуйте еще раз. Ваша проблема могла быть решена. :)

Это то, что я получил, открыв этот URL из браузера.

enter image description here

Если вы видите, есть два элемента, которые были изменены в последний раз сегодня.

0
ответ дан 3 May 2013 в 21:42

Если только пакеты deb-src не работают, это не проблема. deb-src содержат только исходный код, поэтому, если вы сами не взламываете исходный код, он вам на самом деле не нужен (вообще говоря. Есть редкие исключения).

Тем не менее, я видел, как это происходило при переходе в разные сети по разным причинам. Попробуйте следующее, чтобы увидеть, помогают ли они:

  1. Очистите загруженные пакеты в случае сбоя зеркала из-за несовпадения версий: sudo apt-get clean. Это решило проблему один раз, но это могло быть совпадением. Хотя это легко попробовать.
  2. Убедитесь, что брандмауэр не блокирует ваши исходящие пакеты. Обычно apt использует исходящие порты 80 (для HTTP) и 21 (для FTP). Если выходной брандмауэр блокирует их, это может вызвать проблемы. Я не знаю точно, какой порт использует протокол miirrors, но его нужно разрешить и через брандмауэр. Есть несколько разных способов выяснить порты. Дайте мне знать, если вам нужно руководство. Также убедитесь, что межсетевой экран не блокирует входящие пакеты. Обычно это не проблема, потому что большинство брандмауэров находятся в состоянии и они ожидают ответов на соединения, исходящие из сети.
  3. Проверьте настройки прокси. Обычно установки прокси на «авто» достаточно, но иногда это не так. Обратитесь к администратору сети, чтобы узнать, нужны ли вам специальные настройки прокси. Некоторые прокси обрабатывают трафик apt иначе, чем обычный HTTP.
0
ответ дан 3 May 2013 в 21:42

У меня была эта проблема на Raspbian, так как определенный пакет перенаправлялся в зеркало / архив, размещенный на pdx.edu. Сервер архивации в pdx.edu не отвечает и недоступен ... что делать?

В моем примере я пытался установить пакет 'pptp-linux'. Мне нужно было найти зеркало для Raspbian, в котором есть этот пакет. Возможно, вам понадобится найти зеркало для вашего дистрибутивного вкуса, и пример для меня был приведен здесь: добавил его в мой /etc/apt/sources.list вверху файла:

deb http://distribution-us.hexxeh.net/raspbian/archive/raspbian wheezy main contrib non-free rpi

Сохраните изменения и обновите apt-get:

apt-get update

Множество обновлений, зум-зум ... и затем попытка установить мой пакет и apt-get загрузить с нового зеркала. Complete!

0
ответ дан 3 May 2013 в 21:42

Другие вопросы по тегам:

Похожие вопросы: