Отсутствует Signed-By в записи sources.list(5) после установки Ubuntu 24.04.

Вопрос или проблема

Надеюсь, у вас всё хорошо. Проблема начала проявляться после обновления с Ubuntu 23.10 до Ubuntu 24.04 LTS (через обновление Gnome Software).

Вот вывод команды sudo apt update -y:

$ sudo apt update -y
Попадание:1 https://archive.ubuntu.petiak.ir/ubuntu noble InRelease
Попадание:2 https://archive.ubuntu.petiak.ir/ubuntu noble-updates InRelease
Попадание:3 https://archive.ubuntu.petiak.ir/ubuntu noble-backports InRelease
Попадание:4 https://dl.google.com/linux/chrome/deb stable InRelease
Чтение списков пакетов... Готово
Построение дерева зависимостей... Готово
Чтение информации о состоянии... Готово
19 пакетов могут быть обновлены. Запустите 'apt list --upgradable', чтобы увидеть их.
N: Пропуск получения настроенного файла 'main/binary-i386/Packages', так как репозиторий 'https://dl.google.com/linux/chrome/deb stable InRelease' не поддерживает архитектуру 'i386'
N: Отсутствует Signed-By в источнике списка (5) для 'https://archive.ubuntu.petiak.ir/ubuntu'
N: Отсутствует Signed-By в источнике списка (5) для 'https://archive.ubuntu.petiak.ir/ubuntu'
N: Отсутствует Signed-By в источнике списка (5) для 'https://archive.ubuntu.petiak.ir/ubuntu'

Части, вызывающие беспорядок:

N: Пропуск получения настроенного файла 'main/binary-i386/Packages', так как репозиторий 'https://dl.google.com/linux/chrome/deb stable InRelease' не поддерживает архитектуру 'i386'
N: Отсутствует Signed-By в источнике списка (5) для 'https://archive.ubuntu.petiak.ir/ubuntu'
N: Отсутствует Signed-By в источнике списка (5) для 'https://archive.ubuntu.petiak.ir/ubuntu'
N: Отсутствует Signed-By в источнике списка (5) для 'https://archive.ubuntu.petiak.ir/ubuntu'

В моем случае помогло удаление префикса страны из /etc/apt/sources.list.d/ubuntu.sources.

Итак, было раньше

[…]
URIs: http://ru.archive.ubuntu.com/ubuntu/
[…]

и затем стало:

[…]
URIs: http://archive.ubuntu.com/ubuntu/
[…]

Я не совсем уверен, что это вызывает (возможно, отсутствие ключа?), но это явно какая-то неправильная конфигурация на стороне установщика Ubuntu 24.04.

Взяв подсказку с https://www.digitalocean.com/community/questions/n-missing-signed-by-in-the-sources-list-5-entry-for-http-mirrors-digitalocean-com-ubuntu, я добавил:

Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

В каждую запись в моем файле /etc/apt/sources.list.d/, для gb.archive.ubuntu.com и security.ubuntu.com в моем случае. Это исправило ошибку, и все источники теперь загружаются и проверяются.

Я предполагаю, что столкнулся с этим из-за того, что установка старая и обновлялась многократно, включая тот факт, что я, вероятно, вручную настраивал файл источников в какой-то момент. Он все еще был в старом стиле “просто одна строка на источник” до этого обновления с LTS 22, через 23, до LTS 24.

Я столкнулся с этим вчера. Я решил проблему следующим образом:

  • Я нахожусь в Новой Зеландии, поэтому я использую http://nz.archive.ubuntu.com/ubuntu, а не более общий http://archive.ubuntu.com/ubuntu. По какой-то причине обновление до 24.04 сбросило URL-адреса на общий, не региональный URL. Добавление префикса nz. ко всем URL-адресам во всех файлах, названных archive_uri-http_archive_ubuntu_com_ubuntu-*, в /etc/apt/sourced.d.list/ продвинуло меня на один шаг вперед.
  • Я скопировал строку Signed-By:, упомянутую в /etc/apt/sources.list.d/ubuntu.sources, во все файлы archive_uri-http_archive_ubuntu_com_ubuntu-* в том же каталоге. Это работает, потому что URL в ubuntu.sources является региональным nz.archive.ubuntu.com, который я теперь скопировал во все archive_* файлы на предыдущих шагах.
  • Выполнение sudo apt update затем дало мне кучу предупреждений, похожих на
