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

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

3天内不再提示

服务器数据恢复—如何让ZFS文件系统数据“起死回生”?

Frombyte 来源:Frombyte 作者:Frombyte 2025-01-02 14:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

服务器数据恢复环境&故障:
一台配有32块硬盘的服务器在运行过程中突然崩溃不可用。经过初步检测,基本上确定服务器硬件不存在物理故障。管理员重启服务器后问题依旧。需要恢复该服务器中的数据。

服务器数据恢复环境:
1、将服务器中硬盘做好标记后取出,硬件工程师检测后没有发现有硬盘存在硬件故障,都可以正常读取。使用专业工具对所有硬盘进行扇区级全盘镜像。镜像完成后按照原样将所有硬盘还原到原服务器中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析所有磁盘底层数据。通过分析获取到和故障服务器有关的信息:服务器通过zfs文件系统管理所有磁盘。服务器中的32块硬盘共创建了4组raidz阵列。两组raidz阵列硬盘离线后都启用了热备盘,热备盘上线后这两组raidz阵列中又有硬盘离线。
3、ZFS管理的存储池与常规存储池有所不同。常规RAID阵列存储数据,按照特定的规则组建池,不关心文件在子设备上的位置。ZFS存储数据会为每次写入的数据分配适当大小的空间,并计算出指向子设备的数据指针。ZFS的这种特性导致RAIDZ阵列在缺盘时无法直接通过校验得到数据,而是需要将整个ZPOOL作为整体进行解析。
4、手工截取事务块数据,数据恢复工程师编写程序获取最大事务号入口。
获取文件系统入口:

wKgaomUTz2qATYGwAAEAB2YAtgc824.png

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



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

wKgZomUTz32AJhGmAAIEXNnNaqg644.png

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



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

pYYBAGN_DiGARAd0AAI3vsvBKTM418.png

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



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

审核编辑 黄宇

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

    关注

    13

    文章

    10093

    浏览量

    90856
  • 数据恢复
    +关注

    关注

    10

    文章

    688

    浏览量

    18790
  • zfs
    zfs
    +关注

    关注

    0

    文章

    7

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

    服务器数据恢复—重装系统炸锅!reiserfs数据恢复揭秘

    一台服务器上有一组由4块SAS硬盘组建的RAID5阵列,采用的reiserfs文件系统。 原始数据组织结构:几十MB的boot分区+数百GB的LVM卷+2GB的swap分区。LVM卷中划分了一个reiserfs
    的头像 发表于 10-30 16:26 371次阅读

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

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

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

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

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

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

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

    服务器数据恢复环境&故障: 一台服务器上通过磁盘柜+RAID卡组建的riad5磁盘阵列,服务器上层安装Linux操作
    的头像 发表于 06-12 11:20 615次阅读
    <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 559次阅读
    <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 542次阅读

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

    服务器上有一组由raid卡组建的raid5磁盘阵列。上层安装linux才做系统,采用XFS文件系统,划分了3个分区。 管理员将服务器的操作系统
    的头像 发表于 05-14 10:13 417次阅读
    <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>案例

    服务器数据恢复—AIX小型机误删数据如何恢复

    和oradata2。 AIX小型机采用JFS2文件系统分配和管理逻辑卷。JFS2文件系统的根目录存储Oracle数据库核心文件(.dbf文件
    的头像 发表于 04-16 18:12 460次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—AIX小型机误删<b class='flag-5'>数据</b>如何<b class='flag-5'>恢复</b>!

    服务器数据恢复—raid5阵列中硬盘坏道导致阵列崩溃的数据恢复案例

    服务器存储数据恢复环境: 某品牌DS3512存储中有一组由6块SAS磁盘组建的raid5阵列。划分一个lun分配给Linux系统服务器,并
    的头像 发表于 03-28 13:25 580次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—raid5阵列中硬盘坏道导致阵列崩溃的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    虚拟化数据恢复—VMware虚拟化环境下重装系统导致服务器数据丢失的数据恢复

    VMware虚拟化平台 vmfs文件系统 工作人员误操作重装操作系统服务器崩溃。 重装系统会导致文件系统
    的头像 发表于 03-13 10:33 621次阅读
    虚拟化<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—VMware虚拟化环境下重装<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>

    服务器数据恢复Zfs文件系统服务器数据恢复案例

    服务器数据恢复环境&故障: 一台zfs文件系统服务器,管理员误操作删除了
    的头像 发表于 01-16 17:27 629次阅读

    服务器数据恢复—Lustre分布式文件系统数据恢复案例

    5台节点服务器,每台节点服务器上有一组RAID5阵列。每组RAID5阵列上有6块硬盘(其中1块硬盘设置为热备盘,其他5块硬盘为数据盘)。上层系统环境为Lustre分布式
    的头像 发表于 12-25 11:39 795次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—Lustre分布式<b class='flag-5'>文件系统</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

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

    服务器存储数据恢复环境: ZFS Storage 7320存储阵列中有32块硬盘。32块硬盘分为4组,每组8块硬盘,共组建了3组RAIDZ,每组raid都配置了热备盘。
    的头像 发表于 12-19 13:31 1020次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>ZFS</b><b class='flag-5'>文件系统</b>下RAIDZ<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例