SSD Nodes Learn Hosting plans →
ガイド Matt Connor著者 Matt Connor ・更新日 2026-09-11

Omarchyの更新でkeyringエラーが出る場合の直し方

Omarchyの更新が「invalid or corrupted package PGP signature」で止まる場合は、まずarchlinux-keyringを更新します。直らない場合のpacman keyring手動修復手順も紹介します。

Verified Every command ran end-to-end on a fresh Ubuntu 24.04 server, September 4, 2026.

Omarchy の更新が keyring エラーで失敗する理由

invalid or corrupted package (PGP signature)で停止する Omarchy の更新は、ダウンロードの失敗ではなく keyring エラーです。使用しているarchlinux-keyringは、現在 Arch が使用している署名キーより古いため、pacman は信頼できるキーにたどれないパッケージを拒否します。まず keyring を更新してから、もう一度更新を実行してください。

これは Omarchy に特有の問題ではありません。Arch で通常発生する失敗モードであり、最初に使う Arch マシンが Omarchy マシンである多くのユーザーが、この問題に直面します。

コマンドを実行する前に、対象範囲を確認します。Omarchy は Arch ベースの Hyprland デスクトップ環境なので、以下の内容は手元のマシンを対象としています。VPS への Omarchy のインストール手順ではありません。サーバーでは別のものを実行しており、最後のセクションでその手順を案内するページを示します。

最小限の修正

2 つのコマンドを実行してから、更新します。

sudo pacman -Sy
sudo pacman -S archlinux-keyring
omarchy update

sudo pacman -S archlinux-keyring==> Appending keys from archlinux.gpg... を出力し、その後に時間のかかる ==> Locally signing trusted keys in keyring... を実行します。これらの行は、新しい開発者キーが keyring に追加されたことを示します。1 分前に失敗した更新が、今度は最後まで実行されます。

この手順は、ユーザーが Omarchy issue 4608 で報告したものです。この報告を受けて、updater 自体に keyring の更新処理が追加されました。

pacman -Sy 単体での実行には注意が必要です。これは、インストール済みパッケージをアップグレードせずに、新しいパッケージデータベースをダウンロードします。この状態で任意のソフトウェアをインストールすると、部分アップグレードになります。部分アップグレードは Arch マシンで問題を起こします。新しくビルドされたパッケージは新しいデータベースに記載されたライブラリバージョンを必要としますが、システム上のバージョンは古いままだからです。archlinux-keyring は認められた例外です。これはリンク済みバイナリではなく key material を提供するため、直後に完全なアップグレードを実行します。

omarchy update は Omarchy 4 のコマンドです。Quattro と呼ばれる Omarchy 4 は 2026 年 8 月にリリースされ、2026 年 9 月時点で現行のシリーズです。このコマンドの背後で実行されるスクリプトは omarchy-update で、これを直接実行することもできます。単独の pacman -Syu より、いずれかを使用してください。Omarchy updater は最初に filesystem snapshot を作成し、新しいリリースに合わせて設定を維持するための migration を実行するからです。手動で pacman -Syu を実行すると、その両方が省略されます。

omarchy update keyring の動作

Omarchy 4 では、keyring の処理が独立して実行されます。

omarchy update keyring

2 つの keyring を個別に処理します。常に sudo pacman -Sy --noconfirm archlinux-keyring を実行します。先にバージョンを比較せず再インストールする理由は、スクリプト内で説明されています。その keyring の内容は、パッケージのバージョンを変更せずに変わる可能性があるためです。また、Omarchy の署名キーが存在しない場合は、そのキーを取得してローカルで署名します。

sudo pacman-key --recv-keys 40DFB630FF42BCFFB047046CF0134EE680CAC571 --keyserver keys.openpgp.org
sudo pacman-key --lsign-key 40DFB630FF42BCFFB047046CF0134EE680CAC571

keyring が 2 つあるのは、マシンが 2 か所からパッケージをインストールするためです。archlinux-keyringcore リポジトリにある Arch 自身のパッケージで、Arch の開発者と trusted user のキーを含みます。omarchy-keyring は third party です。これは Omarchy が /etc/pacman.conf に追加する [omarchy] リポジトリから提供されます。stable channel ではその値は Server = https://pkgs.omarchy.org/stable/$arch で、すべての omarchy-* パッケージに署名するキーを含みます。Omarchy 4 には SigLevel = Required DatabaseOptional が含まれているため、署名を trusted key で検証できないパッケージは、どのリポジトリから取得したものでも拒否されます。

未知の信頼がダウンロードの問題ではなく、重要な問題である理由

失敗時には、次のように表示されます。パッケージ名と署名者はマシンごとに異なります。最後の 2 行は異なりません。

error: archlinux-keyring: signature from "Christian Hesse <eworm@archlinux.org>" is unknown trust
:: File /var/cache/pacman/pkg/archlinux-keyring-20230704-1-any.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
error: failed to commit transaction (invalid or corrupted package (PGP signature))

