Довольно часто при использовании сторонних PPA репозиториев во время обновления списка пакетов можно получить ошибку репозиторий не содержит файла release Ubuntu. Обычно она не мешает работе других репозиториев, но репозитории, которые выдают эту ошибку чаще всего не обновляются.
В этой небольшой статье мы разберем что означает эта проблема, а также пути ее решения. Статья ориентированна, в основном, на Ubuntu, но подойдет для Debian и всех основанных на нем или Ubuntu систем.
Содержание статьи
Как исправить Репозиторий не содержит файла release Ubuntu?
Файл Release - один из самых важных файлов для работы репозитория в Ubuntu. Когда утилита apt обновляет список пакетов, она открывает адрес репозитория и пытается прочитать файл Release. В нем содержится основная информация о репозитории, а также адреса файлов packages.gz, в которых находятся списки пакетов, ссылки где их можно найти и контрольные суммы. Если этого файла нет, то репозиторий подключить невозможно.
Причин этому может быть несколько. Либо репозиторий заброшен и больше не развивается, либо вы его неправильно настроили. В терминале эти ошибки обычно не мешают, а вот при попытке обновления через графический интерфейс могут возникнуть проблемы.
1. Нет ветки репозитория для вашей версии Ubuntu
Сначала убедитесь, что вы используете правильные репозитории для своего дистрибутива. Например, утилита apt-add-repository при добавлении PPA репозитория добавляет к его адресу кодовое имя дистрибутива. У репозитория нет отдельной ветки для вашей системы, то он не сможет быть добавлен. Нужно вручную указать то, кодовое имя, для которого есть ветка.
Например, если вы пытаетесь добавить репозиторий ubuntu-audio-dev стандартным способом в Ubuntu, то получите ошибку:
Зайдите на страницу этого PPA репозитория на Launchpad и проверьте есть ли версия для вашего дистрибутива. Как видите, здесь версии для Ubuntu 18.04 Bionic нет, есть только для Ubuntu 13.04 Raring:
Конечно, такое использование репозиториев не очень безопасно, но если вам очень нужно его добавить, то можно найти файл репозитория в /etc/apt/sources.list.d/ и заменить в нем bionic на raring:
ls /etc/apt/sources.list.d/
vi /etc/apt/sources.list.d/ubuntu-audio-dev-ubuntu-ppa-bionic.list
Теперь, репозиторий загружается нормально
sudo apt update
Система сообщает только что невозможно пройти проверку подлиности ключа, возможно, срок его действия уже истек. Чтобы игнорировать проверку подлинности репозитория по GPG добавить в строку конфигурации репозитория такой параметр:
2. Вы используете старую версию системы
Также подобную ошибку вы можете получать если используете старую, уже не поддерживаемую версию Ubuntu. Дело в том, что после завершения срока поддержки, текущие репозитории пакетов переносятся на другой сервер - old-releases.ubuntu.com. Чтобы устанавливать программное обеспечение в этих дистрибутивах нужно добавить заменить все адреса archive.ubuntu.com и security.ubuntu.com на old-releases.ubuntu.com/ubuntu в файле /etc/apt/sources.list:
sudo vi /etc/apt/sources.list
Только тогда нужные пакеты будут доступны. Это все касается не только Ubuntu, но и других дистрибутивов, только кодовые имена там будут другими.
3. Удаление не работающих репозиториев
Если таким способом ошибку устранить не удалось, остается только удалить проблемный репозиторий, чтобы он не выводил каждый раз ошибки и не мешал обновлению через графический интерфейс. Отключить репозиторий можно через графический интерфейс. Для этого откройте окно "Программы и обновления":
Затем перейдите на вкладку "Другое ПО":
Здесь нужно снять галочки с проблемных репозиториев для их отключения.
Также можно удалить полностью репозиторий через терминал, выполнив команду:
sudo apt-add-repository --remove ppa://имя_репозитория/ppa
Например:
sudo apt-add-repository --remove ppa://ubuntu-audio-dev/ppa
Или еще можно удалить файл настроек репозитория из /etc/apt/sources.list.d/, но этот вариант не такой надежный, так, как в системе все еще останется ключ репозитория.
Выводы
В этой статье мы рассмотрели как исправить ошибку repository has no release file. Хоть это проблема не пользователя, а скорее самого репозитория, можно кое-что сделать чтобы ее исправить. Если у вас остались вопросы, спрашивайте в комментариях!
Спасибо автору, доступно и тема не редкая, особенно про устаревшие gpg key...
old-releases.ubuntu.com. узнал про это когда закончилили поддержку Ubuntu 10.04/ Работает до сих пор. Обновлений системы естественно нет, но репы работают. Через Gdebi ставится все что угодно.
Как вы изменили файл репозитория?
У меня на файле стоит "только чтение"
Откройте с через sudo. Если не помогает в Vim можно использовать :w! вместо :w
А мне помогло )))
1. sudo apt update && sudo apt upgrade
2. sudo rm -f /etc/apt/sources.list{,.d/*}
3. sudo software-properties-gtk
Спасибо большое. Помогло.
1. Закачал репозиторий через apt-mirror,
2. поднял апач,
3. установил симлинки,
4. проверил что видно и доступно по сети,
прописываю на второй машинке ,а дальше *линуксовая неведомая магия*
Ошибка: Репозиторий «бла-бла-бла main Release» не содержит файла Release
хотя файл там есть, он подписан, там даже есть Packages Packadges.gz Packages.bz2 Release и Release.gpg
Ошибка: "Репозиторий «http://ip_адрес/apt.postgresql.org/pub/repos/apt/dists main Release» не содержит файла Release"
Я с Линуксом пока на вы, но очень стараюсь)))
1. Как можно исправить?
2. Можно ли принудительно отказать в проверке репозитория и сказать ему что он доверенный полюбому
Можно ещё "пургом" подчистить ненужный реп "под корень"
sudo apt install ppa-purge -y;
sudo ppa-purge имя_ppa_репозитория -y;
Пурген это слабительное )))
Уважаемый автор, поделитесь, пожалуйста, названием обоев рабочего стола)
Спасибо.
Статья написана довольно давно, у меня не сохранилось информации какой фон там использовался.
Благодарю! old-releases мне помог. Единственное сайт где об этом ясно и понятно написано
Спасибо! Что бы я без вашего сайта делал, всё время выручаете