Зачем всё это
Когда 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]