aptでエラー

珍しくエラーになった

2023年1月になって急に更新できんくなった。

取得:2 https://packages.cloud.google.com/apt cloud-sdk InRelease [6,361 B]                         
エラー:2 https://packages.cloud.google.com/apt cloud-sdk InRelease                                 
  公開鍵を利用できないため、以下の署名は検証できませんでした: NO_PUBKEY B53DC80D13EDEF05

こういうエラーメッセージも表示された。

W: 署名照合中にエラーが発生しました。リポジトリは更新されず、過去のインデックスファイルが使われます。GPG エラー: https://packages.cloud.google.com/apt cloud-sdk InRelease: 公開鍵を利用できないため、以下の署名は検証できませんでした: NO_PUBKEY B53DC80D13EDEF05
W: https://packages.cloud.google.com/apt/dists/cloud-sdk/InRelease の取得に失敗しました  公開鍵を利用できないため、以下の署名は検証できませんでした: NO_PUBKEY B53DC80D13EDEF05
W: いくつかのインデックスファイルのダウンロードに失敗しました。これらは無視されるか、古いものが代わりに使われます。

インデックスファイルとか古いの使うのやめてほしいなぁ。
googleのcloudSDKでなんかうまく行ってへん。

NO_PUBKEYに続くキーは人によって違うのかも。

キーがあかんらしい

キーが足りんのやったら足せばええんちゃうんか。

# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B53DC80D13EDEF05

それでもまだaptで同じエラー表示される。
キーのリスト見てみる。

# apt-key list

やってみたら1行目にapt-keyは非推奨って書いてあった。
そのうち使えんようになるっちゅうことやね。

Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
/etc/apt/trusted.gpg
--------------------
pub   rsa2048 2022-05-21 [SC]
      A362 B822 F6DE DC65 2817  EA46 B53D C80D 13ED EF05
uid           [  不明  ] Rapture Automatic Signing Key (cloud-rapture-signing-key-2022-03-07-08_01_01.pub)
sub   rsa2048 2022-05-21 [E]

/etc/apt/trusted.gpg.d/alessandro-strada-ubuntu-ppa.gpg
-------------------------------------------------------
pub   rsa1024 2013-09-07 [SC]
      9EA4 D6FC A5D3 7A5D 1CA9  C09A AD5F 235D F639 B041
uid           [  不明  ] Launchpad PPA for Alessandro Strada

/etc/apt/trusted.gpg.d/ubuntu-keyring-2012-cdimage.gpg
------------------------------------------------------
pub   rsa4096 2012-05-11 [SC]
      8439 38DF 228D 22F7 B374  2BC0 D94A A3F0 EFE2 1092
uid           [  不明  ] Ubuntu CD Image Automatic Signing Key (2012) <cdimage@ubuntu.com>

/etc/apt/trusted.gpg.d/ubuntu-keyring-2018-archive.gpg
------------------------------------------------------
pub   rsa4096 2018-09-17 [SC]
      F6EC B376 2474 EDA9 D21B  7022 8719 20D1 991B C93C
uid           [  不明  ] Ubuntu Archive Automatic Signing Key (2018) <ftpmaster@ubuntu.com>

面倒やなぁ。

いつか根本対処するとして、今は更新できるようにしたい。
ググったら「不明」っていうところには有効期限が入ってるらしいんやけど、自分のは入ってへん。

aptできるようにする

なんか入れ方とか扱い方間違ってるんかもしれんけど、更新できるようになってほしい。

googleのgcloud cliをインストールする手順をおさらい。

gcloud CLI をインストールする  |  Google Cloud

去年ubuntu22にするときにやったような気がする。
鍵を取り直す方法もある。

既知の問題  |  Compute Engine ドキュメント  |  Google Cloud

有効期限が切れてるかもしれんから取り直してみっかな。

# curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
100  1210  100  1210    0     0   7064      0 --:--:-- --:--:-- --:--:--  7117
OK
# ls -l /usr/share/keyrings/cloud.google*
合計 64
-rw-r--r-- 1 root root 3879  1月 24 05:54 cloud.google.gpg
-rw-r--r-- 1 root root 2625  6月  1  2022 cloud.google.gpg~
#

これでええんかわからんけど、aptはできるようになった。

以下のパッケージはアップグレードされます:
  google-cloud-sdk
アップグレード: 1 個、新規インストール: 0 個、削除: 0 個、保留: 6 個。
132 MB のアーカイブを取得する必要があります。
この操作後に追加で 4,191 kB のディスク容量が消費されます。
続行しますか? [Y/n] 
取得:1 https://packages.cloud.google.com/apt cloud-sdk/main amd64 google-cloud-sdk all 414.0.0-0 [132 MB]
132 MB を 5秒 で取得しました (25.0 MB/s)   
(データベースを読み込んでいます ... 現在 225466 個のファイルとディレクトリがインストールされています。)
.../google-cloud-sdk_414.0.0-0_all.deb を展開する準備をしています ...
google-cloud-sdk (414.0.0-0) で (413.0.0-0 に) 上書き展開しています ...
google-cloud-sdk (414.0.0-0) を設定しています ...
man-db (2.10.2-1) のトリガを処理しています ...

知らん間にgoogle cloud sdkはバージョン414まで上がってるやん。
ブラウザのバージョンは100番台やけど、google cloud sdkはもっと大きなってる。

システムを最新のモジュールで保つ

おまじないみたいなもので、aptでパッケージをできるだけ最新に保ってる。
小さなスクリプトを書いておいて、それをいっつも使ってる。

# cat ./810_aptUpdate.sh 
apt autoremove
apt clean
apt update
apt upgrade
#

ローカルの仮想マシンの中も、google cloudの中でも、dockerで作ったrdpコンテナでも同じことやってる。

ついでにdockerで作ったredhat8/9のコンテナはこうなってる。

 # cat ./810_dnfUpdate.sh 
 dnf clean all
 dnf update
 # 

元はcentosでyumしてたのを、バージョン8でdnfに書き換え、
centos8が使えなくなったからubuntu20に変えた。
去年はubuntu22でホストを全部作り直した。

ubuntu24になったら、OpenPGP公開鍵のインポート使うようにせなあかんやろなぁ。

コメント

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