使用 tar 进行文件夹的差异备份、还原

首先,建立测试文件夹和测试文件

这里写图片描述

这里创建了一个test文件夹,在test文件夹中创建了a, b, c三个文件作为测试数据文件。

然后,执行一次全备份

这里写图片描述

这里进行一次全备份,备份指令格式为:

tar -g 记录文件名 -zcf 压缩得到的文件名称 目标文件夹

记录文件如果不存在,会自动创建,里边记录的是关于文件夹中数据的信息,还原时需要用到。

如图,我们在主目录生成了一个记录文件snapshot和一个全备份压缩文件full_backup.tar.gz

新增一个数据文件, 并修改一个数据文件,然后进行一次差异备份

这里写图片描述

在test文件夹中生成新测试数据文件d,同时修改a的内容,然后进行一次差异备份,做差异备份时选定的记录文件需要跟之前全备份时的记录文件相同,否则会进行一次重新的全备份。
差异备份得到 diff1_backup.tar.gz

删除一个数据文件, 并再次修改一个数据文件,然后再进行一次差异备份

这里写图片描述

在test文件夹中删除测试数据文件b,同时再次修改a的内容,然后再进行一次差异备份,得到备份文件diff2_backup.tar.gz

删除test文件夹,利用备份进行还原

这里写图片描述

首先删除文件夹,然后依照刚才生成备份的顺序依次还原备份(先还原全备份,再还原差异备份),备份指令格式如下:

tar -g 记录文件名 -zxf 对应压缩文件

这里再强调一遍,一定要加-g参数,-g 后边是记录文件,如果不加的话,会导致仅仅已删除的文件在还原后不会删除,这里可理解为第二份差异备份前删除文件文件b的操作没有记录,导致备份还原后的test文件夹中再次出现b,这当然不是我们需要的,只是类似于增量备份(我之前在百度搜到的文章就是没加-g参数,导致我一度以为tar指令无法进行差异备份)。

在每次恢复备份时,我也列出test中文件的变化,可以看出,的确是一步步还原我们对文件夹的操作。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值