ここまでのまとめ

PCを1台用意し、Linuxをインストールする。ホスト名、IPはユニーク。各種設定を行い、LAN内で「それはそれとして」動くようにする。/etc/ssh/sshd_configを編集、PermitRootLogin yesとしてrootでのログインを許可。/etc/hosts.allowを作成、sshd:All:allowとしてもしておく。 サーバ側を仮にA、バックアップ側をBとする。AB共に環境(ユーザーとかグループとかディレクトリとか)を合わせておくと幸せになれる。で、お互い名前解決できること。DNSを使うも良し、/etc/hostsでも良し。我が家はDNSを使っている。で、# ssh-keygen -t dsaを実行、/root/.sshにid_dsaとid_dsa.pubを作成する。で、Aのid_dsa.pubを例えばid_dsa.A.pub、Bのid_dsa.pubをid_dsa.B.pubとmvして、AのをBに、BのをAにコピーする。筆者はNFSでマウントして持っていったがそれが面倒ならFDを使っても良いし、USBメモリでも良いし、まぁとにかくお互いのid_dsa.pubをお互いにコピーしあう。で、AにおいてBから持ってきたファイルを#cp id_dsa.B.pub authorized_keys2としてコピり、それをchmod 644としておく。Bにおいても同様。 これでお互い、例えばAにおいては#ssh Bとして最初はyesだの何だの答えなければならないが、二回目以降はパスワード無しでログイン可能になる。で、例えばAにおいて#rsync -avz -e ssh –delete /home/ B:/home/とすると、あら不思議。Aの/home以下がそっくりBの/homeに来る。二回目以降は同じファイルはコピーしない。しかもAで消したファイルはBでも消える。完全同期だ。これをcronにやらせるも良し、マニュアルでやるも良しだ。 必要に応じて各ディレクトリ、各ファイルを任意にやるように設定。Aが死んだらBを起動してルータのNATの設定をAからBに変えるだけでとりあえず簡単に立ち直ることができる。構想5年で今までかかった(笑)。