Невозможно обновить список APT: «в репозитории больше нет файла релиза»

27

Я не могу запустить, apt-get updateпоскольку я сталкиваюсь со следующей ошибкой:

# apt-get update
Hit:1 http://ftp.br.debian.org/debian testing InRelease
Ign:2 http://security.debian.org/debian-security testing/updates InRelease
Err:3 http://security.debian.org/debian-security testing/updates Release
  404  Not Found [IP: 151.101.92.204 80]
Reading package lists... Done
E: The repository 'http://security.debian.org/debian-security testing/updates Release' no longer has a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: Repository 'http://ftp.br.debian.org/debian testing InRelease' changed its 'Codename' value from 'buster' to 'bullseye'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

Итак, здесь есть два сообщения об ошибках:

  1. В репозитории больше нет файла Release, что странно. Я проверил на http://security-cdn.debian.org/debian-security/zzz-dists/testing/updates/ ant, похоже, файл релиза есть. Я смотрю не в том месте или там что-то еще происходит?
  2. Хранилище изменило свое имя с busterна bullseyeи это «должно быть принято явно» (я видел это однажды сегодня; его не было, когда я открывал вопрос, и он больше не появляется). Это не удивительно, но я не ожидал, что это станет проблемой, если я буду отслеживать репозиторий testingвместо имени релиза.

Что я могу сделать? APT говорит мне, чтобы я прочитал apt-secure(8), но в нем либо нет нужной мне информации, либо я не могу ее понять.

Джусти
источник

Ответы:

39

Измените testing/updatesна testing-securityсвой, sources.listчтобы соответствовать http://security-cdn.debian.org/debian-security/dists/testing-security/

Затем запустите apt updateвместо того, apt-get updateчтобы в интерактивном режиме принять различные изменения.

Согласно этому сообщению Reddit, это изменение имени репозитория было введено в выпуске 10.

SLV
источник
Этот ответ, кажется, единственный, который отвечает на фактический вопрос, хотя другие ответы все еще интересны.
multithr3at3d
1
Я долго думал о aptпротив apt-get. Это заставило меня наконец искать это. aptявляется предпочтительным способом управления пакетами для конечных пользователей.
Фил
Это решает проблему. Кроме того, ответ на другой мой вопрос: ссылка, которую я разместил, верна; отсутствует файл выпуска. Но файл говорит " buster". Я предполагаю, что это было устарело некоторое время назад, и я пропустил объявление.
Джусти
Ссылка, которую вы разместили, действительно существует, но zzz-distsчасть в URL необычна. Это выглядит как папка, которую я бы переименовал, чтобы поместить ее в список файлов. Я не знал о testing/updatesпереименовании, пока не столкнулся с той же проблемой, что и вы. Это упоминается Debian : если вы отслеживаете тестирование или код следующего стабильного имени, у вас всегда должна быть соответствующая основная строка deb security.debian.org <"testing" или кодовое имя> -security в вашем / etc / apt / sources .list .
SLV
14

Если вы переходите с тестирования на бустер, обязательно запустите

apt-get update --allow-releaseinfo-change

Если нет, apt-get updateто не позволит вам обновить с помощью Buster и будет выдавать сообщения, подобные этим:

N: Репозиторий ' http://deb.debian.org/debian buster InRelease' изменил значение 'Version' с '' на '10 .0 '

E: Репозиторий « http://deb.debian.org/debian buster InRelease» изменил значение «Suite» с «тестирования» на «стабильный»

N: Это должно быть принято явно, прежде чем обновления для этого хранилища могут быть применены. Для получения подробной информации смотрите man-страницу apt-secure (8).

N: Репозиторий ' http://security.debian.org/debian-security buster / updates InRelease' изменил значение 'Version' с '' на '10'

E: Хранилище ' http://security.debian.org/debian-security buster / updates InRelease' изменило значение 'Suite' со значения 'testing' на 'stable' N: это необходимо принять явно, прежде чем можно будет обновить обновления для этого хранилища. приложенное. Для получения подробной информации смотрите man-страницу apt-secure (8).

michaelkrieger
источник
12

Согласно новостям Debian Project, опубликованным 1 июля, Debian 10 "Buster" должен был перейти с тестирования на стабильный на 2019-07-06.

Похоже, что переход фактически был выполнен в соответствии с графиком, и поэтому тестируемый дистрибутив теперь должен догонять нестабильно , чтобы в конечном итоге стать Debian 11 «Bullseye». Вы можете испытывать некоторые временные побочные эффекты из-за этого перехода зеркал Debian.

Если вы хотите , чтобы остаться с Debian 10 «Buster», теперь будет время хорошо переключить /etc/apt/sources.listиспользовать имя освобождения busterвместо testing.

В противном случае, вы скоро будете получать сырые передовые материалы из нестабильного , и вы можете случайно получить частичное обновление до прото- «яблочко».

Кроме того, это напоминание для всех, кто использует слово stableв своем слове, /etc/apt/sources.listчтобы подумать, стоит ли заменить его stretchна прежнюю версию и оставить его , или прочитать примечания к выпуску и выполнить рекомендуемые шаги по обновлению.

Телком
источник
1
Что мне делать, если я хочу продолжать использовать ветку Testing? Что должен сказать мой sources.list? Благодарность!
Оскар Гуахардо
2
До 2019-07-06 тестирование означало Debian 10; Теперь это означает , что Debian 11. Если вы хотите , чтобы остаться с Debian 10 вы использовали до сих пор, вы должны изменить слово testingв вашем sources.listTobuster прямо сейчас . С другой стороны, если вы действительно хотите быть в авангарде спринта Debian 11, ничего не меняйте. Возможно, подождите неделю или две, пока не пройдет самый страшный шторм, проследите за соответствующими списками рассылки Debian, затем запустите apt full-upgradeи посмотрите, что произойдет. Если что-то сломалось, сделайте хорошие сообщения об ошибках. Вы будете тестировать Debian 11, пока он начинает обретать форму!
Телеком
PS: очевидно, что-то я пропустил вчера в сообщении об ошибке, или это новое. Я проверю в логах.
Джусти
1
Нет. Это определенно новый. Я был в курсе перехода. На самом деле, именно поэтому я попытался обновить вчера. Насколько я знаю, testingтолько что вышел из заморозки, и я хотел обновить. Так что же мне говорит APT? Как «явно принять» новое кодовое имя дистрибутива? Я не помню, чтобы когда-либо делал это раньше.
Джусти
Кодовое имя testingизменилось с busterна bullseyeотражающее переход Debian 10 -> 11, и это кодовое имя включено в файлы выпуска. Похоже , ваш вариант aptявляется достаточно умны , чтобы блокировать случайные обновления от busterдоbullseye . Приоритет проекта Debian, скорее всего, заключается в stableвыпуске нового и исправлении любых проблем, связанных с ним, поэтому он testingможет быть несколько сломан в течение нескольких дней, пока не получится создать новые ключи APT для нового testingвыпуска. Возможно, вам придется вручную обновить debian-archive-keyringpkg после выпуска нового.
Телеком
4

Запустите apt updateи примите изменения (при каждом запросе введите y). Будут внесены все необходимые изменения.

Владимир Боденчук
источник
Это работает для тех, кто хочет остаться с «бастер-релизом», который стал стабильным.
Тони Пауэр