先日、私の Ubuntu 22.04 LTS 環境で Google Chrome をアップデートしようとしたところ、下記のようなエラーが発生してしまいました。
問題が発生しました:E:ソース http://dl.google.com/linux/chrome/deb/stable に関してオプション Signed-By の値が競合します。: /usr/share/keyrings/googlechrome-keyring.gpg !=
このエラーメッセージは、Google Chrome のリポジトリ設定において、署名キーに関する競合が起きていることを示唆しています。同じような問題に遭遇した方の参考になればと思い、解決までの手順をまとめました。
- 現状の確認から
まず、何が問題なのかを把握するために、ターミナルからパッケージリストの更新を試みました。
sudo apt update
案の定、同じエラーメッセージが表示され、アップデートが正常に完了しないことが確認できました
- 設定ファイルの確認
エラーメッセージに示唆されている通り、Google Chrome のリポジトリ設定ファイル (/etc/apt/sources.list.d/google-chrome.list) を確認しました。
sudo nano /etc/apt/sources.list.d/google-chrome.list
ファイルの内容は以下の通りで、Signed-By オプションが重複しているような記述は見当たりませんでした。
deb [arch=amd64 signed-by=/usr/share/keyrings/googlechrom-keyring.gpg] http://dl.google.com/linux/chrome/deb/ stable main
- さまざまな解決策を試みるも…
ここから、いくつかの解決策を試みました。
古い設定ファイルの確認: 他の Google Chrome 関連の設定ファイルが残っていないか確認しましたが、特に見当たりませんでした。
APT キャッシュのクリア: APT のキャッシュをクリアし、再度更新を試みましたが、状況は変わりませんでした。
sudo apt clean
sudo apt update
キーリングファイルの再インポート: Google Chrome のキーリングファイルを再度インポートしてみましたが、これも効果はありませんでした。
- 公開鍵エラーとの遭遇
キャッシュクリア後、再度 sudo apt update を実行した際に、今度は下記のような公開鍵エラーが発生しました。
W: http://dl.google.com/linux/chrome/deb/dists/stable/InRelease の取得に失敗しました 公開鍵を利用できないため、以下の署名は検証できませんでした: NO_PUBKEY 32EE5355A6BC6E42
このエラーから、Google Chrome のリポジトリの署名を確認するための公開鍵がシステムに登録されていない、または正しく認識されていない可能性が高いと判断しました。
- 新しいキーリング管理方法への移行
非推奨となっている apt-key ではなく、新しい推奨される方法で公開鍵を登録することを試みました。
まず、Google の公開鍵をダウンロードし、専用のディレクトリに保存しました。
cd /tmp
wget https://dl.google.com/linux/linux_signing_key.pub
sudo mkdir -p /etc/apt/keyrings
sudo mv /tmp/linux_signing_key.pub /etc/apt/keyrings/google-chrome.asc
そして、google-chrome.list ファイルを編集し、signed-by オプションで新しいキーリングファイルの場所を指定しました。
sudo nano /etc/apt/sources.list.d/google-chrome.list
ファイルの内容を以下のように修正しました。
deb [arch=amd64 signed-by=/etc/apt/keyrings/google-chrome.asc] http://dl.google.com/linux/chrome/deb/ stable main
- 再度のアップデート実行と解決
上記の設定変更後、再度パッケージリストを更新しました。
sudo apt update
今度はエラーが表示されることなく、正常にパッケージリストが更新されました!
その後、Google Chrome のアップグレードを実行したところ、無事に最新バージョンにアップデートすることができました。
sudo apt upgrade google-chrome-stable
まとめ
今回のエラーは、Google Chrome の署名キーの管理方法が新しい方式に移行する過程で、何らかの不整合が発生したことが原因と考えられます。非推奨の apt-key ではなく、新しいキーリング管理方法 (/etc/apt/keyrings/ ディレクトリと signed-by オプション) を用いることで、問題を解決することができました。
今回の対処及び記事はGeminiのアドバイスによるものです。
タグ: Google Chrome, ubuntu22.04