W: Target CNF (universe/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list.d/archive_uri-http_archive_ubuntu_com_ubuntu-impish.sources:1 and /etc/apt/sources.list.d/ubuntu.sources:1
  • Проверка проблемного файла archive_uri-http_archive_ubuntu_com_ubuntu-impish.sources показала, что он действительно является по существу дубликатом содержимого ubuntu.sources, поэтому я переместил его в другую директорию (sudo mv archive_uri-http_archive_ubuntu_com_ubuntu-impish.sources ~/)

После этого я смог запустить sudo apt update без ошибок/предупреждений.

Я не на 100% уверен, каким должен быть URL в вашем случае. Посмотрите, что там в ubuntu.sources. Возможно, стоит поискать более быстрый в списке зеркал. Ища под Ираном, я бы подумал, что Saba Abr Mizban или Tegra host должны быть намного быстрее, чем тот, который вы используете в данный момент.

  1. Найдите источники, которые содержат us.archive.ubuntu.com

    grep -r "us.archive.ubuntu.com" /etc/apt/
    /etc/apt/sources.list.d/us_archive_ubuntu_com_ubuntu.sources:URIs: http://us.archive.ubuntu.com/ubuntu
    /etc/apt/sources.list.d/us_archive_ubuntu_com_ubuntu.list.save:deb http://us.archive.ubuntu.com/ubuntu focal multiverse
    /etc/apt/sources.list.d/us_archive_ubuntu_com_ubuntu.list.distUpgrade:deb http://us.archive.ubuntu.com/ubuntu noble multiverse
    
  2. Отредактируйте файл us_archive_ubuntu_com_ubuntu.sources, добавив Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg в конец файла.

    sudo vim /etc/apt/sources.list.d/us_archive_ubuntu_com_ubuntu.sources
    Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
    

ПРИМЕЧАНИЕ: Я отредактировал только один файл, а не все!

Для url-адресов serverloft.eu, мой файл /etc/apt/sources.list.d/third-party.sources теперь выглядит так, после простого добавления последней строки, и теперь предупреждения исчезли:

Types: deb deb-src
URIs: http://ubuntu.mirror.serverloft.eu/ubuntu
Suites: noble noble-updates noble-security
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Для зеркала aliyun, я добавил следующую строку в конец third-party.sources, чтобы исправить эту проблему. Но я задаюсь вопросом, не стоит ли спросить GPG у сайта зеркала Aliyun?

cat third-party.sources

Types: deb deb-src
URIs: http://mirrors.aliyuncs.com/ubuntu/
Suites: noble noble-updates noble-security noble-backports noble-proposed
Components: main restricted universe multiverse
Signed-by: /usr/share/keyrings/ubuntu-archive-keyring.gpg

UBUNTU 24.04.1 После установки (UEFI) =

sudo nano /etc/apt/sources.list

скопируйте и вставьте это =

deb http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse

Контроль X для выхода, Y для сохранения, enter, теперь =

sudo apt update

Ответ или решение

Обнаруженные проблемы при обновлении до Ubuntu 24.04 LTS после Ubuntu 23.10 могут быть вызваны изменениями в системе управления репозиториями, которые было введены при новом обновлении. Ошибка "Missing Signed-By in the sources.list(5) entry" указывает на то, что в конфигурации репозиториев отсутствует информация о GPG-ключах, которую необходимо явно указать для безопасности и предотвращения манипуляций с пакетами.

Фокус внимания (F): Определение проблемы

После обновления до новой версии Ubuntu, вы столкнулись с сообщением об ошибке, которое свидетельствует о необходимости уточнения данных о ключа GPG в файле sources.list или sources.list.d/. Это вызвано изменёнными требованиями безопасности в Ubuntu 24.04 LTS, которые требуют наличия поля Signed-By в каждом определении репозитория.

Исследование (O): Анализ проблемы

Ваш вывод команды sudo apt update -y показывает, что система обнаружила отсутствие информации о GPG-ключе для определенных репозиториев. Это ошибка конфигурации, часто встречающаяся при обновлении системы, которая могла сохраниться с момента прошлых обновлений. Одними из решений были бы коррекция URL-адресов на актуальные зеркала и прописывание строки Signed-By с указанием на правильные ключи.

Решение (R): Пошаговая инструкция

  1. Редактирование источников обновлений: Откройте файл /etc/apt/sources.list или соответствующие файлы в папке /etc/apt/sources.list.d/ с помощью текстового редактора, например командой sudo nano /etc/apt/sources.list.

  2. Добавление строки ‘Signed-By’: Для каждого URL внесите строку Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg после каждого URI. Это позволит установить доверие к пакету, поскольку он будет подписан нужным ключом.

  3. Алгоритм поиска ошибок: Выполните команду grep -r "archive.ubuntu" /etc/apt/ для поиска упоминаний об archive.ubuntu. Это поможет в обнаружении всех точек, где нужно произвести изменения.

  4. Пользовательские и локальные зеркала: Убедитесь, что вы используете наиболее актуальные и быстрые зеркала для вашего региона. Например, используйте региональные зеркала, такие как nz.archive.ubuntu.com для Новой Зеландии.

  5. Общая проверка: После внесения изменений, выполните sudo apt update для проверки конфигурации и обновления индексов пакетов.

Инструкция (E): Повторное выполнение и тестирование

После внесения необходимых изменений и выполнения sudo apt update проверьте, исчезли ли предупреждения. Убедитесь, что вы больше не видите сообщений о "Missing Signed-By". Также проверьте возможность обновления системных пакетов через sudo apt upgrade без возникновения ошибок.

Заключительные мысли (S): Заключение

Эти изменения не только устранят ошибку, но и повысят безопасность вашей системы за счет полной проверки источников пакетов с использованием правильных и актуальных ключей. Взгляд на ситуацию с точки зрения профессионала в области ИТ позволяет вам быстро и эффективно автоматизировать решения подобных проблем и поддерживать безопасность и работу систем.

Оцените материал
Добавить комментарий

Капча загружается...