Linux で yum update や apt update を実行した際に、以下のようなエラーが出ることがあります。
The GPG keys listed for the "Repository" repository are already installed but they are not correct for this package.
NO_PUBKEY XXXXXXXXXXXXXXXX
これは、パッケージの署名を検証するための GPG 公開鍵が不足・不一致 しているときに発生します。
セキュリティ上、リポジトリは必ず署名検証を行うため、正しい GPG 鍵を導入しなければ更新ができません。
🧯 現場で使えるLinuxトラブル対応を探している方へ
障害内容ごとの原因・切り分け・対処を体系化しています。
▶ Linuxトラブル対応まとめ
あわせて読みたい


Linux パッケージ管理入門|apt・rpm・dnf でソフトをインストール/削除/更新
Linux のソフトウェア管理は、単にインストールすれば済む話ではありません。 OS の安定運用やセキュリティ更新の確実性に直結するのがパッケージ管理です。 本記事では…
目次
主な原因
- 新しいリポジトリの GPG 鍵をインポートしていない
- サードパーティリポジトリを追加した際に発生しやすい。
- 既存の GPG 鍵が古くなった・期限切れ
- 公式リポジトリでも鍵が更新されることがある。
- 鍵の不一致
- 違うリポジトリの鍵を誤って登録している場合。
解決方法
1. yum / dnf 系 (RHEL, CentOS, Fedora)
エラーが出たリポジトリの公開鍵をインポートします。公開鍵は通常、リポジトリ提供元のサイトにあります。
例: CentOS の公式キーを登録
sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
特定の URL から鍵を取得することも可能です。
sudo rpm --import https://www.example.com/RPM-GPG-KEY-repo
登録後、改めて更新します。
sudo yum clean all
sudo yum update
あわせて読みたい


【コマンド詳細】sudo完全ガイド|基本・sudoers設計・安全な運用・よくあるエラー対処
sudo は「一般ユーザーが必要なときだけ root 権限でコマンドを実行する」ための仕組みです。ただし sudo は “使い方を間違えると事故が起きる” コマンドでもあります(…
2. apt 系 (Debian, Ubuntu)
エラー例:
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ABCD1234EF567890
不足しているキーを追加します。
2-1. apt-key で追加
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABCD1234EF567890
2-2. ファイルから追加
リポジトリ提供元から GPG 鍵ファイル(例: repo.gpg)を取得し、追加します。
wget https://www.example.com/repo.gpg
sudo apt-key add repo.gpg
その後、キャッシュを更新します。
sudo apt update
あわせて読みたい


Linux パッケージ管理コマンド チートシート|apt・dnf・yum・rpm の使い方完全ガイド
Linuxでソフトウェアを管理する際に基本となるのがパッケージ管理コマンドです。 パッケージ管理を使いこなせるようになると、ソフトウェアの導入・更新・削除が安定し…
3. 古い鍵の更新
既存の鍵が古い場合、削除して新しいものを登録します。
sudo apt-key del ABCD1234EF567890
# 再度 apt-key add で登録
yum の場合も同様に、古い鍵を削除して再インポートします。
注意点
- GPG 鍵は必ず 公式サイトや信頼できる配布元 から取得してください。
- 不明なサイトの鍵を登録すると、悪意あるパッケージをインストールするリスクがあります。
apt-keyは将来的に非推奨のため、可能であれば/etc/apt/trusted.gpg.d/に直接配置する方法が推奨されています。
まとめ
- GPG 鍵エラーは 公開鍵が未登録・期限切れ・不一致 が原因。
- yum 系では
rpm --import、apt 系ではapt-key addを利用して修復する。 - 必ず 公式の配布元から鍵を取得 することが重要。
あわせて読みたい


yum/apt update が失敗する原因と対処
Linux サーバを運用していると、定期的に実行する yum update(RHEL/CentOS 系)や apt update(Debian/Ubuntu 系)が失敗することがあります。 sudo yum update sudo a…
