なぜ `apt upgrade` は Skype 用の新しいソフトウェア キー署名を取得しないのでしょうか?

なぜ `apt upgrade` は Skype 用の新しいソフトウェア キー署名を取得しないのでしょうか?

最近、その後apt update && apt full-upgrade実行したときに次のエラーが発生するようになりましたapt full-upgrade

Get:4 https://repo.skype.com/deb stable InRelease [4,502 B]                                        
Err:4 https://repo.skype.com/deb stable InRelease
  The following signatures were invalid: EXPKEYSIG 1F3045A5DF7587C3 Skype Linux Client Repository <[email protected]>
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://repo.skype.com/deb stable InRelease: The following signatures were invalid: EXPKEYSIG 1F3045A5DF7587C3 Skype Linux Client Repository <[email protected]>
W: Failed to fetch https://repo.skype.com/deb/dists/stable/InRelease  The following signatures were invalid: EXPKEYSIG 1F3045A5DF7587C3 Skype Linux Client Repository <[email protected]>
W: Some index files failed to download. They have been ignored, or old ones used instead.

これを修正する方法はありますか、それとも Microsoft/Canonical が必要なキー署名を作成/更新するまで待つべきでしょうか?

答え1

キーが更新されたので、次のコマンドでインストールできます。

curl https://repo.skype.com/data/SKYPE-GPG-KEY | sudo apt-key add -

答え2

署名キーの有効期限が切れ、数日後に Microsoft が新しいキーを生成しました。システム内のキーの置換は自動で行われないため、古いキーを削除して新しいキーを追加する必要があります。

この問題を解決するには 2 つの方法があります。1 つは従来のapt-key addコマンドを使用する方法、もう 1 つは新しいキーをキーリングに手動で追加する方法です。

# Ubuntu 21.04 まで有効なソリューション (それを含む)

有効でなくなったキーを削除することができます:

sudo apt-key del 1F3045A5DF7587C3

新しい有効なキーを再度追加します。

curl https://repo.skype.com/data/SKYPE-GPG-KEY | sudo apt-key add -

実行するとsudo apt update && sudo apt upgradeエラーは表示されません。

# Ubuntu 21.04以降のリリースで有効なソリューション

Ubuntu を使用して APT リポジトリ キーを追加しようとするとapt-key、次のメッセージが表示される場合があります。

警告: apt-key は非推奨です。代わりに、trusted.gpg.d でキーリングファイルを管理してください (apt-key(8) を参照)。

apt-key のマニュアルページには次のように記載されています:

apt-key の使用は非推奨です。ただし、メイン キーリングから既存のキーを削除するためにメンテナー スクリプトで apt-key del を使用する場合は除きます。

したがって、Ubuntu 21.04 までのバージョンを使用している場合は、apt-key delとを使用しても問題ありませんapt-key addが、それ以降のバージョンでは、キーリングにキーを手動で追加する必要があります (Ubuntu 21.04 では、両方のソリューションが完全に機能します。私は両方をテストしました)。

有効でなくなったキーを削除することができます:

sudo apt-key del 1F3045A5DF7587C3

キーをダウンロードしてキーリングに追加します。

curl https://repo.skype.com/data/SKYPE-GPG-KEY | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/skype-stable-archive-keyring.gpg

ファイルを開きますskype-stable.list...

sudo nano /etc/apt/sources.list.d/skype-stable.list

...そして最初の行を次のように変更します。

deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/skype-stable-archive-keyring.gpg] https://repo.skype.com/deb stable main

実行するとsudo apt update && sudo apt upgradeエラーは表示されません。

関連情報