我已经检查了其他相关帖子(关于如何制作增量tar拷贝的类似问题),他们的答案不适用于我的案例。
问题: 我有一个很大的(大约700 / 800Gb)目录,其中有很多子目录,其内容在/ storage中。 副本存储在/ storage / backup目录中 如果我们将副本限制为/ storage /子目录(8Gb长度),则首先完成tar工作,并且后面的增量副本似乎是正确的(只有一些Kb len)。 如果我们在/ storage(不包括/ storage / backup)中执行tar完成tar完成但在完成后抛出错误(-2),但是如果我们测试它似乎正确解压缩,我们必须在之后停止增量备份因为它开始增长并且似乎正在增长到与comlpete备份相同的大小。 相同的原始脚本在其他服务器上运行,内容更多,增量大小应该只有1 / 2Gb不会增长和增长......
脚本简化代码。应该完成的那一天是硬编码的第12天示例,如果我们在12日启动它就会生成完整的副本,如果我们在启动增量副本后2天,它似乎会增长到完整的大小......
#!/bin/bash
name_backup="mybck"
data_dir="/storage"
dir_bkp="/storage/backup/MonthCopy"
data_dirs_exclude="/storage/backup"
make_complete_day="${1:-12}"
mydate="$(date "+%Y%m%d")"
#Filenames
fname_bkp="${dir_bkp}/${name_backup}-${mydate}"
fname_inc="${dir_bkp}/mybck.incremental"
fname_inc_save="${dir_bkp}/mybck.incremental.save"
fname_log="${fname_bkp}.log"
#Compression parameters
export XZ_OPT="-3 -T0 -Csha256"
today="$(date "+%d")"
if [ "${make_complete_day}" -eq "${today}" ]
then
echo Its _complete copy
fname_bkp="${fname_bkp}-complete.tar.xz"
time nice -n 19 ionice -c2 -n7 tar -cpf "${fname_bkp}" --use-compress-
program=xz --exclude="${data_dirs_exclude}" --listed-incremental
"${dir_bkp}/snapshot.file" "${data_dir}" && {
echo "Copy OK($?).";
} || {
err=$?
echo "Error in copy($err)."
}
else
echo Incremental copy
fname_bkp="${fname_bkp}-incremental.tar.xz"
time nice -n 19 ionice -c2 -n7 tar -cpf "${fname_bkp}" --use-compress-
program=xz --exclude="${data_dirs_exclude}" --listed-incremental
"${dir_bkp}/snapshot.file" "${data_dir}" && {
echo "Copia OK($?).";
} || {
err=$?
echo "Error in copy($err)."
}
fi
tar版本是:tar(GNU tar)1.26
之后我的tar完成和增量副本是否有任何错误? 如果没有,任何关于尝试什么的建议? 问候。