立ち上がりそうなことは確認できたので、システムディスクをM.2 のSSDに替え、最新のFreeBSDを(uname -r: 13.0-RELEASE)M.2 SSDにインストールして、今まで使っていた zfs が立ち上がり、今までのファイルが読めることを確認したので、Xをインストールして、Windowマシンからremoteで幾つでも窓開けて作業できるようにして、まづ第一段階の復帰は終了。
ここまでは、あまり問題なくすんなり進んで一安心。 特にZFSが完全に読めるので、snapshotなり、以前作っておいてzfsに保存していたusr/local等のバックアップが利用できたので大変に助かった。
で、postgresql, apache24,samba4等いつも使っていたものについても、それぞれ復帰を試みる。
apache24: portから最新のものをインストール(時に大きく変わることは無いはずなので問題は無いはず)。 しかし、http.confで引っ掛かる! バックアップから/usr/local/www/等関係のありそうなものをコピーしてきて、立ち上げ直すと無事にデータロガーも含めて動作した。
samba4: portから最新のものをインストール。これもsmb4.confが必要なので、/usr/local/etc/のバックアップからsmb4.confをコピーしてきて立ち上げ直すと無事動作。 Windowsマシンから、サーバー上のディレクトリが読めるようになって、よかったよかった。
postgresql: これもversion 12を使っていたので、取り敢えずversion 12をインストールしてDBのバックアップをとり、それから最新の、、と思ったけれど一つ手前のversion 14をインストールし直し、先に取ったバックアップファイルからDBを復元。
ここまでで、すべてOK! とはゆかず、、、。
自宅環境の温湿度などを表示させていたWEBサーバーのアプリが、JpGraphを使ってグラフを表示させていたが、php 7.2までしかサポートしていなかった。
phpも8.0.19にバージョンアップしてしまったので、グラフ表示に別のプログラムを使用することにしました。 Canvas.JSが良さそうなので、一週間ほどいじくりまわして何とか、らしきものが表示できるように出来ました。 そのうち、もう少し機能を理解して改善してゆきたい。 Javascriptを使ったサーバーサイドプログラム?なので、まだ十分には理解できていないかも、、、。
停電は川崎市の水道局が工事中に、東電の設備を壊してしまったことによるらしいのですが、お陰で久しぶりにUnix環境のプログラム作成をすることになりました。 Emacsも久しぶりで、使えるようになるのに少々時間が掛かりましたが、今はWindows上でやたらctrl-Cして困ってます。
教訓
- オープンソースのプログラムは定期的にアップデートしていないと、古いシステムのままで動かし続けるのは 複数の自作アプリが組み合わさったりしているので、難しい(個々のプログラムのサポート体制が異なる)
- ZFSは安定していて、最近open zfsに変更になった様に理解していたが、問題なく使用できて大変助かった(十分信頼に足るシステムのように思う) 。 zfstoolsを利用して、15分毎にsnapshotを取っているので、急な停電でもZFSが壊れていなければ、停電15分前には戻れる。
- /etc/ 、/usr/local/etc/ 下の自分の設定ファイル、DBのデータ ファイル www下のファイルなどは必ずバックアップを取っておく事。 これで、昨日の状態が復元できる!
- 年齢も年齢なので、老いの予防に時々システムのアップグレードなどで頭の体操をした方が、良いのでしょうね。 運動などして筋肉強化には務めていますが、頭の体操は、あんまりしていないので、、、。
- ZFSを起動システムにしていないので、システムの入れ替えとは独立してファイルを移行できるのですが、設定ファイルのバックアップが自動では取れないことになるので/usr/local/etcはzfs上にマウントし、/etcは別途定期的にzfs上にbackup fileを作るようにしておくことにします。
後から継接ぎでzfs のmountpointを追加したので綺麗くないですが、今のdf