
状況を説明しましょう。Linuxサーバーまたはデスクトップを定期的に更新またはアップグレードする時期が来ました。ターミナルウィンドウを開いてapt-get updateを実行すると、次のような警告が表示されます。
キーは従来のtrusted.gpgキーリング(/etc/apt/trusted.gpg)に保存されます。詳細についてはapt-key(8)のDEPRECATIONセクションを参照してください。
上記の警告が表示されてもアップグレードの実行は妨げられませんが、apt-keyコマンドは非推奨となっており、将来的に動作しなくなる可能性があります。apt-keyが非推奨となった理由の一つは、システムに設定されている他のすべてのリポジトリにおいて、signed -byオプションが指定されていないサードパーティのキーホルダーからの署名をシステムが受け入れてしまう可能性があるためです。
そうなると、/etc/apt/trusted.gpg または /etc/apt/trusted.gpg.d に署名鍵が追加された非公式の apt リポジトリが、システム上のあらゆるパッケージを置き換える可能性があります。サードパーティのリポジトリに悪意のあるコードが含まれていた場合、将来的に重大なセキュリティ問題が発生する可能性があります。
これを修正するには 2 つの方法があります。
参照: 知っておくべきオープンソースと Linux の用語 40 選 (TechRepublic Premium)
apt-keyエラーをスマートに解決する方法
最初の方法は手動で、キーのリストを隅々まで確認する必要があるため、少し時間がかかります。手順は以下のとおりです。
ターミナル ウィンドウを開き、次のコマンドを発行します。
sudo apt-key list
これにより、システムに追加したソースの数に応じて、次のような複数のエントリが生成されます。
pub rsa4096 2022-01-31 [SC] [expires: 2024-01-31]
DF44 CF0E 1930 9195 C106 9AFE 6299 3C72 4218 647E
uid [ unknown] Vivaldi Package Composer KEY08 <[email protected]>
sub rsa4096 2022-01-31 [E] [expires: 2024-01-31
必要なのは、2 行目の最後の 8 文字 (上記の例では 4218647E) をコピーし、次のコマンドを実行して問題を修正することです。
sudo apt-key export 4218647E | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/vivaldi.gpg
キーに合わせて8桁の数字を変更するだけでなく、キーの末尾の名前も変更することが重要です。ご覧のとおり、修正しようとしているキーはVivaldiのものです。
apt-key の警告が表示されるキーごとに、この作業を行う必要があります。同じ警告が表示されますが、これはapt-keyコマンドを使用し、それをgpg –dearmorコマンドにパイプしているためです。各エントリを修正すると、 apt-key updateを実行しても警告が表示されなくなります。
apt-keyエラーを素早く解決する方法
エラーのあるキーの数によっては、上記の方法は時間がかかる場合があります。より速い方法もありますが、この方法は公式には推奨されておらず、問題を引き起こす可能性があります。この方法を試す前に、本番環境以外のマシンでテストするか、少なくとも仮想マシンのバックアップまたはスナップショット(Linuxの導入方法によっては)を作成することを強くお勧めします。
問題を迅速に解決するには、次の手順を実行します。
- ターミナルウィンドウを開きます。
- cd /etc/aptで apt ディレクトリに移動します。
- sudo cp trusted.gpg trusted.gpg.dを使用して、trusted.gpg ファイルを trusted.gpg.d にコピーします。
一つ気づいたのは、上記の方法がすべてのマシンで機能するわけではないということです。例えば、Jammy Jellyfish (Ubuntu 22.04) を使っている場合、/etc/apt にtrusted.gpg は見つかりませんが、trusted.gpg.d は見つかります。その場合は、手動で設定する必要があります。
いずれにせよ、これは重要な修正です。なぜなら、apt-key はいずれ動作しなくなるからです。そうなると、Ubuntu サーバーやデスクトップがアップデートやアップグレードできなくなる可能性があります。これは絶対に避けたい事態です。アップグレードは、稼働中の Linux インスタンスを安全に保つために不可欠です。この警告を修正して、将来的に問題が発生しないようにしてください。
TechRepublic Academy の The Mastering Linux Development Bundle で Ubuntu について詳しく学びましょう。
Jack Wallen によるビジネス プロフェッショナル向けの最新のテクノロジー アドバイスをすべて知るには、YouTube で TechRepublic の How To Make Tech Work を購読してください。