[!NOTE]
この記事は 2012/07/05 にseijimomoto.blogspot.com/2012/07/pacman.html
へ投稿した内容を Qiita へ移行してきたものです
Arch Linux のインストール後、パッケージマネージャの Pacman を使おうとしたら...
warning: Public keyring not found; have you run 'pacman-key --init'?
error: packege_name: key "****************" is unknown
error: key "****************" could not be looked up remotely
...というエラーが生じて、パッケージを更新できない。
Pacman の初期設定では、信頼できる署名がされたパッケージしかインストールできない。
信頼できる署名は pacman-key
コマンドで管理するため、ひとまずこのコマンドで鍵束を初期化し、その束に開発者たちの鍵を追加しなければ何もインストールできない。
pacmanキーリングの初期化
上のエラーで出ている通り、キーリングの初期化は pacman-key --init
で行う。鍵の生成にはエントロピーが必要とされるため、マウスを動かしたりキーボードを適当に押下する。
開発者の鍵を追加
キーリングの初期化をしても信頼のできる署名のリストが空では、パッケージをインストールする度に、次のような出力がでて時間がかかる。
:: Import PGP key ********, "hoge hoge <******@archlinux.org>", created YYYY-MM-DD? [Y/n]
signature from "hoge hoge <******@archlinux.org>" is unknown trust
初期化が終わったら pacman-key --populate archlinux
コマンドでオフィシャルパッケージ開発者の鍵を追加できる。
インストールに必要な信頼の度合い
/etc/pacman.confのSigLevel
で、インストールに必要な信頼の程度をリポジトリ毎に設定できる。この値に TrustAll
を設定すると検証は行われなくなるが、これはデバッグのために用意されたもので常時使用することは推奨されていない。初期値の PackageRequired
や TrustedOnly
のままにしておいて、必要なパッケージの署名だけキーリングに追加しておくことが望ましい。