热点:

    XFS文件系统备份还原

      [   原创  ]   作者:
    收藏文章 暂无评论

    当需要对整个文件系统进行备份与恢复时,单纯使用 tar 可能不够高效。由于 CentOS 7 默认采用 XFS 文件系统,因此专为该格式设计的 xfsdump 与 xfsrestore 工具便显得尤为重要。它们不仅能完整保存文件系统的结构与属性,还支持增量备份和快速恢复,特别适用于系统级的数据保护。接下来我们将详细介绍这两个命令的具体用法及其操作方式,帮助掌握如何高效地进行文件系统的备份与还原。

    1、 XFS文件系统备份工具xfsdump的使用方法

    2、 xfsdump 具备强大的备份功能,不仅支持对文件系统的完整备份,还能实现累积备份。所谓累积备份,是指在首次完成完整备份之后,后续的备份操作只需记录与上次完整备份之间发生变化的文件。举例来说,若 /home 是一个独立的文件系统,在第一次执行 xfsdump 进行全面备份后,随着时间推移,其中部分文件发生了修改或新增。此时若再次使用 xfsdump,便可选择进行累积备份模式,系统将仅识别并保存自首次备份以来有变动的数据内容,而不重复备份未更改的部分。这种方式有效节省了存储空间并提升了备份效率。若仍难以理解,可通过示意图辅助说明,以更直观地展现完整备份与累积备份之间的差异和运作机制。这种分阶段、差异化的备份策略,特别适用于数据频繁更新但整体变化比例不高的环境。

    3、 所示,上方的实时文件系统代表的是持续变动中的数据,比如位于 /home 目录下的文件内容,会随着时间不断被修改、新增或删除。下方的区块则表示通过 xfsdump 所创建的备份数据。首次执行备份时,系统会对整个文件系统进行完整存档,这种备份在 xfsdump 中被称为 level 0 备份。当进行第二次备份时,由于 /home 中的数据已经与最初 level 0 的状态不同,此时若选择 level 1 备份,系统将自动比对当前文件系统与 level 0 之间的差异,仅保存那些发生过变化的文件。第三次备份若设定为 level 2,则系统会以 level 1 作为参照基准,只备份自 level 1 之后发生更改的部分。以此类推,增量备份始终是基于上一次指定层级的备份进行差异比对。所有备份的层级信息和历史记录均存储在系统目录 /var/lib/xfsdump/inventory 中,便于后续恢复时准确识别各次备份的关系与顺序。这种方式既节省存储空间,又提高了备份效率。

    4、 使用xfsdump时需留意以下限制条件。

    5、 xfsdump 无法备份未挂载的文件系统,仅支持对已挂载的进行备份操作。

    6、 由于涉及文件系统操作,xfsdump 需要 root 权限才能执行。

    7、 xfsdump 仅支持对 XFS 文件系统进行备份操作。

    8、 xfsdump生成的备份数据仅能通过xfsrestore进行恢复和读取,其他工具无法识别该格式。

    9、 xfsdump 依靠文件系统的 UUID 来识别不同的备份文件,若两个文件系统拥有相同的 UUID,则无法分别进行备份。

    10、 xfsdump选项虽多,但若仅需基本操作,掌握以下几个关键选项就已足够应对大多数情况。

    11、 xfsdump 是一种用于备份 XFS 文件系统数据的工具,能够完整保存指定目录或文件的内容,支持增量与完全备份,适用于需要高效管理与恢复重要资料的场景。

    12、 参数与选项设置

    13、 -L:xfsdump 用于记录每次备份的会话信息,此处可输入对该文件系统的简要描述。

    14、 xfsdump 可记录存储介质的头部信息,此处可输入该介质的简要描述。

    15、 -l:小写字母l,用于设定备份等级,范围0到9共十个级别,默认为0,表示完全备份。

    16、 -f:类似于tar命令,用于指定生成的文件,可接设备文件如/dev/st0,也可接普通文件名或其他存储介质。

    17、 查看 /var/lib/xfsdump/inventory 中记录的当前备份信息状态。

    18、 请注意,xfsdump 默认仅支持对整个文件系统进行备份,无法针对特定目录操作。因此不能使用 xfsdump 备份如 /etc 这类非独立文件系统的目录。/etc 本身并非独立文件系统,若强行操作可能导致错误。务必确认备份目标为完整文件系统,避免数据遗漏或命令失效。

    19、 使用xfsdump工具对整个文件系统进行完整备份。

    20、 接下来我们通过几个实例来演示。假设你和鸟哥一样,将 /boot 单独划分了文件系统,要完整备份该文件系统,可按以下方式操作。

    21、 首先确认 /boot 是否为独立的文件系统。

    22、 /boot 目录挂载在 /dev/vda2 分区上,该分区总容量为1014M,已用131M,剩余884M,使用率为13%。

    23、 瞧,这真是个独立的文件系统,/boot 就是它的挂载位置。

    24、 将完整备份的文件名称记录到 /srv/boot.dump 文件中。

    25、 对本地系统中的/boot目录进行xfsdump零级备份,备份源为study.centos.vbird主机,开始执行完整数据归档操作。

    26、 备份操作执行于2015年7月1日18时43分04秒,记录了文件系统的完整状态,确保数据安全可恢复。

    27、 本次备份会话的唯一标识为 418b563f-26fa-4c9b-98b7-6f57ea0163b1,用于追踪和管理此次数据转储操作,确保过程可查、结果可追溯。

    28、 为备份会话指定标签boot_all,便于后续识别与管理,确保数据操作的清晰与高效。

    29、 xfsdump:inode映射第一阶段:建立初始备份文件列表,启动数据备份流程。

    30、 下达指令时可省略 -L 与 -M 参数,但系统将进入交互模式,需手动输入确认信息。

    31、 在执行 xfsdump 时,屏幕上会显示相关信息,请您自行留意观察具体过程。

    32、 执行 xfsdump 后,系统才会在 /var/lib/xfsdump/inventory 目录下生成相应的记录文件。

    33、 通过简单操作即可创建 /srv/boot.dump 文件,实现对整个 /boot/ 文件系统的完整备份。系统会自动将备份的详细信息,如文件系统类型、备份时间、会话ID等,记录在 /var/lib/xfsdump/inventory 目录中,以便后续备份时作为增量备份的参考依据。为了验证机制是否正常运作,接下来将进行一次测试,检查是否能够成功执行 level 1 增量备份,确保备份流程的准确性和可靠性。整个过程旨在保障数据安全,提升系统维护效率。

    34、 使用 xfsdump 可实现增量备份,仅备份自上次备份以来发生变化的数据,提升效率并节省存储空间。

    35、 必须先完成完整备份(-l 0),才能进行后续的累积备份(-l 1~9)。请确认前述操作已成功执行。现在,我们开始设置累积备份功能,逐步实现更高效的备份策略。

    36、 查看系统中是否存在使用 xfsdump 备份过的文件系统记录信息。

    37、 目前仅存在一份编号为0的备份数据,且其级别为0,尚未发现其他会话的备份信息。

    38、 先在/boot目录下创建一个约10MB的文件进行测试操作。

    39、 开始创建差异备份,选择级别1进行操作。

    40、 山水相依,风景如画,美不胜收。

    41、 查看文件大小,不正是我们刚才创建的那个大文件所占的存储空间吗?^_^

    42、 最后确认一下,是否已记录下 level 1 备份的具体时间点?

    43、 重新表述如下:

    44、 省略部分内容,保持简洁表达。

    45、 此处内容省略,不再继续展开。

    46、 通过这种方式,我们只需备份文件的差异部分即可。

    47、 XFS文件系统数据恢复与还原操作

    48、 备份文件的作用是在紧急情况下恢复系统中的重要数据,因此掌握备份的还原方法十分必要。使用 xfsdump 创建的备份,可通过 xfsrestore 命令进行恢复。该命令功能丰富,参数众多,详细用法可查阅其手册页获取更多信息。此处仅作简要说明,帮助用户了解基本操作流程,实际应用中可根据具体需求灵活运用各项选项完成数据还原任务。

    49、 使用 xfsrestore -I 命令可查看备份文件中的详细信息,便于了解备份内容及恢复所需数据。

    50、 利用xfsrestore命令,可从备份文件中恢复整个系统或指定目录的数据,适用于单一文件的还原操作,实现对全系统的完整复原。

    51、 使用 xfsrestore -r 命令,根据累积备份文件将系统恢复至指定目录,实现数据的完整还原。

    52、 使用 xfsrestore 命令并加上 -i 参数可进入交互模式,在此模式下可以选择性地恢复指定的备份目录内容,而非全部还原,便于精准恢复所需数据。

    53、 参数与选项

    54、 功能与 xfsdump 一致,支持查看备份信息,如标签名称、备份时间等详细内容。

    55、 -f 后面接的是备份文件,企业中常用于连接如 /dev/st0 等磁带设备,此处我们指定为普通文件名。

    56、 -L:指定会话的标签名称,可通过-I选项查询相关信息,并在该参数后输入对应的标签值。

    57、 -s 后需指定目录,表示仅恢复该目录下的某个文件或整个目录。

    58、 若备份数据存于档案中,则无需此参数;但若单个磁带上包含多个文件,则需使用。

    59、 依靠此物实现持续恢复积累

    60、 进入互动模式,供高级管理员使用,普通用户通常无需操作。

    61、 通过xfsrestore查看xfsdump生成的备份文件中的数据内容。

    62、 要查看 xfsdump 的备份内容,只需执行 xfsrestore -I 命令,无需添加其他参数。该命令会自动读取系统中默认的记录目录 /var/lib/xfsdump/inventory/ 中的信息并显示出来。由于 xfsdump 和 xfsrestore 都使用同一目录存储和读取备份数据,因此两者的查询结果完全一致,能够直观反映出已进行的备份情况。

    63、 鸟哥已删减无关项目,上述输出为简化后的结果。

    64、 该文件系统挂载于 /boot 目录,包含两份备份,分别为 level 0 和 level 1 级别。

    65、 注意查看两份备份文件的内容大小,尤其要关注其中的会话标签信息,这一点非常关键。

    66、 本次查询旨在确认各文件对应的挂载点及备份级别等信息。接下来,我们将实际操作如何从备份中恢复系统,逐步完成还原流程。

    67、 快速恢复基础层级的文件系统结构

    68、 先完成一个简单的任务,即将 /boot 目录完整恢复至初始状态。具体操作并不复杂,只需明确两个关键信息:需要还原的目标文件及其对应的会话标签名称。通过之前的查看可以确认,level 0 对应的会话标签为boot_all。掌握这一信息后,便可依照相应流程进行复原操作。整个过程逻辑清晰,步骤明确,只要正确识别文件与标签的对应关系,就能顺利将系统文件恢复到原始状态,确保目录完整性与系统稳定性。

    69、 直接用新数据覆盖原有数据即可完成更新。

    70、 xfsrestore:第0个数据流/srv/boot.dump正常(成功),这是否为正确的备份文件?

    71、 将备份文件解压至 /tmp/boot 目录中。

    72、 咦,大小不一怎么办?别担心,一起来检查找出原因吧!

    73、 瞧!我们在 /boot 目录下新增了一个文件。

    74、 由于未删除原 /boot 目录中的内容,直接还原时会覆盖同名文件,而系统中新产生的其他文件则会被保留下来。因此,像 /boot/testing.img 这样的文件仍会存在于目录中。若将备份目标设为一个全新的路径,则其中仅包含备份时的数据,不会混杂其他文件。使用 `diff -r` 命令可对比两个目录之间的内容差异,通过该指令能清楚识别出哪些文件不同、哪些是新增或被修改的,有助于确认备份与当前系统之间的具体区别。

    75、 将备份档中的 grub2 恢复至 /tmp/boot2 目录中。

    76、 若只需恢复特定目录或文件,只需添加-s 目录选项,操作简便,实用高效。

    77、 恢复累计备份的数据

    78、 恢复累积备份的过程与恢复单一文件系统类似。若备份是按照 level 0 → level 1 → level 2 的层级顺序进行,那么恢复时也必须依相同顺序逐步还原。完成 level 0 的恢复后,接下来需依次将 level 1、level 2 等后续层级的数据恢复至系统中。可以基于之前恢复 /tmp/boot 的操作案例,继续沿用该流程进行后续的恢复步骤,确保数据完整还原到最新状态。

    79、 将 level 1 持续恢复至 /tmp/boot 目录中。

    80、 xfsrestore 交互模式仅能恢复部分档案数据

    81、 如果不清楚备份文件中具体包含哪些内容,仅靠猜测来选择还原显然不现实;尤其当需要恢复的文件数量较多时,使用 -s 参数逐个指定也显得繁琐低效。有没有更便捷的方法?答案是肯定的。可以通过 -i 参数进入交互式界面,直观查看备份内容并灵活选择所需文件进行还原。例如,若想了解 level 0 备份中有哪些数据,并从中挑选部分文件恢复,使用 -i 模式就能轻松实现,既清晰又高效,大大提升了操作的准确性和便利性。

    82、 进入备份目录,查找需恢复的文件,并将其还原至 /tmp/boot3 目录中。

    83、 pwd

    84、 可添加至恢复文件清单中,便于后续复原操作。

    85、 将文件名从恢复列表中移除,并非真正删除文件,请注意区分操作含义。

    86、 启动复原程序,开始恢复操作!

    87、 仅能恢复三个文件名,若该名称为目录,则其下所有子文件也将一并还原。

    88、 这个 -i 功能非常实用,能从备份文件中精准提取所需数据进行恢复,操作直观且高效。若已知具体文件名,也可直接使用 -s 参数跳过浏览步骤,快速完成处理,大幅提升效率,十分便捷。

    soft.zol.com.cn true https://soft.zol.com.cn/1243/12436076.html report 9879 当需要对整个文件系统进行备份与恢复时,单纯使用 tar 可能不够高效。由于 CentOS 7 默认采用 XFS 文件系统,因此专为该格式设计的 xfsdump 与 xfsrestore 工具便显得尤为重要。它们不仅能完整保存文件系统的结构与属性,还支持增量备份和快速恢复,特别适用于系统级的数...
    不喜欢(0) 点个赞(0)
    随时随地资讯查报价 就上ZOL手机客户端,点击或扫描二维码下载
    立即下载

    Raise Data Recovery for XFS

    更新时间:2011年11月17日

    用户评分:0 | 0人点评

    软件类型:共享软件

    软件语言:英文

    Raise Data Recovery for XFS
    • 更新时间:2011年11月17日
    • 软件大小:6.8MB
    • 软件分类:数据恢复
    • 语言种类:英文
    • 软件评级:有 0 人点评