和你们大多数人一样,我每天都会为某个文件夹(任何应用程序)制作几个 tag.gz 快照。每个快照之间只有一些不同,但 tar.gz 不是 diff/delta 友好格式。
文件中的大多数数据应该是冗余的。有没有更智能的方法将这些 tar.gz 文件(例如将 7 天的文件合并为一个)重新打包/压缩为一个较小的文件,从而节省多达 6/7 的磁盘容量?
PS. 我不想改变快照部分,这最好简单点。
PS2. 我也不想删除,也不想循环,容量有,但是不喜欢冗余。
答案1
不幸的是,tar 工具有局限性。如果你想重新打包,你必须解包,这会占用大量的硬盘空间和性能,然后再次进行差异备份。效果不佳。
最好制作相同的备份。首先,保存年轻的文件以进行差异备份:
never=/var/run/never
neverold=/var/run/never-old
rm $neverold
mv $never $neverold
touch $never
tar cvzf differential.tar.gz --never $neverold
完成此完整备份后
tar as usual
那么您应该简单地删除旧的每日完整备份。注意,保留指定星期几的完整备份。否则差异可能无法使用。在这些日子里您应该删除不需要的差异。