此处假设备份/etc目录下的全部文件,实际应用中可以参照此种方法即可。
第一次备份(仅备份全部的大文件)
tar -zcvf etc`date -d "+1 day" +%Y%m%d`.tar.gz /etc/selinux /etc/ssh /etc/sysconfig /etc/udev
第二次增量备份(备份除第一次之外的全部文件)
tar -zcvf etc`date +%Y%m%d`.tar.gz --exclude=selinux --exclude=ssh --exclude=sysconfig --exclude=udev etc
数据恢复:
创建恢复目录:mkdir /data/dir
1、先恢复第一次备份文件:
tar -xf etc`date -d "+1 day" +%Y%m%d`.tar.gz -C /data/dir
2、再恢复第二次或者第n次备份文件
tar -xf etc`date +%Y%m%d`.tar.gz -C /data/dir
cd /data/dir && tree etc/ > ../etc2.txt
tree /etc > etc1.txt
diff etc1.txt etc2.txt
[root@x112 get]# tail -n 3 etc1.txt etc2.txt
==> etc1.txt <==
└── epel.repo
678 directories, 2006 files
==> etc2.txt <==
└── epel.repo
678 directories, 2006 files
至此,数据恢复完成,且和之前数据一致。备份还原成功!