Kenji Arisawa
E-mail: arisawa@aichi-u.ac.jp
Aichi University
Kurozasa 370, Miyoshi-cho
Aichi, Japan

Dumpfs

2001/06/10 改訂

dumpfs とはファイルのバックアップシステムであり Plan9 の開発過程で生み出された。このシステムは毎日バックアップを決められた時間(毎朝5時)に自動的にとる。そして、過去の任意の日の任意のファイルの内容を殆ど一瞬の内にとりだす事が可能である。差分だけがバックアップシステムに取り込まれる。従って毎日のバックアップの量は大きくならない。(この技術の詳細)

dumpfs の意義はバックアップファイルと稼働中のファイルシステムの垣根を完全にとっぱらったことであろう。あたかも一個のディスクの中に存在するように。このシステムでは過去と現在が同居している。

dumpfs によって、バックアップの恩恵をユーザが日常的に受けることとなった。ファイルの回復を SE に頼む必要が無くなったのである。

利用法

過去のファイルシステムを見たい場合には、ディレクトリ /n/dump/ を見るだけで良い。ディレクトリ
/n/dump/1995/0315/
は 1995年3月15日のファイルシステムだ。ここにこの日の全てのファイルが見える。 コマンド yesterday を利用すればもっと簡便に知ることができる。今ファイル foo の過去の内容(例えば 1998/05/12 の内容)を見たいとする。
term% yesterday foo
すると昨日のファイルのパスを表示してくれる。例えば今日が 1998/06/04 ならば、
 /n/dump/1998/0603/usr/arisawa/foo
と表示してくれるだろう。 これを参考に
term% cat /n/dump/1998/0512/usr/arisawa/foo
を実行すれば内容を知ることができる。
Plan9 では出力は簡単に編集できて選択範囲をコマンドと簡単に実行できることに注意する。そのため Plan9 には実行の方法を示唆するだけのコマンドが多数存在する。yesterday はそのようなコマンドの1つである。

diff などのツールを使っての比較はもちろん可能である。しかし過去のファイルは消す事も変更もできない。

dumpfs は単に個々のファイルの履歴をとっているシステムではない。過去の全ての状態がそのまま保存されるのである。従って

bind -b /n/dump/1998/0512 /
を実行すれば、これ以降は1998年5月12日の名前空間の中でプログラムが実行される事になる。コンパイラもライブラリもマニュアルも全てが。
もちろん、bind を実行したウィンドウの中だけでです。

システム設定

Dumpfs はファイルサーバの main 型にのみ適用できる。 main 型を WORM または Pseudo-WORM に設定する。