0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

服务器数据恢复—ZFS文件系统下RAIDZ数据恢复案例

Frombyte 来源:Frombyte 作者:Frombyte 2024-12-19 13:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

服务器存储数据恢复环境:
ZFS Storage 7320存储阵列中有32块硬盘。32块硬盘分为4组,每组8块硬盘,共组建了3组RAIDZ,每组raid都配置了热备盘。

服务器存储故障:
服务器存储运行过程中突然崩溃,排除人为误操作、断电、进水和其他机房不稳定因素。管理员重启服务器存储,系统无法进入,需要恢复服务器存储中的数据。

服务器存储数据恢复过程:
1、将故障服务器存储中所有硬盘标记后取出,以只读方式进行扇区级完整镜像,镜像完成后将所有磁盘按照原样还原到原存储中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析所有硬盘中的底层数据,发现服务器存储中的热备盘全部启用,上层采用ZFS文件系统。
Tips:
在ZFS文件系统中,存储池被称为ZPOOL。ZPOOL可以有各种类别的子设备:块设备、文件、磁盘等等。本案例中ZPOOL的子设备是三组RAIDZ作为子设备。
经过对底层数据的分析发现,三组RAIDZ中的两组RAIDZ启用的热备盘的个数分别为1和3。启用热备盘后,第一组RAIDZ中又有一块盘离线,第二组RAIDZ中则又有两块硬盘离线。
根据上述分析结果模拟故障现场:三组RAIDZ中的两组RAIDZ出现硬盘离线的情况,热备盘自动上线替换离线盘。在热备盘无冗余的情况下第一组RAIDZ中又有一块盘离线,第二组RAIDZ中则有两块盘离线,ZPOOL进入高负荷状态(每次读取数据都需要校验);当第二组RAIDZ中出现第三块离线盘的时候,该组RAIDZ崩溃,ZPOOL下线,服务器存储崩溃。
3、ZFS管理的存储池与常规存储池不同。在ZFS文件系统下,ZFS管理所有磁盘。常规RAID在存储数据时会按照特定的规则组建池,并不关心文件在子设备上的位置。在ZFS下,存储数据时会为每次写入的数据分配适当大小的空间,并计算出指向子设备的数据指针。所以RAIDZ缺盘时无法直接通过校验得到数据,必须将整个ZPOOL作为一个整体进行解析。
4、北亚企安数据恢复工程师手工截取事务块数据,并编写程序获取最大事务号入口。
获取文件系统入口:

wKgZPGdjr12AIq8BAAEK1kJhCPk598.png

北亚企安数据恢复—ZFS文件系统数据恢复



5、获取到文件系统入口后,北亚企安数据恢复工程师编写数据指针解析程序进行地址解析。
解析数据指针:

wKgZO2djr2mAeiIxAAI8bn8cwwM905.png

北亚企安数据恢复—ZFS文件系统数据恢复



6、获取到文件系统入口点在各磁盘上的分布情况后,北亚企安数据恢复工程师开始手工截取并分析文件系统内部结构。入口点所在的磁盘组无缺失盘,可直接提取信息。根据ZFS文件系统的数据存储结构顺利找到映射的LUN的名称,进而找到其节点。
7、经过分析发现此存储中的ZFS版本与开源版本有较大差别,无法使用之前开发的解析程序进行解析,所以北亚企安数据恢复工程师重新编写程序进行解析。

wKgZPGdjr2-AD_U1AAK4o0VkozI055.png

北亚企安数据恢复—ZFS文件系统数据恢复



