データのバックアップ


サーバの再構築をする前にあらかじめバックアップを 少なくとも二箇所に取らなければならない.

当然の事だがWWWサーバの再構築をする場合は このドキュメント群を印刷するか他のサーバに移動すること.

1.バックアップするデータのリスト

・ /home/

普段からバックアップを取っているが、 万が一のことを考えて別の場所にもうひとつバックアップを取る.

・ /etc/

設定ファイル群の格納場所. 特に重要なのは shadow 、opiekey、ssh_host_key、cron である. これらだけで十分な気もするが一応全て取っておいた方がよい.

・ /var/

logファイルの他に個人で設定した cron や canna の辞書も /var/ 以下に格納されている.

・ /usr/

kernel等があるが、特に重要ではないかもしれない. しかし、念のために取っておく.

2. 作業

rsyncを使う. 当然だが、バックアップ作業を行う前にapache等を止めてこれ以上更新されないようにする. また、他の人がログインしていないか確認すること.

$ w Enter
バックアップ先に関してはローカルの別のHDDの場合と他のホストのHDDの場合を例示するので状況に応じて使い分けること. 複数のHDDに分けてバックアップを取る事が重要である.

2.1 普段行っているバックアップ(cron)

以下の作業を複数回行う. 具体的に何をどこにバックアップしているか確認すること.
$ less /etc/cron.daily/rsync Enter
# /etc/cron.daily/rsync Enter
# sync Enter

2.2 ローカルのHDDへのバックアップを行う場合

例を示す. 複数回行うこと.
# rsync -av /etc/ /bk/ETC/ Enter

2.3 他のホストのHDDへのバックアップを行う場合

orange の /home/ 以下を white の外付けHDD (/mnt/orange-bk/ にマウント済み) に 一般ユーザ (mondo10) 権限でバックアップを取る場合の例は以下の通り. しつこく言うが、複数回行うこと.
# rsync -e ssh -aqz /home/ mondo10@white:/mnt/orange-bk/ Enter

送り先のディレクトリは書き込みをするユーザー(この場合はmondo10)が書き込めるようにパーミッションを変更しておくこと.
また、バックアップデータの所有権が全て書き込みをしたユーザー(mondo10)になってしまう点に注意.
これを元に戻す(/home/hoge/ 以下のファイル・ディレクトリを chown を用いて 全てhogeにする)perlスクリプトはあるが、 このスクリプトを使うとSビットが消滅してしまう.
ちなみに、この作業は一回目は非常に時間がかかる(11Gを転送するのに5時間かかった).

また、cronを使ってバックアップを行う場合や相手先のユーザーがグループユーザーだった場合はno pass loginができるようにしておく必要がある.
(no pass loginに関しては gateのマニュアルを参照すること.)

2.4 確認

データがきちんと送られたか確認する. 別のHDDに送った場合はサイズが違うこともある.
$ df Enter

最終更新日: 2001/11/24(道政広一) Copyright © 2000 epcore