■tar による運用とafio運用の比較
(ファイル破損があった場合)
(環境)
FreeBSD7.3
デフォルトの状態だとafioはインストールされていません
ので、portsあたりでインストールします。
# cd /usr/ports/sysutils/afio
# make ; make install
# which afio
/usr/local/bin/afio
■バックアップ対象の選定とバックアップ
今回のバックアップ対象→/usr/local/apache2/htdocs/simezou.net
# find /usr/local/apache2/htdocs/simezou.net | afio -oZ /home/kurihara/simezou.net.afz
簡単なオプションとしては、下記のとおりです。
-o バックアップ作成(findによる検索結果のパイプが必須)
-Z gzipで圧縮
-v 詳細出力
-r バックアップが正常化かチェック
-i 解凍
一応比較の為に、tarでのバックアップも実施。
# tar cvfz /home/kurihara/simezou.net.tgz /usr/local/apache2/htdocs/simezou.net
・beavがインストールされていないので、インストール。
# cd /usr/ports/editors/beav
# make ; make install
# cp /usr/local/bin/beav /usr/bin/beav
beavというバイナリエディタを使って、先頭から200バイト目を00に書き換えてみます。
bervは非常に軽快に動くので編集が楽でした。
ちなみにbeavにおけるファイル保存コマンドはC-x C-s、終了はC-x C-c。
# Emacsと同じですね。
# beav simezou.net.afz
# beav simezou.net.tar.gz
-rw-r--r-- 1 root next_ms 5.0K Aug 19 14:49 kurihara.afz
-rw-r--r-- 1 root next_ms 2.1K Aug 19 14:50 kurihara.tar.gz
ファイルを比べてみると、afioのが若干重い。
解凍テストを実施。
# tar zxvf simezou.net.tar.gz
x home/next_ms/
tar: Damaged tar archive: Invalid argument
tar: Retrying...
tar: Damaged tar archive: Invalid argument
tar: Retrying...
tar: Damaged tar archive: Invalid argument
tar: Retrying...
tar: Damaged tar archive: Invalid argument
tar: Retrying...
tar: Damaged tar archive: Invalid argument
tar: Retrying...
tar: Damaged tar archive: Invalid argument
tar: Retrying...
# afio -ivZ simezou.net.afz
kurihara -- okay
gzip: invalid compressed data--crc error
afio: "inentry xwait()": Exit 1
kurihara/.cshrc -- uncompressed
afio: "kurihara.afz" [offset 655]: Bad magic number
afio: "kurihara/.cshrc": May be corrupt
afio: "kurihara.afz" [offset 751]: Apparently resynchronized
afio: "kurihara/.mail_aliases.z": Continuing
kurihara/.mail_aliases -- uncompressed
kurihara/.login -- uncompressed
kurihara/.rhosts -- uncompressed
kurihara/.login_conf -- uncompressed
kurihara/.mailrc -- uncompressed
kurihara/.profile -- uncompressed
kurihara/.shrc -- uncompressed