English | Japanese

pdumpfs: Plan9もどきのバックアップシステム

最終更新日: 2004-03-31 (公開日: 2001-02-18)


pdumpfs とは?

pdumpfs は Plan9dumpfs もどきの単純なバックアップシステムです。Ruby で実装されています。 毎日のスナップショットを保存するため、いつでも過去のファイル を取り戻すことができます。ホームディレクトリのバックアップに 利用すると便利です。

pdumpfs はバックアップ先ディレクトリに「年/月/日」の形式でス ナップショットを保存します。初回のみバックアップ対象ディレク トリ全体をコピーして、2日目以降は差分でバックアップしていき ます。ディスクの消費量を節約するために、更新されなかったファ イルは前日のスナップショットのファイルへのハードリンクとして 記録されます。

最新版はhttp://namazu.org/~satoru/pdumpfs/ から入手可能です。

新着情報

使い方

設定

ファイル pdumpfs の 1行目の #! /usr/local/bin/ruby を必要に応じて修正します。

コマンドライン

   % pdumpfs <対象ディレクトリ> <バックアップ先>

使用例

自分のホームディレクトリ /home/yourname を /backup にバック アップするには次のように実行します。

   % pdumpfs /home/yourname /backup >/backup/log 2>/backup/error-log

2日目以降のバックアップは cron で行うといいでしょう。毎朝 5 時にバックアップを行うには crontab に次のような設定を記述し ます。

    00 05 * * * pdumpfs /home/yourname /backup >/backup/log 2>/backup/error-log

毎日のバックアップが順調に進むと、 /backup/2001/02/19/yourname/... のようなファイル名で過去のファ イルにアクセスできます。

特定ファイルの除外

特定のファイルをバックアップから除外するには以下のオプションを用います。

--exclude=PATTERN
PATTERN (Ruby の正規表現) にマッチするファイルまたはディレクトリをバックアップ対象から除外する。複数個を指定可能。
--exclude-by-size=SIZE
SIZE 以上のサイズのファイルをバックアップ対象から除外する。 1000, 100K, 10M, 1G のような単位の指定が可能。
--exclude-by-glob=GLOB
FILE にマッチするファイルをバックアップ対象から除外する。ファイル名の比較には、ファイルのベースネームに対して fnmatch(3) (シェルのワイルドカード) を利用します。 複数個を指定可能。

# spool か log にマッチするファイル/ディレクトリをバックアップしない
% pdumpfs --exclude 'spool|log' /var /mnt/backup

# 10MB 以上のファイルをバックアップしない
% pdumpfs --exclude-by-size 10M ~/ /mnt/backup

# wave file (*.wav) をバックアップしない
% pdumpfs --exclude-by-glob "*.wav" ~/ /mnt/backup

制限事項

豆知識

ダウンロード

GNU General Public License version 2 (日本語訳)に従ったフリーソフトウェアとして公開します。 完全に無保証です。

関連ページ


Satoru Takabayashi