NFS の変更点


#author("2023-04-19T10:35:05+09:00","michiro","michiro")
WebORCAでは変更が必要な所があります(2023/4/19)

nfs-commonのインストール
 # apt-get install nfs-common 
NFSで主従のサーバをつなぐ。~
例えば、
 主サーバ 192.168.0.10
 従サーバ 192.168.0.20
従サーバにnfs-kernel-serverをインストール。
 # apt-get install nfs-kernel-server
# nano /etc/exports
 /home/ormaster 192.168.0.0/255.255.255.0(rw,no_root_squash)
/etc/exportsに上記の一行を追記して、
 # /etc/init.d/nfs-kernel-server restart
#br
主サーバに従サーバの/home/ormasterをnfsでmountする。~
主サーバに/mnt/orca directoryを作成して、従サーバの/home/ormaster以下を主サーバの/mnt/orcaにmountする。
 # mkdir /mnt/orca
主サーバの/etc/fatabに以下の1行を追記する。
 192.168.0.20:/home/ormaster /mnt/orca nfs defaults 0 0
主サーバをrebootとすると主従サーバのNFSによる接続完了。~
**まさかの時のためのバックアップにNFSを利用 [#jfd6d0ac]
処方箋と診療費明細書が残っていればデータの復旧は可能。
処方箋と診療明細書を/mnt/orca/data/orcaprintにpsファイルとして作成するようにすれば、主サーバがクラッシュしてもそれまでの診療データは残り、再手入力で復旧可能。~
(psファイル作成directoryは何処でも良いが、directoryのpermissionを777にしておくこと。)
#br
処方箋印刷プリンタ名がcanon1診療明細書プリンタ名がcanon2として割り当てられていて、印刷可能な状態と仮定する。
# nano /usr/lib/cups/backend/ps10
 #!/bin/sh
 PSDIR=/mnt/orca/data/orcaprint
 FILENAME=shoho.ps
 if [ $# -eq 0 ]; then
 echo "direct ps10:/ \"Unknown\" \"PS10 Writing\""
 exit 0
 fi 
 /usr/bin/pdftops $6 - >> $PSDIR/$FILENAME
 chmod 666 $PSDIR/$FILENAME
 lp -d canon1 $6
 exit 0
# nano /usr/lib/cups/backend/ps11
 #!/bin/sh
 PSDIR=/mnt/orca/data/orcaprint
 FILENAME=meisai.ps
 if [ $# -eq 0 ]; then
 echo "direct ps11:/ \"Unknown\" \"PS11 Writing\""
 exit 0
 fi 
 /usr/bin/pdftops $6 - >> $PSDIR/$FILENAME
 chmod 666 $PSDIR/$FILENAME
 lp -d canon2 $6
 exit 0
ps10 ps11を新規に作成後、
 # chmod 755 /usr/lib/cups/backend/ps10
 # chmod 755 /usr/lib/cups/backend/ps11
としてから、
 # /etc/init.d/cupsys restart

 http://localhost:631
でプリンタ ps10を追加する。
 プリンタ名 ps10
 デバイス PS10Writing
 メーカ  Raw
 モデル Raw Queue
ps11も同様に
 プリンタ名 ps11
 デバイス PS11Writing
 メーカ  Raw
 モデル Raw Queue
ORCA 出力先プリンタ割り当て情報の設定画面で、canon1をps10、 canon2をps11に変更する。
#br
主サーバのデータを従サーバにバックアップする。~
主サーバに~
/usr/local/bin/bkorcaを作成。スクリプトは、
 $ sudo /etc/init.d/jma-receipt stop
 $ sudo -u orca pg_dump -Fc orca > /mnt/orca/data/orca.dump
 $ sudo /etc/init.d/jma-receipt start
作成後は # chmod 755 /usr/local/bin/bkorcaを実行。~
#br
従サーバにデータをリストア。~
従サーバに~
/usr/local/bin/rstorcaを作成。スクリプトは、
 $ sudo /etc/init.d/jma-receipt stop
 $ sudo -u orca dropdb orca
 $ sudo jma-setup --noinstall
 $ sudo -u orca pg_restore -x -O -d orca /mnt/orca/data/orca.dump
 $ sudo jma-setup
 $ sudo /etc/init.d/jma-receipt start
作成後は # chmod 755 /usr/local/bin/rstorcaを実行。
#br
午前の診療が終了したら主サーバでbkorcaを実行。食事に出かけます。~
食事が終わったら従サーバでrstorcaを実行。リストア成功を確認したら/mnt/orca/data/orcaprintのファイルを削除。
#br
shoho.ps meisai.pspdfに変換するには、
 $ ps2pdf shoho.ps
 $ ps2pdf meisai.ps
とすれば、windowsでもacrobatReaderでプレビューできる。~
#br
午後診療終了時も主サーバでbkorcaを実行。~
翌朝、従サーバでrstorcaを実行。~
午前の診療で主サーバがクラッシュした場合、~
従サーバにて診療を続行する。昼休みに従サーバの/home/ormaster/data/orcaprintのshoho.ps meisai.psを使って手入力でクラッシュ前のデータを復旧する。