2022年5月31日火曜日

Samba4 にアクセスできない!? (なんか解決)

 昨晩の停電で、朝起きたらサーバーが死んでいたので電源スイッチを投入したら、そのまま無事起動! WEBのアプリも問題なく起動している! 「おー、先日の修復は思ったよりうまく行っている」と安心したのも束の間、Windows10のエクスプローラーからサーバーが見えない! =>samba4の設定がおかしいのか、ネットワークの設定がおかしいのか、ちょっと原因の断定が出来ないのと、エクスプローラーがダンマリで死んでしまうので、先に進めない!

取り敢えず、参考にするものをググって探すとココにたどり着きました。 上の方から、順を追って一つづつたどってみて、まづ testparamで設定ファイルのチェック;

   socket options = SO_RCVBUF=8192 SO_SNDBUF=8192  

が設定してあって、ワーニングが出るので、コメントアウト。

    min protocol = SMB2
    max protocol = SMB2

結構、Windows 10ではsmb 1.0をデフォルトでサポートしていない、という書き込みが多かったので、上の2行を追加。

その上で、/usr/local/etc/rc.d/samba_server restart して、”[Windowsメニュー]を右クリックして、表示されたメニューから「ファイル名を指定して実行」を選択します。” をIPアドレスで実行してみると左の様に、見事アクセス出来ている! 結局何が悪かったのかよく分からないが、無事これも復帰。



 

2022年5月29日日曜日

Canvas.js は凄い!

JpGraphが使えなくなったので、Canvas.jsを使ってアプリのグラフ表示を作り直しましたが、このCanvas.jsとってもうまく出来ていて、機能も豊富で、また、HPにサンプルが豊富にあり、色々と試行錯誤が出来るようになっており、快適です。

色指定にrgb()だけでなく、rgba()でαチャネルの指定が出来るので、透明、半透明の指定が出来るのはとっても助かります。lineグラフの線の太さも自由に変更できるし、、、、。

という事で、ちょっと改良! (なんか、はまっちゃいそう、、、)

 


 

2022年5月28日土曜日

サーバーの復帰(続き)

立ち上がりそうなことは確認できたので、システムディスクを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




2022年5月14日土曜日

サーバーの復帰

昨晩の突然の停電で、サーバーが停止、立ち上がらなくなってしまいました。 2年近く弄っていないので、ディレクトリ構成とかZFSがどうなっているのかすっか忘れてしまっていて、このブログの過去記事をたどって復活させました。 

まず、起動ディスクは?  

  •  過去ログ見るとluaか何かの原因でZFSから起動しないために、HDDから起動させたのちにzpool importでファイルをマウントしているようなので、まづ、起動ディスクを探す。  
    • 立ち上がる時に<DEL>キーで、biosから見えるDiskを探い、取り敢えず片っ端から起動させてみる。  
    • ー>一つだけFreeBSDが起動するディスクが見つかる。 
  • FreeBSDを起動させて、dfしてみると、当然/以外はなにもないので、zpool importで認識されるzfsを表示させてみる。  
    •  ー>zrootという名前のzfsファイルシステムが見つかった これをimportする  
    •  ー>zpool import zroot こうすると、元々のhdd上の/以下にzrootのファイルシステムがマウントされる。 

被るファイルの内容が出てくると思われるが、取り敢えず動いて復帰できたので良しとする。

ブート領域を含めて修復して、再起動の手間を省くようにしないと、、、、。 

久し振りの*nixはコマンド名とか思い出すのに時間が掛かり、なかなか大変。 時々は*nixしてリハビリしていないと、あきませんな~。

 

php のインストールの確認

phpって最初のfacebook書くときに使われたみたいで、それなりに歴史のある言語で、私も2006年位から使っていますが、CLIで使う事はあまり無いので、apacheとの連携のトラブル(mod_phpのバージョンの齟齬)などは気になりますが、拡張モジュールのインストールの問題に...