ちょいと前に 0.7.0 を入れていて、安定して動いていたのであまりいじらないようにしていたのですが、0.9.0 になって低スペックマシンでの動作が安定したとのことだttので、さっそくバージョンアップ。
もちろん、例によって例のごとく、FreeBSD と Jail は動作対象外の環境ですので、動かなくても泣きません。
ひとまず、Jail まるごとバックアップ取って、いつでも元に戻せるようにしておきます。
あとは普通に、git pull して、前回一部書き換えているので git stash して、もう一度 git pull
pipenv から poetiry に環境が変わっているので、そのへんも含めていったん .env/ を削除してから
poetiry update して、KonomiTV.py を一行変更して、pm2 restart 0 します。
設定ファイルとデータベースでエラーが出るので、 config.example.yaml を config.yaml にコピーして現環境に合うように修正します。
data/ は消しちゃっても(いまんところ)大丈夫。これでDBのエラーは消える。
あとは、log 眺めているとfastcgi でエラーが出てくるので、 app/utils/__init__.py をちょろっと修正してあげれば、エラーも消えます。
とりあえず、log 眺めて出てくるエラーつぶすだけの簡単なお仕事。
ということで、問題なく動いて、dボタンとかも動くことが確認できました。
ということで、まだしばらくはこの環境でどうにかなりそう。
作者の方、ありがとうございます。
おかげで入院中もいろいろ捗りました。
おうちネットを維持していて、ときどき困るのが、外部との接続回線に何らかの問題が発生して、外部からの
接続ができなくなることです。
お仕事であれば、必要なら別系統で回線を2つ以上引くということで、金銭で解決可能かもしれませんが、
できればなるべくお金をかけたくありません。
ところで、先日新たに契約した povo 2.0 では非課金状態でも 128k でインターネットとつながることは
可能です。128k って今時の5Gの回線とかと比べたらとても遅く感じますが、INS64 とか出たときには
それまでモデムがせいぜい 28.8k でしたので、夢のように速いとか思ったものです。
そう、キャラクタベースで動かすなら全然問題のない速さなのです。ブラウザとか使おうと思ったら
遅いかもしれませんが。
そこで、サーバに USB でモバイルルータを接続して、sshd の受け口にすることをやってみます。
いろいろあって、今まで録画サーバは FreeBSD 12.3-RELEASE を使っていたのだが、そろそろEOLになっちゃうので、13.1 にアップグレードすることに。
で、なにも考えずに更新かけてもよかったのだが、録画サーバなので録画できなくなったら困る。ということで、まずは 12.3 の上の bhyve に 13.1 をインストールして
少なくとも pt3 のドライバが make できるか試してみることにした。
結果から書くと、一行だけソースを変更すれば make は通り、実際に動くことも確認できました。
以下、その記録。
書いておかないと忘れちゃうからね。
***** 注 意 *****
作者の方も指摘している通り、まだいろいろ作業中で、重大な変更があるかもしれません。
また、FreeBSD をサーバに使うのは推奨環境ではありません。
くれぐれも作者の方に文句を言わないこと。
足元が濡れていて滑ります。ころんでも泣かない人だけどうぞ。
ということで、入院中もテレビを見るのに大活躍してくれたKonomiTVですが、
最新版の master はいろいろと機能が追加されていて、面白そうだったので最新にアップデートしてみることにしました。
そのうえで、いろいろ試してみて気が付いた点などを書いていきます。
例によって例のごとく、サーバは FreeBSD で qjail で環境を作ります。
FreeBSD は推奨環境ではありませんが、どうにかこうにか動かすことはできます。
また、最新の KonomiTV は https 化必須なので、事前に自ドメインのワイルドカード証明書を取ってあるものとします。
はまりポイントは3つです。
1. lo0 に 127.0.0.77 を割り当てる
2. Letsencrypt で dns 認証で証明書を取っておく。独自ドメインを持っていることが前提。
3. python3 で pip がみつからない問題の解決。
以下に順を追って説明します。example.org は自ドメインに置き換えてください。
みんな大好きzfs(断言
ということで、うちの二大サーバのベースのファイルシステムは zfs を採用しています。
ファイルサーバに至ってはFreeBSD 8.0 のころから継ぎ足し継ぎ足しで、ローリングアップデートして
HDDの交換をして使い続けているわけですが、今までFSが原因でファイルをロストしたことがないので
ものすごく信頼して使っています。(バックアップは重要)
ということで、お仕事関係の税務処理とか、請求書発行システムとか、いろいろ重要なのも動いている
のですが、そのマシンに、以前、zil とl2arc として mvme の ディスクを追加して、さらなる高速化を
求めていました。その nvme のディスクが死にました。
zil が死ぬと、fs をマウントできません。そのため、zfs root のマシンでは、再起動かけてしまったら
コンソールで作業しないと、立ち上がってこないままになります。ちなみにうちのサーバは二台とも
モニターにつながっていませんので、いきなり詰みます。
でも大丈夫、FreeBSD にはシリアルコンソールという素敵な機能があって、シリアルポート経由で
あれこれできたりします。
ということで復旧方法。
何はともあれ、まず壊れた mvme を除去します。
次に、電源を入れてzfs がマウントできる CD とか、USBメモリから立ち上げます。
あとは zpool import -m -f してあげて、import できたら、zpool status して、
いなくなっている zil を remove してあげればおけおけ。
同様に、見えなくなってしまった l2arc も remove してあげましょう。
これであとは再起動すれば、通常の zfs root で立ち上がってきます。
めでたしめでたし。
というわけにはいかないのでした。
落穂ひろい。
その1,その2まで書いて、実はいろんなところで問題にぶち当たっていて、それに対してどうしたかっていうまとめ。
なんだろう、踏まなくてよい地雷を踏んでいる気がする。
ということで、つづき。
留守電機能を追加するために、voicemail を設定していきます。
厳密にいうと voicemail は留守電とは違うんだけど、運用でカバー。
以前より、自宅の電話はひかり電話を使っています。
これ、IP電話なので、普通にスマホと接続したり転送したりすることができます。
そのまま使っても別段問題ないのですが、せっかくなので asterisk とつないで遊んでみます。
テレビの録画に関しては、EPGStation がほぼ完ぺきな動きで、ここ何年か特に問題もなく暮らしてきたのですが、リアルタイムでの視聴は、いまだに TvTest を使っていました。
時々テストで VLC とか使ったり、最近の Mirakurun の IPTV 対応に喜んで、IPTVクライアントをいろいろ試してたりもしてたのですが、なんだかんだで最終的に TvTestに戻ってきてしまって「まあ動くからいいか」という感じだったのですが、
やっぱりだらだらソファーでごろ寝しながらタブレットでみたいよね。ということで、TVRemotePlus は気になっていたのですが、いかんせんWindows でしか動きませんでした。
ところが最近同じ作者の方が、Konomi という Python で動く同じようなソフトを公開し始めたので、さっそく試してみました。
https://github.com/tsukumijima/Konomi
お約束:
例によって例のごとく、FreeBSD 上の qjail 環境に jail を1つ立てて、その中で動かします。
Mirakurun は別の jail で動いています。
とりあえず、QSVエンコードは使える CPU ですが、今回は使いません。
当然のことながら、作者の推奨環境ではありませんので、動かなくても泣きません。
FreeBSDネイティブの docker はまだか。
まだです。
ということで、これに手をつけだすと沼にはまりそうな気がするので保留して、軽量 Linux ディストリであるところのAlpineLinuxをインストールして、その上で Docker を動かすことにする。
まあ、これと言ってはまる要素はないはずだったのだが、はまったので記録として残しておくことに。