Зачем всё это

Когда pacman ругается на «invalid or corrupted package (PGP signature)» или «required key missing from keyring», обычно сломан или устарел ключевой ring (archlinux-keyring/manjaro-keyring).[1][2]

***

1. Инициализация keyring

sudo pacman-key --init
  • Создаёт /etc/pacman.d/gnupg и генерирует локальную пару ключей, на которой строится доверие к ключам пакетов.[3][1]
  • Требует немного энтропии (движения мышью, ввод с клавы и т.п.).[4]

***

2. Загрузка ключей Arch/Manjaro

sudo pacman-key --populate archlinux manjaro
  • Заполняет локальный keyring официальными ключами разработчиков Arch и Manjaro, чтобы pacman мог проверять подписи пакетов из их репозиториев.[5][6][7]
  • Без этого pacman будет считать подписи пакетов «неизвестно доверенными».

***

3. Обновление ключей

sudo pacman-key --refresh-keys
  • Подтягивает актуальное состояние ключей с ключесерверов: новые подписи, продления срока, отозванные ключи.[1][3]
  • На слабом соединении может крутиться долго; на Manjaro иногда достаточно просто переустановить пакеты keyring без длинного refresh.[8][2]

***

4. Форс‑обновление баз пакетов

sudo pacman -Syy
  • Дважды y заставляет pacman полностью перескачать базы репозиториев, даже если он считает их свежими.[9]
  • Нужно, чтобы новые ключи проверяли актуальные, а не старые индексы пакетов.

***

5. Обновление пакетов keyring

sudo pacman -S archlinux-keyring manjaro-keyring
  • Ставит последние версии пакетов с ключами; они содержат «снимок» актуальных ключей разработчиков.[2][10]
  • Полезно, если ISO старое и keyring на системе сильно отстаёт от репозиториев.

***

6. Полное обновление системы

sudo pacman -Syu
  • После исправления ключей запускается нормальное полное обновление: синхронизация баз (-Sy) и обновление всех пакетов до актуальных версий (-u).[11][9]
  • Если после этого остаются 1–2 проблемных пакета с подписью, обычно помогает смена зеркала и очистка кэша конкретного пакета.

[1](https://wiki.archlinux.org/title/Pacman/Package_signing)
[2](https://forum.manjaro.org/t/corrupted-packages-invalid-keyrings-during-update/119697)
[3](https://pacman.archlinux.page/pacman-key.8.html)
[4](https://avnsgt.gitbooks.io/archlabs-knowledge-base/content/gnupg/pacman-key.html)
[5](https://wiki.archlinux.de/title/Pacman-key)
[6](https://github.com/manjaro/manjaro-docker/blob/main/pacman.conf)
[7](https://stackoverflow.com/questions/35251359/cannot-upgrade-arch-linux-pacman-syu-not-working)
[8](https://forum.manjaro.org/t/sudo-pacman-key-refresh-keys-infinite-loop/148524)
[9](https://wiki.archlinux.org/title/Pacman)
[10](https://bbs.archlinux.org/viewtopic.php?id=277208)
[11](https://www.perplexity.ai/search/ab9e179a-42ce-48fa-a06e-1ae43e588416)
[12](https://www.reddit.com/r/archlinux/comments/15730ne/pacmankey_init_causing_problems_and_pacman_sy/)
[13](https://www.facebook.com/groups/archlinuxen/posts/10159759745548393/)
[14](https://www.cheat-sheets.org/project/tldr/command/pacman-key/os/linux/)
[15](https://emby.media/support/articles/misc/downloads/Emby-Pkg-Pacman.html)
[16](https://www.reddit.com/r/PinePhoneOfficial/comments/shk03d/solved_manjaro_pacman_key_errors_on_my_new/)
==========================================

Сделаем маленький скрипт «починить keyring и обновить систему» под Manjaro.

#!/usr/bin/env bash
set -e

echo "[*] Инициализируем keyring..."
sudo pacman-key --init

echo "[*] Заполняем ключами Arch/Manjaro..."
sudo pacman-key --populate archlinux manjaro

echo "[*] Обновляем ключи (может висеть, включи вручную при необходимости)..."

sudo pacman-key --refresh-keys

echo "[*] Форсируем обновление баз..."
sudo pacman -Syy --noconfirm

echo "[*] Обновляем пакеты keyring..."
sudo pacman -S --noconfirm archlinux-keyring manjaro-keyring

echo "[*] Полное обновление системы..."
sudo pacman -Syu --noconfirm

echo "[+] Готово."

[file-name 000319_2026-01-06_20-17-21.txt]