2009/06/15(月)

rsync --link-dest

 雨がふったり雷が鳴ったり。

 ノーパソのキーボードカバーを替え、保護シールを貼りなおす。

 仕事がいくつか並行中。本当は既にどれもが終わっている時期のはずだが……。

 ああ、それから、たまり気味の会計事務もしなくちゃ。

 食事は、キッシュやさんま、タンドリーチキン。

 少しバックアップタスクの整理。rsync で --link-dest オプションというのがあるのを知る。これを使うと、差分チェック時、変更がないファイルはハードリンクされるので、容量が節約できて便利。 以下、このオプションを用いての世代管理バックアップ cron スクリプト例(過去7日分&月初のスナップショットを残す)。うまく動かなくても知らない。

#!/bin/sh
target="/backup"
prev=`date -d "1 days ago" "+%y%m%d"`
if [ ! -d "$target/20$prev" ]; then
    mv $target/recent $target/20$prev
fi
rsync -a --delete --link-dest=../20$prev /hoge $target/recent
rsync -a --delete --link-dest=../20$prev /fuga $target/recent
ym=`date -d "7 days ago" "+%y%m"`
d=`date -d "7 days ago" "+%d"`
if [ $d != "01" ]; then
    rm -rf $target/20$ym$d
fi
 

# MICHAEL 『読めません・・・。』

# morimon 『そのうちわかる日が来るかも。』

# たかやま 『%Y%にすれば、/$prevと書けます』

# morimon 『この場合確かにその方がいいですね。』