スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ファイルサーババックアップ

ファイルサーバのバックアップを古いMac miniにとっていましたが、容量が足りなくなってきました。
日次にファイルサーバと同期をとり、週次にフルバックアップをとっているのですが、
週次が溜まりすぎてしまいました。
で、週次バックアップは直近一ヶ月のみ保存するような運用にしました。
一ヶ月過ぎていたら、削除します。
本当は全部bashで書こうと思っていたのですが、古いMacOSX(panther?)だとdateコマンドが過去に戻れないようなので、過去削除はrubyで書きました。

■日次バックアップ

#!/bin/bash
rsync -avz --delete -e ssh user@192.168.0.1:/var/samba /Users/user/Backup/daily
rsync -avz --delete -e ssh user@192.168.0.1:/var/svn /Users/user/Backup/daily

■週次バックアップ

#!/bin/bash
YMD=`date +"%Y%m%d"`
rsync -avz --delete -e ssh user@192.168.0.1:/var/samba /Users/user/Backup/weekly/$YMD
rsync -avz --delete -e ssh user@192.168.0.1:/var/svn /Users/user/Backup/weekly/$YMD
/usr/bin/ruby /Users/aoyagi/Backup/rm.rb

■過去削除スクリプト

#coding:UTF-8
require 'date'

day = Date.today
day = day << 1
target = day.strftime("%Y%m%d")
dir = "/Users/user/Backup/weekly"

Dir.foreach(dir) {|f|
if "." != f && ".." != f && "20000101" <= f && f <= target
system("rm -rf "+dir+"/"+f)
end
}

■cronの設定

0 1 * * * /Users/user/Backup/backup_daily.sh
0 2 * * 0 /Users/user/Backup/backup_weekly.sh
スポンサーサイト

COMMENTS

COMMENT FORM

TRACKBACK


この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。