unknown trust は文字どおりに読み取ってください。gpg は署名を解析し、形式が正しいことを確認しています。できなかったのは、その署名に対応する鍵を、マシンが信頼する鍵として結び付けることです。そのため pacman はパッケージを破損していると判断します。pacman の観点では、検証できないパッケージと破損したパッケージは同じ結果になるためです。

信頼する鍵は /etc/pacman.d/gnupg に保存されています。このディレクトリはローカルコピーであり、更新中に最新の内容が取得されることはありません。archlinux-keyring パッケージが /usr/share/pacman/keyrings にインストールする鍵ファイルを基に初期化されます。Arch は独自のスケジュールで開発者の鍵を追加および失効させます。そのため、数か月使用されていなかったマシンには、今朝のパッケージに署名した開発者が追加される前の鍵一覧が残っている可能性があります。関連するメッセージ signature from ... is marginal trust も原因は同じです。鍵自体は存在しますが、ローカルの鍵リングでその鍵を信頼の起点にするローカル署名が不足しています。

鍵リング自体が壊れている場合の完全な修復

場合によっては、修正しようとしているエラーそのもので sudo pacman -S archlinux-keyring が失敗したり、sudo pacman-key --list-keys が有用な情報を返さなかったりします。この場合、鍵リングは古くなっているのではなく破損しているため、再構築する必要があります。

sudo mv /etc/pacman.d/gnupg /etc/pacman.d/gnupg.broken
sudo pacman-key --init
sudo pacman-key --populate archlinux
sudo pacman -Sy archlinux-keyring
sudo pacman-key --populate archlinux

削除するのではなく、古いディレクトリを移動してください。再構築に失敗しても元に戻せます。復元可能な鍵リングには、数 KB 分の容量を使う価値があります。

実行順序が重要です。--init は新しいローカル署名鍵を含む空の鍵リングを作成します。空の鍵リングは何も信頼しないため、この時点でダウンロードを実行すると検証に失敗します。--populate archlinux は、数か月前にインストールしたパッケージによってディスク上に配置されたファイルである /usr/share/pacman/keyrings/archlinux.gpg から鍵リングを埋めます。これらの鍵は古い可能性がありますが、現在の鍵リングパッケージのダウンロードを検証するには十分です。4 行目でこのパッケージを取得します。最後の行で、ダウンロードによって更新された鍵ファイルを読み込みます。

次に、Omarchy の鍵を復元します。/etc/pacman.d/gnupg を削除したことで、信頼済みとするローカル署名も失われています。そのため、復元するまで omarchy-* パッケージはすべて unknown trust で失敗します。

sudo pacman-key --recv-keys 40DFB630FF42BCFFB047046CF0134EE680CAC571 --keyserver keys.openpgp.org
sudo pacman-key --lsign-key 40DFB630FF42BCFFB047046CF0134EE680CAC571
sudo pacman-key --list-keys 40DFB630FF42BCFFB047046CF0134EE680CAC571

最後のコマンドでは、そのフィンガープリントに対応する pub 行が表示されます。代わりに keyserver receive failed 行が表示される場合、ネットワークからポート 443 経由で keys.openpgp.org に接続できていません。再試行する前に、この問題を修正してください。Omarchy 4 では、最初の 2 つのコマンドの代わりに omarchy update keyring を実行できます。これは同じ 2 つの処理を実行します。最後に omarchy update を実行します。

キーリングが最新なのに更新に失敗する場合

時刻が正しくありません。 鍵と署名にはタイムスタンプが含まれており、gpg はそれらをシステム時刻と比較します。時刻が大幅に過去に設定されていると、正しい署名でも鍵が存在する前に作成されたように見えるため、パッケージが拒否されます。timedatectl を実行し、System clock synchronized: yes を確認してください。CMOS バッテリーが切れたノート PC で発生するほか、サーバーでは別の理由で発生します。詳しくは VPS の時刻がずれる理由と同期を維持する方法 を参照してください。

キャッシュされたファイルが 1 つ破損しています。 不安定なミラーによってダウンロードが途中で切れると、同じ invalid or corrupted package の行が表示されます。キーリングを操作しても解決しません。どのパッケージ名が表示されるかで、この問題と区別できます。毎回同じパッケージなら、そのファイルを /var/cache/pacman/pkg/ から削除して、更新を再度実行してください。sudo pacman -Sc は、現在インストールされていないキャッシュ済みバージョンを削除します。

問題は pacman ではなく yay にあります。 AUR のビルドでは、makepkg を使ってアップストリームのソースアーカイブを検証します。makepkg が読み取るのは、~/.gnupg にある自分のユーザーキーリングです。pacman のキーリングは読み取りません。メッセージは ==> ERROR: One or more PGP signatures could not be verified! で、通常は gpg: Can't check signature: No public key の近くに表示されます。通常のユーザーとして gpg --recv-keys <key-id> を実行し、sudo は使用しないでください。sudo pacman-key --recv-keys では解決できません。sudo pacman-key --recv-keys/etc/pacman.d/gnupg に書き込みますが、makepkg はそこを参照しないためです。

