自宅サーバのメンテ

最近自宅サーバ(Raspberry Pi 3B)が調子悪い。しばらく前にWordPressのとあるプラグインを入れたんだけど、外部からの接続チェックをしてくれてたらしく、いつの頃からか「サーバダウンしてるよ」「復帰したよ」なメール通知が来るようになった。

大抵は数分すると復帰メールが来てたんだけど、だんだん復活するまで時間がかかるようになってきた気がして、先日ついにいつまでたっても復活しなくなってた。

仕方ないので久しぶりに電源を抜き差ししに行ってみたら、本体がやけに熱い。

暑い季節でもあったので、熱暴走かなあと思い、本体温度のグラフ化ができるツールを探して入れてみたのが上の画像。Monitorixと言うツール。見た目に分かりやすいグラフと言うことでメモリ使用状況のグラフのコピペだけど、10/8, 9未明にグラフが飛んでるのがフリーズしてた時間帯(この時は電源抜き差ししたんだっけか??)。

肝心の温度のグラフは、たまにグラフが飛ぶ直前に温度が跳ね上がってることがあったけど、基本的には大きな変化は無し。他のグラフでは、IPv6のコネクションがやけに溜まってることがあったけど、それも必ずと言うわけではない。

そんな訳で原因が掴めてないんだけど、とりあえずSDカードを新しいヤツに入れ替えることにしてみた。

ラズパイ自身にSDカード丸ごとコピーするツールがあるようだが(GUI, CUIそれぞれあるっぽい)、ラズパイ自体が調子悪いのでWindows上でコピーしようとしたんだが、定番のWin32 Disk Imagerがなんか起動できない。ググってみたら、Googleドライブの常駐アプリを止めると動くという事例を発見。まさにビンゴだった(笑

んで、ついでに色々アップデートを掛けようと思ったら、Debianがメジャーバージョンアップ(11系bullseye→12系bookworm)されててRaspberry Pi OSもbookwormがリリースされてたので、これもアップグレードすることにした。ラズパイのメジャーアップグレードは非推奨らしいけど。

まずは現バージョン(bullseye)の更新を全適用、と思ったのだけど、改めて色々確認してたら、 /etc/apt/sources.list.d/raspi.list が古いままだったので、これまで更新が不十分だったようだ。

deb http://archive.raspberrypi.org/debian/ bullseye main
#deb http://archive.raspberrypi.org/debian/ buster main ui
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ buster main ui

この状態でアップデートを掛けたら、以前ハマったネットワークのドライバ(firmware-realtek)が更新されて、普通に使えるようになっていた。

てなところでようやくbullseyeとしての更新が終わったので、ここを参考にしつつ(と言うかほぼマネして)、ついでにここを参考に日本のミラーサイトからダウンロードするようにして、こんな感じのsource.listでアップグレードにトライ!

# Debian 12
deb http://ftp.jaist.ac.jp/raspbian/ bookworm main contrib non-free firmware rpi
#deb http://raspbian.raspberrypi.org/raspbian/ bookworm main contrib non-free rpi
# Debian 11
#deb http://raspbian.raspberrypi.org/raspbian/ bullseye main contrib non-free rpi
# Debian 10
#deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi

/etc/apt/sources.list.d/raspi.list も忘れずに…

deb http://archive.raspberrypi.org/debian/ bookworm main
#deb http://archive.raspberrypi.org/debian/ bullseye main
#deb http://archive.raspberrypi.org/debian/ buster main ui
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ buster main ui

んで、以下のコマンドを実行

$ sudo apt update
$ sudo apt full-upgrade
(設定ファイルをどうするか聞かれるので適宜答える)
$ sudo apt autoremove
$ sudo apt autoclean
$ sudo reboot

例によってPHPが7系から8系に変わってたりして、あれやこれやしてとりあえず復旧。

んで、色々設定を見直してたら、何かの表示にネットワークインターフェイスが昔ながらのeth0, eth1形式になっちゃって、リモートから繋がらなくなってディスプレイとキーボード繋いで復旧させたり…。

ふと気になってカーネルのバージョンを確認してみたら、5.10でやんの。

$ uname -a
Linux **** 5.10.103-v7+ #1529 SMP Tue Mar 8 12:21:37 GMT 2022 armv7l GNU/Linux

あれー?6.1になったんじゃなかったっけ?

source.listが変だったせいでまた変なバージョンのが最新扱いされちゃってるのかなあ。カーネルのアーカイブ(?)のリスト上は更新日は確かに一番新しいんだけどバージョン名に”buster”とか入ってるし…。

よく分からんので今日のところはこれは放置して終わりにしようかと思ったけど、”1.20230509~buster-1″でググったらそれっぽい情報(とさらにその情報源)を発見。単純に6.1系を含んだ*.debを手動でダウンロードしてインストールすればいいようだ。

$ wget https://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-bootloader_1.20230405-1_armhf.deb
$ wget https://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel_1.20230405-1_armhf.deb
$ wget https://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel-headers_1.20230405-1_armhf.deb
$ dpkg -i ./raspberrypi-bootloader_1.20230405-1_armhf.deb
$ dpkg -i ./raspberrypi-kernel_1.20230405-1_armhf.deb
$ dpkg -i ./raspberrypi-kernel-headers_1.20230405-1_armhf.deb

その後、再起動して確認してみたところ、ちゃんとカーネルも6.1になってた。今後のアップデートの際に5系になっちゃわないように要注意だな。

$ uname -a
Linux **** 6.1.21-v7+ #1642 SMP Mon Apr  3 17:20:52 BST 2023 armv7l GNU/Linux

あとはついでにMonitorixで色々見れるようにして(MySQL(MariaDB)が中々うまくいかなかったけど、2015年の投稿で解決した。Debian用に無駄にファイルが分かれてるのやめて欲しい…。)、今回のサーバメンテはおしまい!

たぽ
  • たぽ
  • カレン(ST206 3S-GE VVT-i)、BRZ(ZC6 RAエアコン有)でサーキットを走ってます。
    クルマ弄りは基本的にDIY。そのため(?)にガレージ付きの家建てました。

    数年前から登山にも目覚め、時々アウトドアな日記・動画もアップしてます。

1件のピンバック

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください