Linux の GPGエラー その2|Ubuntu20.04 gnupgを試すも 意外な解決を見る

PC

前回 apt updateコマンド を実行すると排出される GPGエラー を apt-keyコマンドで解決しようと試みましたが、エラーがでてうまくいきませんでした。

今回は、Tor Project の Repository を検索してヒットした、UbuntuUpdate.org のページに書かれていた内容を元に、gpgコマンドを使ってトラブルが解消できるかを試してみます。

gnupg

前回も同じ内容に触れましたが、apt-keyコマンドは現在非推奨になっていて今後どこかの時点で廃止になるものだと思います。

Ubuntu21.10以降のバージョンでは apt-keyコマンドを実行すると注意喚起文が表示されるそうです。

apt-key の代わりに使うことになるのが gnupg だそうです。

apt-keyで使われていた内容は gnupg の gpgコマンドでキーリングへ変換させて引き継ぎができるそうです。
また signed-byという記述で 対象となるRepositoryとの紐づけをする必要が出てくるそうです。

操作の前に

とりあえず、UbuntuUpdate.org の Tor Project ページに掲載されているコマンドを見てみます。
https://www.ubuntuupdates.org/ppa/tor?dist=focal

gpg --keyserver keys.gnupg.net --recv 886DDD89
gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -

あれ? これって・・・よく見たらこの形だと、 結局 最後に apt-keyコマンド 使ってますよね?

少し分割してみてみると、以下のようになっています。

  • gpg コマンドで、鍵サーバーから 鍵情報を取得する。
  • 取得した鍵ファイルを gpg –export コマンドで キー番号を名称とするファイルとして書き出し。
  • さらに書き出されたファイルを apt-key コマンドで追加。

とりあえず、鍵ファイルの取得部分に gpg コマンドが使われているので試してみます。

gpg --keyserver keys.gnupg.net --recv 886DDD89
gpg: 鍵サーバからの受信に失敗しました: サーバが失敗を示しています

残念ながら、結果は apt-keyコマンドを試した時と同じエラーで失敗です。

エラーメッセージから、サーバーに該当する鍵情報が存在しない可能性も出てきてしまいました。

こうなると キーリングへの変換云々 以前の問題です。

ubuntuupdates.org 再確認

念のため もう一度 コマンドの掲載されていた ubuntuupdates.org を確認したところ、今まで確認していたかったところに気になるものを見つけました。

2022-04-27 に公開されている、 「deb.torproject.org-keyring」 です。

リンクをクリックすると、以下のようなページが表示されました。
Description の項目を見ると、deb.torproject.org の Repository用の GnuPG アーカイブ鍵と書かれています。

物は試しで、下の赤いボタン「APT INSTALL」をクリックしてインストールをしてみました。

インストール後、 Synaptic から確認したところ、下記のようにしっかりインストールされていることが確認できました。

コチラの説明にも 先ほどと同じ説明文が表示されていました。

ここで、ひとまずリストの再読み込み(= apt update) を試したところ、何もなかったように エラーが出なくなりました・・・・

実はコマンド操作でエラーがでてしまうのをどうすることもできず、ひたすら無駄に時間が過ぎてしまいました。 あのバカみたいにハマった時間は何だったのか・・。

というか、GPGキーファイル(パッケージ?)を aptコマンドでインストールするパターンなんてのも存在するんですね!

なんとなくですが、 この手の キー はコマンドで追加するものという頭があったので、コマンドで鍵情報が取得できなくてすっかりハマりこんでしまっていました。

答えはすぐそこに転がっていたんです。

まとめ

  • torproject の GPGエラーが表示されたら、deb.torproject.org-keyring を apt install するか .debファイルをダウンロードしてインストールする。 (コマンドでキーを取得しようとするとサーバーがエラーを返してくる)
  • この形は初めて目にした気がするが、torproject以外でも利用される可能性があるので覚えておくと後に役立つことがありそう。

結果的に、GnuPG コマンドを使って解決する形とはなりませんでしたが、エラー表示が出なくなったので良しとします。

今後機会があれば、今度はapt-key で利用されている鍵情報を GnuPGコマンドで keyringに変換して利用することにもチャレンジしてみたいと思います。


最後までありがとうございました。
今後もこんな形で調べてハマると思いますのでまた見に来てもらえると嬉しいです。

それでは また!

コメント

タイトルとURLをコピーしました