pacman-key --refresh-keys は使用しないでください。 保持しているすべての鍵について keyserver に問い合わせるため、処理が遅くなります。また、keyserver が混雑していると完全に失敗します。キーリングに存在しない鍵を追加することもできません。今回の問題はまさにその点です。archlinux-keyring を更新する方法が正式な手順です。

アップデートが途中で停止した場合

/tmp/omarchy-update.logを確認します。ここにはomarchy-updateの出力が記録されています。ターミナルを確認する時点では、最初に発生した実際のエラーが進行状況バーの背後にスクロールされて見えなくなっていることがよくあります。

開始時よりもシステムの状態が悪化している場合は、スナップショットを使用します。snapper が利用可能なシステムでは、Omarchy がアップデート前にスナップショットを作成します。そのため、再起動してブートメニューからアップデート前のスナップショットを選択できます。正常な状態が確認できているその状態から keyring を修復し、もう一度アップデートします。

サーバーはデスクトップではありません

Omarchy はデスクトップ環境です。SSH で接続するサーバーは別の問題を抱えており、必要な対処も異なります。サーバーには、サポート期間が長く、デスクトップスタックを追加しないディストリビューションが適しています。詳しくは VPS に適した OS の選び方を参照してください。そのサーバーで最初に行うべきことは 鍵を使って SSH を保護し、強化した sshd 設定を適用することです。次に、パッケージがこの keyring のように古くならないよう、継続的な メンテナンス手順を整えます。Omarchy の組み込みコーディングエージェント用ショートカットが気に入っている場合、そのエージェントはサーバーでも実行できます。VPS でコーディングエージェントを実行するではセットアップを説明し、tmux セッションで Claude Code を実行し続けるでは、ノート PC を閉じてその場を離れる場合の方法を説明します。

FAQ

sudo pacman -Sy を archlinux-keyring のインストール前に実行しても安全ですか?

このケースに限り安全です。ただし、直後に keyring をインストールし、その後で完全アップグレードを実行してください。-Sy は、インストール済みパッケージが古いままパッケージデータベースを更新します。この状態で通常のソフトウェアをインストールすると部分アップグレードになり、手元にないバージョンのライブラリにリンクされたバイナリが残る可能性があります。archlinux-keyring はリンクされたコードではなくデータなので、標準的な例外に該当します。pacman -Sy の後で停止して、そのまま放置しないでください。

Omarchy が keyring を更新してくれるのに、なぜ keyring エラーが発生するのですか?

アップデーターはパッケージをアップグレードする前に archlinux-keyring を更新します。そのため、通常このエラーはアップデーターを使っていないことを示します。pacman -Syu または yay を手動で実行すると、その手順が省略されます。ほかには、単に古いのではなくローカルの keyring が破損していて、keyring パッケージ自体を検証できないケースがあります。また、その手順が存在する前の古い Omarchy リリースを使っている場合もあります。pacman-key --initpacman-key --populate archlinux による完全な再構築で、破損したケースに対処できます。

omarchy-keyring とは何ですか。archlinux-keyring と同じものですか?

別の場所から提供される異なるパッケージです。archlinux-keyring は Arch のパッケージで、core リポジトリから提供され、Arch の開発者と信頼されたユーザーの鍵を保持します。omarchy-keyring はサードパーティーのパッケージです。Omarchy が pacman の設定に追加する pkgs.omarchy.org[omarchy] リポジトリから提供され、omarchy-* パッケージに署名するフィンガープリント 40DFB630FF42BCFFB047046CF0134EE680CAC571 の鍵を保持します。Omarchy では、両方の鍵セットによる有効な署名が必要です。そのため、どちらか一方を失うと更新が停止します。

署名エラーを修正するために pacman-key --refresh-keys を実行すべきですか?

いいえ。keyring 内のすべての鍵について keyserver に問い合わせるため、時間がかかります。また、keyserver に接続できない場合は失敗します。keyring に一度も存在しなかった鍵をインポートすることもできません。不足している鍵は archlinux-keyring パッケージに含まれています。そのため、sudo pacman -Sy の後に sudo pacman -S archlinux-keyring を実行する方法が、より高速でサポートされている手順です。

VPS に Omarchy をインストールして、2 台のマシンを同じ状態にできますか?

Omarchy は、画面、GPU、キーボードが目の前にあるマシン向けに構築された Hyprland デスクトップです。VPS では表示するものがなく、更新対象となる大量のデスクトップパッケージだけが増えます。VPS ではサーバー向けディストリビューションを実行し、ラップトップでは Omarchy を使ってください。2 台のマシンではパッケージ構成と更新コマンドが異なることを受け入れる必要があります。

#omarchy#arch-linux#pacman#troubleshooting#updates