#Что происходит и когда это важно
При sudo apt update появляется NO_PUBKEY и идентификатор ключа, а также адрес репозитория. Проблема относится к проверке подписи Release/InRelease, а не обязательно к неисправности сети или установленного приложения.
#Возможные причины и как их отличить
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Ключ не перенесёнНовый компьютер не содержит ключа поставщика. | Ошибка относится к одному стороннему домену. | Найти официальную инструкцию поставщика и проверить отпечаток. |
| Неверный Signed-ByВ файле источника указан несуществующий либо неподходящий файл ключей. | Ключ установлен, но APT его не использует. | Сверить источник и точный путь к ключу. |
| Поменялся ключ поставщикаПроизводитель перевыпустил ключ или репозиторий действительно изменился. | Старый ключ присутствует, а APT требует другой. | Сверить объявление о смене ключа с официальным сайтом. |
#Пошаговая диагностика и исправление
- Запишите точную ошибкуОткройте «Терминал» через меню приложений Debian. Введите
sudo apt update, нажмите Enter и введите пароль своей учётной записи администратора; при вводе символы не отображаются. Запишите строку NO_PUBKEY вместе с доменом и идентификатором ключа. Если ошибка GPG относится к неизвестному домену, пока не обновляйте пакеты из него. - Проверьте выпуск системыВ терминале без прав администратора выполните
cat /etc/os-release; найдите VERSION_CODENAME. Он должен соответствовать версии, для которой производитель публикует пакеты. Нельзя заменять название выпуска наunstableтолько для устранения ошибки подписи. - Найдите соответствующий файл источникаВыполните
grep -R -n -E "^(deb |URIs:|Signed-By:|Suites:)" /etc/apt/sources.list /etc/apt/sources.list.d/ 2>/dev/null. Сопоставьте адрес из сообщения NO_PUBKEY с файлом.listили.sourcesи строкойSigned-By. Отсутствие отдельного источника может означать управление через пакет: не создавайте вторую дублирующую запись. - Сверьте ключ с официальной страницей поставщикаОткройте официальный сайт разработчика программы и найдите раздел установки именно для вашей версии Debian, где опубликованы отпечаток ключа, адрес скачивания и формат
.asc/.gpg. Не подменяйте адрес из инструкции случайным сайтом и не берите ключ лишь по короткому ID из сообщения; короткого идентификатора недостаточно для проверки подлинности. - Проверьте существующий файл ключаЕсли источник содержит
Signed-By: /etc/apt/keyrings/имя.gpgилиsigned-by=..., в терминале выполнитеls -l /etc/apt/keyrings/и проверьте точное имя и разрешение на чтение. Для существующего файла с именем, полученным из настройки, администратор может сверить полный отпечаток черезgpg --show-keys --with-fingerprint ПУТЬ_К_КЛЮЧУ, подставив свой путь вместо примера. Не помещайте ключ в глобальныйtrusted.gpg, не используйтеapt-key add. - Исправляйте только после проверки подписиЕсли официальная документация подтверждает новый ключ и ваш отпечаток совпадает, следуйте именно её командам установки отдельного файла в
/etc/apt/keyrings/и настройкеSigned-By. Перед правкой скопируйте исходный.listили.sourcesв резервную копию за пределами каталогаsources.list.d, чтобы APT не считал копию вторым источником. Изменения выполняются только администратором. Если ключ не удаётся подтвердить, безопаснее временно отключить именно этот источник в его настройке, не отключая проверку подписей. - Повторите получение списков пакетовВыполните
sudo apt updateи убедитесь, что адрес исправленного источника больше не выдаёт NO_PUBKEY. Если теперь возникает 404 или сообщение о неподдерживаемом выпуске, это отдельная ошибка репозитория: сверяйтеSuitesи не заменяйте его на случайный выпуск Debian.
#Команды из инструкции с пояснениями
sudo apt updatecat /etc/os-releasegrep -R -n -E "^(deb |URIs:|Signed-By:|Suites:)" /etc/apt/sources.list /etc/apt/sources.list.d/ 2>/dev/nullls -l /etc/apt/keyrings/#Как проверить результат
Повторный sudo apt update заканчивается без ошибки подписи конкретного репозитория, адрес и версия источника совпадают с документацией поставщика; никакие режимы доверия trusted=yes не включались.
#Если проблема не устранена
Если достоверного отпечатка и официальной инструкции нет, не устанавливайте пакеты из репозитория: обратитесь к разработчику. При сбое после правки верните резервную копию источника и повторите sudo apt update.