Mojoってなんだ (2)

DX SpiderのMojo版へのupgradeの続きです.

Slackware ARM 15.0のほうもupgradeできました.どうも,クローニング(ダウンロード)しているgitのデータが壊れてしまっていたようで,新規にcloneし直したところmojoがあるのでDebian同様checkoutしました.

いくつかの設定ファイルと,data以下のディレクトリーとファイルを全部コピーしてcluster.plを起動し,足りないモジュールを,

perl -MCPAN -eshell

からインストールして,動くようになりました.

結局Mojoは理解していないままです.

Mojolicious.pmだけはsbopkgでインストールしました.

Mojoってなんだ

一昨日でしたか,スペインのアマチュア無線家(ハム)からEMailが来ました.「動かしているDX Spiderにセキュリティーの問題があるからMOJO版にupgradeしてください」という内容でした.

そう,公開しているポートはありませんが,DX Spiderを2ノード,かなり昔から動かしています.たぶん,DX Spiderに関しては日本で動かしはじめた最初の数人に入っていると思います.

ついでにいえば,その前に動かしていたDX Netに関しても同様に最初の数人だと思います.もっともDX Netは日本で動かした人が数人であったように思いますが😓

さて本題に戻りますが,MOJOといわれても何のことやらさっぱり解りません.ネットで調べてもなんか解りません.しばらくうろうろしていると,Mojolicious.pmのことらしいとなんとなく解りました

いつものように事前調査は早々に打ち切って実行あるのみです.

2つのDX Spiderノードのうち外界とつながっていなくて,もう一つのノードとだけつながっているプライベートなほうを先に試してみることしました.大事な方を先に試して,途方に暮れることがよくある筆者としては賢明な判断だったと思います😓

しかし,スペインのハムが示してくれたupgrade用のスクリプトを動かしても,「Slackware 15.0 ARMは対象外だよ」といわれてしまいました.ARM版どころか,そもそもSlackware自体対象になっていません.

しょうがないので,x86_64なDebianで動かしていて,海外複数ノードとつながっている大事な方のDX Spiderのupgradeを試みました.結局こうなるんですよね😓

スクリプトはなんか無反応なまま終わってしまいました.

しょうがないので,gitのbranchを覗いてみることにしました.なんと,gitがないので,しょうがないからgitのインストールからはじめました.

Debianなので楽勝で,インストール後に,

git branch -a

を実行すると,remotes/origin/mojo なるブランチがあります.これかと思って,

git  checkout  mojo

としてcluster.plを実行したら,Mojolicious.pmがないといいます.これまでこのモジュールを要求されたことがないので,ブランチの切り替えは成功のようです.そこでDebianのパッケージサーチで当該のモジュールを探したらすぐ見つかりました.

インストールしてcluster.plを起動してもその後も「ない」というパッケージが表示されたのでその都度インストールといういつもの手順を3回ほどくりかえして,無事起動するようになりました.

起動したときのメッセージに “Mojo/何たら”との表示が出るので大丈夫でしょう

Slackware 15.0 ARM版に関しては,

git branch -a

でmojoの表示が出ないので,引き続き苦闘中です.

“Mojolicious”とは,どういう経緯か「もじゃもじゃ」と出てきましたが再現できません(当社調べ).
というか,そもそもMojolicious.pmがないと起動しないから大丈夫でしょう.

システムトラブルのため今朝のバックアップまでロールバックしました

タイトルの通りなんですが,今朝(2023年2月2日(木))findコマンドを2つ同時にかけたら,システムが無応答になってしまい,電源リセットしたらfile systemにエラーがあるというので,fsckをかけたらエラーがボロボロ出て,修復はできましたが,不安なのでformatして今朝のバックアップに戻しました.

ファイルシステムが壊れた原因については分かりませんが,多分SSDをか弱いUSBドライバーで動かしているので過重負荷のためドライバーがダメになったのだと思います.知らんけど.

修復作業のため,同日の午後はしばらくシステムが止まっていました.

また,久しぶりの作業なのでいろいろ手順を忘れて,なかなか再起動せず焦りました.

以下は今後の自分のためのメモです.

  1. バックアップからのコピーはたぶん以下のようなコマンドを使う
cd /復旧させるシステムのルート
rsync -artlvd --sparse --inplace --numeric-ids /バックアップのパス/ .

これでたいがい時間がかかります

  1. 終わったら,復旧されるシステムのルートに/devはないはずですから,用意してある/devをコピーする(/root/devsにあるはず)
  2. formatし直すとPARTUUID等が変わるので,/bootのcmdline.txtと/etc/fstabを新しいPARUUID等で更新する
  3. あとはターゲットシステムにディスクを接続して,祈りながら起動をかける
  4. バックアップにはロックファイルなどもあるので,起動したらすぐに再起動をかける

kernel_sarpi4-6.1.7-armv7l-1_slack15.0_23Jan23_sp1.txz may be broken, too

kernel_sarpi4-6.1.7-armv7l-1_slack15.0_23Jan23_sp1.txzと関連ファイルがSARPiのサイトにありましたのでupdateしてみました.6.1.3ではシステムが不安定になってしまったので,6.0.14に戻して動かしていました.

6.1.7でとりあえず起動はしました.6.1.3のときのようにKernel panicやネットの不具合が起きなければ良いのですが.

これも壊れているかも(2023/1/26追記)

朝起きたら,システムが無応答になっていました.コンソール(CUI)からユーザー名は入りますが,パスワード+改行で無応答になり,Control+Alt+Delも効かず電源リセットしました.ブートはするので,さっさと安定性が確認されている6.0.14に戻しました.