使用 --listed-incremental 进行 tar 增量备份对我不起作用(Linux、Ubuntu)

Rol*_*ger 5 ubuntu backup tar

根据http://www.gnu.org/software/automake/manual/tar/Incremental-Dumps.html,我尝试在我的 Ubuntu 上使用 tar 和 --listed-incremental 创建增量备份,但 --listed-增量部分对我不起作用。

在第 0 天,我执行:

SNAR_TODAY=`date +%Y_w%U_${DOW}`
TARGET='/srv/backups/'
SOURCE='/srv/data'
FILENAME=`date +%Y%m%d_%H%M`

tar -cvf $TARGET/$FILENAME.tar --atime-preserve --listed-incremental=$TARGET/$SNAR_TODAY.snar $SOURCE &> $TARGET/$FILENAME.log
Run Code Online (Sandbox Code Playgroud)

工作正常并创建我的 /srv/data 和 2011_wXY_0.snar 的完整备份。

在第 1-6 天,我执行:

DOW=`date +%u`
TODAY=$DOW
YESTERDAY=`expr $TODAY - 1`
SNAR_TODAY=`date +%Y_w%U_${TODAY}`
SNAR_YESTERDAY=`date +%Y_w%U_${YESTERDAY}`

TARGET='/srv/backups/'
SOURCE='/srv/data'
FILENAME=`date +%Y%m%d_%H%M`

cp -p $TARGET/$SNAR_YESTERDAY.snar $TARGET/$SNAR_TODAY.snar
tar -cvf $TARGET/$FILENAME.tar --atime-preserve --listed-incremental=$TARGET/$SNAR_TODAY.snar $SOURCE &> $TARGET/$FILENAME.log
Run Code Online (Sandbox Code Playgroud)

问题: tar 为完整目录创建一个新的 .tar - 不执行任何增量操作。

系统:Linux srv03 2.6.32-28-server #55-Ubuntu SMP

$ tar --version
tar (GNU tar) 1.22
Copyright (C) 2009 Free Software Foundation, Inc.
Run Code Online (Sandbox Code Playgroud)

是的,我知道,那里有许多预先构建的解决方案,但是我构建自己的解决方案有一些原因。感谢您提供为什么 tar 对我不起作用的任何想法。

Pow*_*man 3

看起来像 --atime-preserve 中断增量备份。:( 尝试 --atime-preserve=system - 它没有记录在手册页上,但可以工作。