简介
在CentOS7上默认使用的文件系统是xfs。xfs 专为大数据产生,每个单个文件系统量最大支持8eb,单个文件可以支持16tb,不仅数据量大,而且扩展性搞。还可以通过xfsdump,xfsrestore来备份和恢复。
XFS 不需要再备份前被卸载;对使用的 XFS 文件系统做备份就可以保证镜像的一致性。XFS 的备份和恢复的过程是可以被中断后继续的,无需冻结文件系统。xfsdump 甚至提供了高性能的多线程备份操作--它把一次dump拆分成多个数据流,每个数据流可以被发往不同的目的地。
xfs 备份级别
0 级别(默认) 完全备份
1 - 9 级别 增量备份
扩展:
完全备份:每次都能把指定的备份目录完整的复制一遍,不管目录下的文件有没有变化;
增量备份:每次讲之前(第一次、第二次、直到前一次)做过备份之后有变化的文件进行备份;
差异备份:每次都将第一次完整备份以来有变化的文件进行备份;
实验
如果有虚拟机可以直接添加一个虚拟磁盘进行操作。
# 不分区也可以直接使用,如果需要多个分区就使用fdisk进行分区就可以了。
mkfs.xfs /dev/sdb
mount /dev/sdb /mnt
date > /mnt/1.txt
mkdir -p /mnt/a /mnt/b
date > /mnt/a/1.txt
date > /mnt/2.txt
1、安装
yum -y install xfsdump
2、备份操作
0x00备份整个分区
xfsdump -f 备份存放位置 要备份的路径
#运行过程会提示输入会话标签和备份标签
xfsdump -f /root/bakxfs /mnt
# 提前指定标签
xfsdump -f /root/bakxfs2 /mnt -L sdb -M dumps_sdb
0x01 指定只备份分区中某个目录
xfsdump -f /root/bakxfs_a /mnt -s a 3.txt -L sdb -M dumps_sdb_some
0x02 全量恢复
xfsrestore -f /root/bakxfs /mnt
0x03 部分回复
xfsdump -f /root/backxfs /mnt -s ./1.txt
0x04 增量备份
a)先进行全量备份
xfsdump -f /root/bakxfs_full0 /mnt -L sdb -M sdb_full_0
b)再进行增量备份
date > /mnt/inc.txt
xfsdump -l 1 -f /root/bakxfs_inrc1 /mnt -L sdb -M sdb_inrc1
c)先进行全量恢复,再增量恢复(如果有多个增量备份,只需恢复最后一个即可)
xfsrestore -f /root/bakxfs_full0 /mnt
xfsrestore -f /root/bakxfs_inrc1 /mnt
总结
xfsdump 不支持没有挂载的文件系统备份,只能备份已挂载过的;
xfsdump 必须使用 root 的权限才能操作 (涉及文件系统的关系);
xfsdump 只能备份 XFS 文件系统;
xfsdump 备份下来的数据 (档案或储存媒体) 只能让 xfsrestore 解析;
xfsdump 是透过文件系统的 UUID 来分辨各个备份档的,因此不能备份两个具有相同 UUID 的文件系统。
领取专属 10元无门槛券
私享最新 技术干货