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がないと起動しないから大丈夫でしょう.

使ってもいないDebian上のmysqldを動くようにした

とあるDebianのサーバーで,mysqldというか実態はMariaDBのデーモンですが,それがなかなか動いてくれなかったのを動くようにしました.

問題は,/runからもはや/var/runへsymlinkが張られていなくて,それぞれ実体のあるディレクトリーとなっているのに,mariadb.service内では,/var/run/mysqldを使い,/etc/mysql/mariadb.cnfでは/run/mysqldを参照しているためのようです.

他のDebianのマシンでは,/var/runは/runからのsymlinkなので,何かの手違いで,/var/runと/runを独立させてしまったようです.

システムが活きたまま,/var/runを/runからのsymlinkに修正するのはちょっと危険ですね😓

と,いいつつ,やってしまいました.

cd /var/run
cp -Rdvp * /run
cd ..
mv run run-save
ln -s /run

今のところ問題ないみたいです.

Debianのhttpdの設定ってなんであんなに複雑化したんだろう

タイトルのまんまですが,/etc/apache2/sites-available/ 内に設定を書いて,

a2ensite そのファイル名

で, /etc/apache2/sites-enabed/ 内にsymlinkを張って,

systemctl restart apache2

でhttpdを再起動して新しい設定を有効化する,なんて手順が必要なのは,どういう発想からそうなったのか,全く理解できません.

もう一つ挙げると,デフォルトで,公開しているディレクトリーのサブディレクトリー内を閲覧できてしまうのもどうかと思います.

その他の利便性が,これらの不便さを今のところ補ってあまりあるので,Debianで行くという方針は変更しません.

一時的にWebサーバー止まります

当Webサーバーを入れているケースのクーリングファンが止まってしまいました.他のケースと入れ替えるので,7月30日のいずれかの時間帯に30分程度停止します.

追記: 作業は既に完了

見込みの30分を少々超過しましたが,作業は既に完了しています.

2022年7月30日(土) 18:55 記

よくあるベアリングの不良と思われます.

fcitx(4) vs fcitx5

ManjaroでもDebianでも,fcitx4はfcitx,fcitx5はfcitx5と呼んでいるので,ここでもそうします.

fcitx-mozcもちゃんと動くのですが,唯一使いにくい点があります.それは,半角英数モードと,日本語入力モードの切り替えが,トグル式しかないのです.

トグルとは,情報系では「同じ操作で2つ(以上)の状態が入れ替わる」とされていますが,電気系的には棒の出たスイッチで上でオン,下でオフのような明確な切り替えになりますから,全く別物ですね.ここでは情報系の,同じ操作で状態が遷移する方で行きます

日本語入力をするときに,文章や全体の構成などを考えながらタイピングしますから,ちょっと入力が止まったあとなど,今の入力モードをしっかり把握しているわけではありません.

従って保険のために,日本語入力キーを押すことが多く,それが癖になっていますが,それがトグル式だと保険の操作で逆に半角英数モードになってしまい,円滑な入力操作をかえって阻害します.

fcitx5では,日本語入力のオンとオフをそれぞれ別のキーにアサインできますので,保険的な操作で意図しない入力モードの遷移が起きません.

それでfcitxが動いているDebian(Core i7のサブworkstation=サブWSのサブOS)をfcitx5にしたかったのですが,いつも失敗していました.

Mozcがまともに起動せず,設定もできない状態でした.たふん,ライブラリーや設定ファイルの残骸が残っていてコンフリクトしているのだろうと想像していました.

しかし,DebianはサブWSのサブOSの位置づけですから,これで日本語入力が必要になる場面はほとんどなく,これまで放置していました.

今回,サーバーのOSをDebian arm64にするので,サーバー上での作業記録を日本語の文書に残す必要があり,したがって,fcitx5が必須となったので,Raspberry Pi 4 Model Bへのインストールや,Debian amd64のサブWSサブOSでいろいろいじって,ようやく,誤ってインストールしたfcitx-mozcを削除した上でfctix5-mozcをインストールしてちゃんと機能するようになりました.

できてしまえばたいしたことないのですが,

apt remove fcitx-mozc
apt remove fcitx
apt remove fcitx5
apt autoremove

を行った後に,ユーザーのホームディレクトリーで,

find -iname "*fcitx*"

として,fcitxの設定ファイルを探し出してをそれを念のため消してから,1度WSを再起動してから,

apt install fcitx5-mozc

をして,もう一度WSを再起動したら,fcitx5でMozcが使える様になりました.

たぶん,要らない再起動や,Log off / on で済むところもあると思いますが,systemdのDebianは起動が速いんで気になりません.

Toggleの語源についての説明を見つけました. “Tugging Alterations” The Ethymology Nerd
トグルも残っています.
~/.config内にあると思います.