Почему появляется ошибка
Во время обновления пакетов apt получает списки с серверов (репозиториев).
Если соединение не удаётся установить, вы видите примерно такое сообщение:
Err:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Could not connect to archive.ubuntu.com:80 (91.189.91.83), connection timed out
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy/InRelease
E: Some index files failed to download. They have been ignored, or old ones used instead.Причины ошибки:
- проблемы с сетью или DNS;
- недоступность зеркала Ubuntu/Debian;
- ошибки в файле
/etc/apt/sources.list; - прокси или фаервол блокируют HTTP/HTTPS.
1. Проверьте подключение к интернету
Первым делом убедитесь, что сеть работает:
ping -c 3 google.com
ping -c 3 archive.ubuntu.comЕсли пинги не проходят — настройте сеть или проверьте DNS.
2. Проверьте доступность зеркал
Иногда сервер репозитория временно недоступен.
Попробуйте открыть ссылку из ошибки в браузере или через curl:
curl -I http://archive.ubuntu.com/ubuntuЕсли сервер не отвечает, временно смените зеркало:
sudo sed -i 's|archive.ubuntu.com|mirror.yandex.ru|' /etc/apt/sources.listДля Debian:
sudo sed -i 's|deb.debian.org|mirror.yandex.ru/debian|' /etc/apt/sources.list3. Проверьте правильность файла sources.list
Иногда ошибка возникает из-за лишних пробелов, несуществующих веток или устаревших репозиториев.
Посмотрите содержимое файла:
cat /etc/apt/sources.listДля Ubuntu 22.04 (Jammy) корректный пример выглядит так:
deb http://archive.ubuntu.com/ubuntu jammy main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu jammy-security main restricted universe multiverse4. Очистите кеш и обновите список пакетов
После правки конфигурации выполните:
sudo apt clean
sudo apt updateЕсли всё настроено верно, загрузка индексов пройдёт без ошибок.
5. Используйте HTTPS и актуальные ключи
Некоторые зеркала теперь требуют HTTPS и подписанные ключи GPG.
Убедитесь, что пакет apt-transport-https установлен:
sudo apt install apt-transport-https ca-certificatesЕсли ошибка указывает на “NO_PUBKEY”, добавьте недостающий ключ:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys КОД_КЛЮЧА6. Проверка через другой DNS или VPN
В редких случаях блокировка идёт со стороны провайдера.
Попробуйте изменить DNS:
sudo sed -i '1inameserver 8.8.8.8' /etc/resolv.confЛибо временно подключитесь через VPN и повторите apt update.
Вывод
Ошибка Failed to fetch repository чаще всего связана с недоступностью зеркала или сетевыми ограничениями.
После проверки сети, зеркал и содержимого sources.list команда sudo apt update обычно выполняется успешно.
sudo apt update && sudo apt upgradeЕсли ошибка не исчезает, попробуйте полностью пересоздать sources.list — или временно перейти на официальные зеркала Ubuntu / Debian.