たむら$SUSEユーザ…です。
On Mon, 5 Dec 2005 19:22:38 +0900
高見 健太郎 <takami@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
> HDDの中身を別のHDDに定期的にバックアップしたくて、簡単なシェルスクリプト
> を作成しました。
圧縮じゃなくてミラーリングならば syncdir というスクリプトが便利です。
http://www.gentei.org/~yuuji/software/
ex) $ syncdir -Pd -b 20m /work /backup/backup_daily/work_daily
以下のスクリプト、少し手をいれてみますといかがでしょうか ??
( あてずっぽうです )
> ***********************************************************************
>
> #!/bin/sh
>
> mount -t ext3 /dev/hdb1 /backup
> #(説明:バックアップ先の別のHDDをマウント)
sleep 5
# 少し待つ
> rm -rf /backup/backup_daily/*
> #(説明:以前に作成された古いバックアップ内容のフォルダーを削除)
sync;sync;sync;
sleep 3
# i/o をシンクロさせて、その後少し待つ
> mkdir /backup/backup_daily/home_daily
> mkdir /backup/backup_daily/work_daily
sync
> cd /home
> tar -cf - . | (cd /backup/backup_daily/home_daily; tar xvf -)
> #(説明:/homeの内容を全て圧縮して、/home_dailyで解凍)
sleep 5
sync;sync;sync;
sleep 5
# i/o をシンクロさせて、その後少し待つ
> cd /work
> tar -cf - . | (cd /backup/backup_daily/work_daily; tar xvf -)
> #(説明:/workの内容を全て圧縮して、/work_dailyで解凍)
sleep 5
sync;sync;sync;
sleep 5
# i/o をシンクロさせて、その後少し待つ
> umount /backup
sync;sync;sync;
sleep 5
------------------
私は、syncdir と 以下のようなのを使い分けてます。
#!/bin/sh
cd /home/mente/
/bin/date '+/bin/tar zcvf /work/backup/mente/mail/mail%y%m%d.tar.gz ./Mail/ >> /work/backup/mente/mail/bkup%y%m%d.log' | /bin/sh