8、由于缺盘个数较多,每个IO流都需要通过校验得到,进度极为缓慢。与用户方沟通后得知此ZVOL卷映射到XenServer作为存储设备,所需要的文件在一个vhd内。提取ZVOL卷头部信息,按照XenStore卷存储结构进行分析,发现该vhd在整个卷的尾部。计算出其起始位置后从此位置开始提取数据。
9、Vhd提取完毕后,验证其内部的压缩包、图片、视频等文件,均可正常打开。
10、交由用户方验证恢复出来的数据。经过验证,发现恢复出来的文件数量与系统自动记录的文件数量差不多,稍微有点出入。丢失的极少量文件应该是因为这些文件是新生成的还未存储到磁盘。随机验证恢复出来的文件,全部可正常打开。用户方认可数据恢复结果。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    14

    文章

    10353

    浏览量

    91742
  • RAID
    +关注

    关注

    0

    文章

    291

    浏览量

    37735
  • 数据恢复
    +关注

    关注

    10

    文章

    726

    浏览量

    19042
  • zfs
    zfs
    +关注

    关注

    0

    文章

    7

    浏览量

    2759
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    服务器数据恢复】断电致UFS2文件系统损坏的虚拟机数据恢复案例

    本次需要进行数据恢复的设备为一台服务器,该服务器通过FreeNAS提供iSCSI块存储服务,并借助另外两台
    的头像 发表于 03-10 17:36 622次阅读
    【<b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>】断电致UFS2<b class='flag-5'>文件系统</b>损坏的虚拟机<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复】从崩溃到重生:16盘服务器RAID与EXT4文件系统深度修复实录

    服务器运维过程中,硬盘掉线是导致服务器故障、数据丢失的常见原因。针对普通服务器硬盘掉线引发的数据丢失问题,存在一套常规的
    的头像 发表于 03-10 16:52 445次阅读

    服务器数据恢复服务器“泡水”硬盘掉线,数据竟这样恢复

    北亚企安数据恢复中心的服务器数据恢复工程师和硬件工程师到现场处理故障。服务器
    的头像 发表于 01-22 17:38 1122次阅读
    【<b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>】<b class='flag-5'>服务器</b>“泡水”硬盘掉线,<b class='flag-5'>数据</b>竟这样<b class='flag-5'>恢复</b>

    服务器数据恢复—一文读懂服务器高频故障排查+标准数据恢复流程

    服务器数据恢复到底是一个什么样的流程? 服务器数据丢失后,进行数据
    的头像 发表于 01-08 11:11 452次阅读

    服务器数据恢复RAIDZ多盘离线导致服务器崩溃的数据恢复案例

    某存储设备中一共有40块磁盘组建存储池,其中4块磁盘作为全局热备盘使用。存储池内划分出若干空间映射到服务器使用。 服务器存储设备在没有断电、进水、异常操作、供电不稳定等外部因素的情况突然崩溃。管理员重启
    的头像 发表于 12-11 14:16 374次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>RAIDZ</b>多盘离线导致<b class='flag-5'>服务器</b>崩溃的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    虚拟化数据恢复—Hyper-V服务瘫痪危机:虚拟机数据文件丢失后的数据恢复案例

    进行检测也没有发现问题,也无被攻击/感染的迹象。对文件系统进行进一步分析,发现元文件创建时间与数据丢失时间一致,服务器数据
    的头像 发表于 11-20 15:47 437次阅读

    服务器数据恢复RAIDZ多块硬盘离线导致服务器崩溃的数据恢复案例

    服务器数据恢复环境&故障: 一台服务器有32块硬盘,采用Windows操作系统服务器在正
    的头像 发表于 09-18 12:29 1063次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>RAIDZ</b>多块硬盘离线导致<b class='flag-5'>服务器</b>崩溃的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复服务器断电导致raid模块损坏的数据恢复案例

    某品牌服务器中有12块硬盘,组建了一组raid5磁盘阵列,服务器内存储的是普通文件。 机房供电不稳定导致服务器断电,管理员重启服务器后发现
    的头像 发表于 09-04 12:57 1041次阅读

    服务器数据恢复—StorNext文件系统数据丢失的数据恢复案例

    服务器存储数据恢复环境&故障: 一台昆腾存储设备中有一组raid5磁盘阵列。阵列上有两块硬盘先后离线,raid5磁盘阵列不可用。
    的头像 发表于 08-19 11:43 717次阅读

    服务器数据恢复服务器上的卷被误删数据如何恢复

    工作人员不慎将一台服务器上的卷误删除,服务器上有一组raid5阵列。需要恢复误删除的数据
    的头像 发表于 08-14 11:33 1107次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>服务器</b>上的卷被误删<b class='flag-5'>数据</b>如何<b class='flag-5'>恢复</b>?

    数据数据恢复服务器异常断电导致Oracle数据库故障的数据恢复案例

    Oracle数据库故障: 某公司一台服务器上部署Oracle数据库。服务器意外断电导致数据库报错,报错内容为“system01.dbf需要
    的头像 发表于 07-24 11:12 837次阅读
    <b class='flag-5'>数据</b>库<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>服务器</b>异常断电导致Oracle<b class='flag-5'>数据</b>库故障的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复—重装系统导致XFS文件系统分区丢失的数据恢复案例

    服务器数据恢复环境&故障: 一台服务器上通过磁盘柜+RAID卡组建的riad5磁盘阵列,服务器上层安装Linux操作
    的头像 发表于 06-12 11:20 915次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—重装<b class='flag-5'>系统</b>导致XFS<b class='flag-5'>文件系统</b>分区丢失的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复—ocfs2文件系统被格式化为Ext4文件系统数据恢复案例

    服务器存储数据恢复环境&故障: 人为误操作将Ext4文件系统误装入一台服务器存储上的Ocfs2文件系统
    的头像 发表于 06-10 12:03 882次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—ocfs2<b class='flag-5'>文件系统</b>被格式化为Ext4<b class='flag-5'>文件系统</b>的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复—Linux系统服务器崩溃的数据恢复案例

    服务器数据恢复环境: linux操作系统服务器中有一组由4块SAS接口硬盘组建的raid5阵列。
    的头像 发表于 05-20 15:46 1004次阅读

    服务器数据恢复服务器重装系统导致分区消失的数据恢复案例

    服务器上有一组由raid卡组建的raid5磁盘阵列。上层安装linux才做系统,采用XFS文件系统,划分了3个分区。 管理员将服务器的操作系统
    的头像 发表于 05-14 10:13 737次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>服务器重装系统</b>导致分区消失的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例