Manjaroの弱点

筆者の愛用しているManjaroはrolling release modelというバージョンアップの方法を採用しています(ベースのArch Linuxがそうであるため).

まあ,GentooSlackware-currentも同様ではあります.この手のdistroの弱点は,しばらくupdateをしないで放置しておくと通常のupdateの手段ではupdateができなくなってしまうことです.

実マシンから作ったディスク仮想イメージとして存在させている仮想マシンは,もとの実マシンのバックアップ的な意味合いなので存在感が薄く,気がつくと最後の更新が何か月も前だったりします.

筆者のLinux第一WSであるManjaro AMD64も,ときどきバックアップのためにディスクを仮想化して仮想マシンに仕立ててます.仮想マシンとしても実は一番気に入っているので,Mac mini2台と実マシンであるManjaroのWS自身の中で仮想マシンとして “飼って” います.

気に入っているとは言えバックアップなので新し味がなく,ときどきupdateが何か月ぶりになってしまうことがあります.そんなときは他のupdate可能なイメージをコピーしたり,新たに実マシンから仮想化しました.パックアップの更新としての意義があります.

たまたま,前日updateができなくなった状態をあるSNSに投稿したら,親切な方が,

pacman-key --refresh-keys
pacman -Sc

を試してみてはと教えてくださいました

一台目はそれで復活しました.しかし,別の仮想マシンが同様の症状になっていましたが,上記の方法では復活できませんでした.1勝1敗です.

NGなほうはさらに別のマシンで動いているupdate可能なManjaroのディスクイメージをコピーして差し替え,動くようになりましたが,バックアップの意味を込めて後で久しぶりに実マシンから仮想化しようと思います.

筆者はシステムのメンテはrootでログインした状態で行うことをポリシーにしています(Slackware流)ので,コマンドごとにsudoを使う事はしません.

バックアップの削除でサーバーが無応答に

現在サーバーのバックアップは,バックアップの際にマウントする2TBのHDDに,前回からの差分をバックアップする形にしています.

rsyncでバックアップしています.今日の日付からなるディレクトリーをバックアップのボリュームに作り,ひとつ前の日付のディレクトリーを--link-destオプションで指定してサーバー内の全部(ただし,バックアップのボリュームのマウントボインや/tmp, /dev等は除く)をコピーすることで,変更がないファイルはハードリンク,変更があったファイルは新しいファイルをコピーするようなことを勝手にやってくれます.

rsyncは優秀で他のサービスに影響ありません.だいたい15分くらいで終わります.ただし,毎日毎日バックアップを続けると,だんだんハードリンクが長くなるせいか,バックアップに要する時間が長くなってきます.30分,1時間,ついには1時間越えと.

そこでときどき古いバックアップを削除します.手作業です.削除は普通にrmコマンドに-rオプションを付ければよいです.ただこれがなかなか重い作業で,rm自体はメモリーをほとんど食わず,SWAP領域が増えることもないのですが,kswapd0デーモンがかなりCPUサイクルを食います.何が起こっているかよく解らないのですが,ルートドライブもこのバックアップドライブもUSB接続だというのが良くないのではないかと今は推測しています.

昨日もずっとhttpdやその他のデーモンが動かなくなっていたのを知っていましたが,rmコマンドを途中でやめるわけにも行かず,一晩そのままにしておきました.

rmコマンドが終了しても,デーモン類はスタックしたまま自動的には復活しないので今朝システムごとリブートしました.

今後はバックアップの削除は他のWSにつないで行うことにします.

ThunderbirdがDovecotに繋がらなくなった件 (解決済み)

自前のサーバーで動くLet’s Encryptの証明書をupdateしてからどうもクライアントであるThunderbirdの挙動がおかしくなりました.

TLSのimap (=imaps)でつないでいます.ログインはできて新着メールは読めるのだけれど読んだメールをサブディレクトリーに移そうとしてもうまく操作ができません.

Appleの iOSやmacOSの “Mail” では正常に動作します.

サーバーのログを見ると,

というのがあり,たぶんこれだと思います.ネット検索した所,どうもDovecotのSSL/TLS設定が良くなかったようです.これまで,/etc/dovecot/conf.d/10-ssl.confのssl_certの設定は,

ssl_cert = </etc/letsencrypt/live/FQDN/cert.pem

としていました.これでこれまでAppleの “Mail” (iOS, macOS)もThunderbirdもつながっていましたが,

ssl_cert = </etc/letsencrypt/live/FQDN/fullchain.pem

としないといけないようです😅

これで,サーバーのDovecotのログにエラーは出ず,Thunderbirdも正常にサブフォルダーをアクセスできるようになったようではあります.

しかし,違うマシンのThunderbirdでアクセスすると見えないサブフォルダーが存在するなど今いち動作の信頼に欠けます.

Distroによっては番号が違う場合があります.

サーバー不安定 (3) ひとまず安定か

昨日から何度かリブートはかけましたが,24時間以上システムが無応答になったり,おかしな挙動をすることもなく安定して動いているようで,ひとまず安心です.

故障した可能性が大きいRaspberry Pi 4 Model B (RPi4) RAM 8GBの代わりをどうするか.先々を考えると少し奮発してRPi5 8GBを買うのが良さそうですが,まだRPi5で動くSlackware Aarch64の正式リリースはなく “Current” で使い続けるのは無理なので迷うところです.

Slackware ARM (32bit)のRPi5 hackは何故か存在しないのです.

このままRPi4 4GBでしばらく行ってみます.

サーバー不安定 (2) 本体かも

どうも,サーバーの不安定の原因は,USBまわりというところだけは正解のようですが,USB接続のSSDでもUSB HUBでもなさそうです.

本体を予備のRaspberry Pi 4 Model B (RPi4)にしました.違いは本来のサーバーはRAM 8GBのところ,予備機は4GBというところです.

予備機: Raspberry Pi 4 Model B RAM 4GB

SSDのまるまるコピーなどといった負荷をかけながら動かしていて,起動から5時間経過しましたが,今のところ正常のようです.

また8GBの方もSDカードを入れてVLCで監視カメラのモニターをさせています.USBは使わない状態です.こちらも同じく5時間安定して動いています.

ということで,RPi4のハードのUSBまわりの故障のように思います.

ちなみに,GUIなしのサーバー用途でRAMは4GBもあれば十分かと思いましたが,そうでもなくて,rsyncによるディスクのまるまるコピーのようなバッファを多く使うタスクを実行していると,kswapd0が大汗をかく場面が多く,その場合zramといえどもhttpdのレスポンスはかなり悪くなります.

RPi4 8GBとなるとRPi5に価格が近くなるので迷います.