2025年05月24日

【Linux】Raspberry Pi 4BのOSをいいかげんアップグレードした話

こんにちは。

5年前に購入したRaspberry Pi 4B。
当時インストールしたRaspberry Pi OSのバージョンはBusterでした。
2025/05/24現在、バージョンは2世代進みBookwormが最新です。
  • 自宅で私だけが使うので古いバージョンのままでもいいか
  • メジャーアップデートはなんかトラブルが付き物らしいし
そんな思いからOSアップグレードに二の足を踏んでいたのですが、WEBサーバを立てて外部公開するようにしたこともあり、少しでもセキュアであるに越したことはないのでアップグレードに踏み切りました。


 ■バックアップ

M.2 SSDブートで運用していたので、まずは念のためバックアップを作成します。
バックアップ先となるSSDを新調し、DDコマンドで現行SSD(@)の完全クローン(A)を作成。
そのうえで@のRaspberry Pi OSをアップグレードしていきます。
万が一@がぶっ壊れても、Aに差し替えて復旧できます。
IMG_0388.PNG

余談ですが、Raspberry Pi 5はNVMeのSSD使えるんですよね。
4BではSATA接続(さらにUSB3.0でブリッジ)となっているのでちょっと羨ましい。
とはいえ、もはや4Bですら私の用途にはオーバスペック。速度に不満もありません。
本来は学習用途として始まったRaspberry Piプロジェクトも今ではデスクトップ用途・産業用途として広く普及してしまいました。
お値段もどんどん高くなり、個人の趣味範囲の軽量サーバ向けとしてはなかなか手を出しにくくなっています。
4Bが私には手の施しようがない物理故障に至ったら、その時点の最新Raspberry Piを購入・・・いややっぱ4Bでいいや。


■アップグレード

ネット情報の多くは、まずはBookwormをクリーンインストールしてバックアップした諸々設定ファイルをひとつひとつ適用していくべきと書かれていました。
しかしお勉強がてらいろんなスクリプトを書いていろんなサービスに仕込んできたので、ぶっちゃけ全部覚えていません。
クリーンインストール環境に1つ1つ戻そうにも、たぶん漏れが発生していまします。
そこで今回は現行環境を維持しつつ、aptコマンドでアップグレードしていきます。

やることは簡単で、パッケージリストのソースリポジトリの指定を新OSバージョン用に書き換えて、以下を実行するだけ。
  1. apt update
  2. apt upgrade
  3. apt full-upgrade
  4. apt autoremove
  5. reboot
とはいうものの、いきなり2世代先まで飛び級でバージョンアップを行うとパッケージやライブラリの依存関係が崩壊する可能性があるということで、1世代ずつ段階的にアップグレードしていきました。

IMG_0385.PNG



■引っ掛かったこと

特に問題らしい問題は発生せず、2段階の作業を経てBookwormにアップグレードできました。
ただし、公開鍵認証方式のSSH接続が出来なくなってしまいました(これはけっこう問題らしい問題か・・・)。

ChatGPT先生に相談。
まずはログを確認しろいうので見てみると、/etc/ssh/sshd_confのPubkeyAcceptedAlgorithmsなる項目に「ssh-rsa」が登録されいないという警告メッセージが。
どうやらBookwormから採用されたOpenSSH 8.8では従来から使用してきた暗号化アルゴリズム(ssh-rsa)がデフォルトでは拒否されるもよう。
より強力なアルゴリズムの鍵じゃないとダメなんだそうです。
PubkeyAcceptedAlgorithmsに設定することでssh-rsaアルゴリズムの鍵も引き続き使えるものの非推奨とのこと。
「ed25519」アルゴリズムで鍵ペアを作り替えるべしと教えてもらったので、再作成しときました。

アップグレードが無事に完了したあとは、リブート前に/etc/ssh/sshd_confを良く確認したほうがいいですね。
一時的にパスワード認証も有効にしてSSH接続を担保しておき、公開鍵認証の接続不可に備えるのが吉です。


■まとめ

もっといろいろ問題が多発して頭を悩ませる覚悟でいましたが、意外にもすんなりとアップグレード出来てしまいました。
拍子抜け。
Raspberry Pi 4Bで運用していたNode-REDやNginx、Sambaなども問題なく動いています。
バックアップ用にSSDを新調しましたが必要なかったな・・・。

2025/06/03追記:
ネットを見るとBookwormではX→Wayland変更に起因する問題が発生しているようですね。
私はSSH接続のヘッドレス運用なので気が付きませんでした。
ラズパイをデスクトップ運用って私はあんまり想定に無いんですよね。





.


posted by Huwy at 10:28 | Comment(0) | TrackBack(0) | Linux | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]
2013/11/12現在、スパムコメント対策のため「コピー」という単語をブロックしています。

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック