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

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

3天内不再提示

NetApp数据恢复—NetApp误删除多个lun的数据恢复案例

Frombyte 来源:Frombyte 作者:Frombyte 2024-12-24 09:56 次阅读

NetApp数据恢复环境:
NetApp某型号存储阵列,包含2个机头+1个扩展柜,72块SAS接口的520字节硬盘组建了3组raid。

wKgZO2dqE_6AVzWUAAFHSM2ohHg921.png

北亚企安数据恢复—NetApp数据恢复

NetApp故障:
工作人员误操作删除11个lun。

NetApp数据恢复过程:
1、将NetApp存储阵列环境中所有硬盘做好标记后取出。硬件工程师对所有硬盘进行检测后没有发现有硬盘存在硬件故障,都可以正常读取。将所有硬盘以只读方式进行扇区级全盘镜像,镜像完成后将所有磁盘按照原样还原到原存储中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、北亚企安数据恢复工程师团队对该NetApp存储进行分析后,制定了NetApp存储数据恢复方案:
a、分析盘序和LVM的组成方式。
b、扫描硬盘内的所有节点,主要是用户节点。
c、在节点扫描结果中找到文件大小符合需求的节点,找到索引根。
d、根据索引根内的第一级数据指针提取本文件的所有直接数据指针(参考节点中0x03位置的MAP深度:0x00时直接从节点内提取数据,0x01时需要提取一次MAP,0x02时需要提取两次MAP......)。完成指针提取后开始提取文件数据。
3、在盘头位置找到超级块。从超级块中获取到磁盘组名字、磁盘组的逻辑起始块号、总块数、磁盘组中raid的编号。
NetApp超级块:

wKgZO2dqFBKAFA1qAAIxkXIhsZ4083.png

北亚企安数据恢复—NetApp数据恢复



4、每个数据块占8个扇区,数据块后附加64字节数据块描述信息。根据这些信息判断出校验盘。提取数据时需要剔除校验盘。
0x10处为FFFF表示校验块,校验块描述信息样例:

wKgZPGdqFBqAM8m8AAFxgzGaccQ180.png

北亚企安数据恢复—NetApp数据恢复



5、根据每块磁盘8号扇区的磁盘信息以及磁盘末尾的RAID盘序表确定盘序。确定各个磁盘所属aggr组,然后再判断组内盘序。数据指针跳转时不考虑校验盘,所以只需要获取到数据盘的盘序即可。
NetApp盘序表:

wKgZPGdqFCCASOKbAAVn3o0hJP4117.png

北亚企安数据恢复—NetApp数据恢复



6、NetApp的节点分布在数量众多的数据块内,在数据块内又被统一组织为节点组。每个节点组的前64字节记录系统数据,使用192字节作为一项来记录各个文件节点。文件节点根据用户级别分为2类:“MBFP”系统文件节点、“MBFI”用户文件节点。通常恢复数据只需要MBFI节点组即可。
NetApp节点样例图:

wKgZPGdqFC6AJrWLAAN54UrnNaE363.png

北亚企安数据恢复—NetApp数据恢复



7、获取目录项,根据其节点编号找到对应节点。

wKgZO2dqFDaAV6pJAAHibSA_VoM162.png



8、扫描节点信息。

wKgZO2dqFDyATlcAAAFdqUeLXu0810.png

北亚企安数据恢复—NetApp数据恢复



节点扫描类:

wKgZPGdqFEWAbh_2AAPiRNpOAGE922.png

北亚企安数据恢复—NetApp数据恢复



节点扫描程序完整流程:

wKgZO2dqFEyAXWXfAAI3_mIA5O8912.png

北亚企安数据恢复—NetApp数据恢复



在循环扫描完毕之后会将所有扫描到的MBFP、MBFI和DOC数据块分别写入到三个文件内,用于后续处理。
9、将ScanNode扫描到的MBFI和MBFP、Dir存入数据库以备后续使用。
MBFI导入数据库整体流程:

wKgZPGdqFFSAYDwuAAQhA19dTFM710.png

北亚企安数据恢复—NetApp数据恢复



函数执行完毕后可以查看数据库得到如下信息:
节点导入信息:

wKgZO2dqFF2AZAjIAAII6qSvhfg259.png

北亚企安数据恢复—NetApp数据恢复



NetApp在更改inode节点时不会直接覆盖而是重新分配inode进行写入。单个文件的节点node_uid唯一不变,mbfi_usn会随着节点的变化而增大(正常情况下提取某个文件时使用usn最大的节点)。一般情况下存储划分出的单个节点会作为LUN映射到服务器使用。根据file_size可以确定这个文件的大小,按照文件大小分组后再选取usn最大值的节点,跳转到MBFI文件的offset值偏移位置,取出节点。
节点样例:

wKgZO2dqFGSAbdCqAAN3sZvOPmI274.png

北亚企安数据恢复—NetApp数据恢复



10、获取到要提取的文件的Node之后,开始提取块设备文件。
程序需要读取配置文件:

wKgZPGdqFGyAPFmyAALDqhPpSdk611.png

北亚企安数据恢复—NetApp数据恢复



初始化完毕后,开始提取文件的各级MAP。本案例中文件大小均大于1T,MAP层级为4,所以需要提取4次。第一级MAP默认只占用1个块,所以在程序内直接提取;后三级MAP在GetAllMap函数内进行提取。通过块号计算数据块位置时,由于NetApp使用JBOD组织LVM,直接用块号除以每块磁盘上的块数可得到当前块所在的磁盘序号(计算机整数除法,丢弃小数部分);再使用块号取余块数,得到数据块在此磁盘上的物理块号,物理块号乘以块大小,得到数据块偏移位置。
11、本案例中的块设备5T大小的lun使用的是aix小机的jfs2文件系统。可以通过解析jfs2文件系统来提取里面的数据库备份文件。
7扇区记录了lvm描述信息,获取pv大小和pv序号。类似找到vg描述区,获取lv数和pv数;找到pv描述区,解析pp序号和pp数。

wKgZPGdqFHmAMbNxAAHqO8f4zto355.png

北亚企安数据恢复—NetApp数据恢复



LV类型及LV挂载信息区域:

wKgZPGdqFH-AJbSHAANYcTPXvLc471.png

北亚企安数据恢复—NetApp数据恢复



12、解析8个1T大小的lun组成的oralce ASM文件系统,提取其中的数据库文件。
添加8个lT大小的lun:

wKgZPGdqFIeAUdzKAALuni-ypTg055.png

北亚企安数据恢复—NetApp数据恢复



解析asm文件系统,提取出数据库文件。

wKgZO2dqFI2AMLJ7AAQe6E2gh04953.png

北亚企安数据恢复—NetApp数据恢复



13、搭建小机环境,安装oracle数据库,检测数据库文件和备份文件。
14、检测数据库文件。使用提取出的数据库文件启动数据库,启动失败。经检测该数据库文件存在坏块,无法使用。
15、因为用户方设定的数据库备份机制,所以每个数据库存在多个备份。找到最新的数据库备份文件来还原数据库。经过尝试筛,选出最新的可用的数据库备份文件来还原数据库环境,然后由用户方验证。

数据验证及数据移交:
经过用户方多次反复的验证,发现数据库中少量数据缺失,但是在用户方接受范围之内。用户方认可数据恢复结果。

审核编辑 黄宇

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

    关注

    12

    文章

    9142

    浏览量

    85383
  • 数据恢复
    +关注

    关注

    10

    文章

    570

    浏览量

    17443
  • NetApp
    +关注

    关注

    0

    文章

    73

    浏览量

    14725
收藏 人收藏

    评论

    相关推荐

    使用lsof实现对linux文件的误删除恢复练习

    本文记录使用lsof实现对linux文件的误删除恢复练习。题目如下: 1.确保当前nginx进程运行中 2.删除日志文件,rm -f /var/log/nginx/access.log 3.以
    的头像 发表于 11-24 11:14 184次阅读
    使用lsof实现对linux文件的<b class='flag-5'>误删除</b><b class='flag-5'>恢复</b>练习

    服务器数据恢复—EVA存储误删除VDISK的数据恢复案例

    服务器存储数据恢复环境: 某单位有一台EVA某型号存储主机+2个扩展柜,共12个FATA磁盘+10个FC磁盘,LUN数量不确定,操作系统为WINDOWS SERVER。该存储用来存放单位的历史
    的头像 发表于 11-05 14:39 184次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—EVA存储<b class='flag-5'>误删除</b>VDISK的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复—EXT3文件系统下误删除数据恢复案例

    服务器数据恢复环境: 邮件服务器中有一组由8块盘组成的RAID5阵列, 上层是Linux操作系统+EXT3文件系统。 服务器故障: 由于误删除导致文件系统中的邮件数据丢失。
    的头像 发表于 10-23 15:11 161次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—EXT3文件系统下<b class='flag-5'>误删除数据</b>的<b class='flag-5'>恢复</b>案例

    NetApp数据恢复NetApp存储WAFL文件系统下误删除数据恢复案例

    NetApp某型号存储,WAFL文件系统。 工作人员误操作将该NetApp存储中的重要数据删除
    的头像 发表于 10-11 14:17 197次阅读

    NetApp数据恢复NetApp存储误删除数据恢复案例

    某公司一台NetApp存储,该存储中有24块磁盘。 工作人员误删除NetApp存储中一个文件夹,文件夹中有非常重要的数据数据
    的头像 发表于 08-12 13:35 268次阅读
    <b class='flag-5'>NetApp</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>NetApp</b>存储<b class='flag-5'>误删除</b>的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    Oracle数据恢复—Oracle删除数据不用怕!这些数据恢复方法了解一下

    相信有很多oracle数据库用户都遇到过在操作Oracle数据库时误删除某些重要数据的情况,这个时候如果数据库没有备份且
    的头像 发表于 07-19 16:40 514次阅读

    服务器数据恢复误删除KVM虚拟机的数据恢复案例

    1台服务器,Linux操作系统+EXT4文件系统,部署了数台KVM虚拟机,每台虚拟机包含一个qcow2格式的磁盘文件,和一个raw格式的磁盘文件。 工作人员操作失误删除了3台服务器上的KVM虚拟机,需要恢复raw格式的磁盘文件。
    的头像 发表于 06-17 15:10 355次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>误删除</b>KVM虚拟机的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复—KVM虚拟机raw格式磁盘文件数据恢复案例

    : 工作人员操作失误删除了服务器上的3台KVM虚拟机,虚拟机中运行数据库,需恢复误删除虚拟机中raw格式的磁盘文件。
    的头像 发表于 05-17 13:33 443次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—KVM虚拟机raw格式磁盘文件<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    NetApp数据恢复—WAFL文件系统下误删除数据数据恢复案例

    某公司NetApp存储设备,人为误操作导致NetApp存储内部分重要数据删除,该NetApp存储采用WAFL文件系统,底层是由多块硬盘组成
    的头像 发表于 05-13 10:50 370次阅读

    Netapp数据恢复Netapp存储中卷被误删除数据恢复案例

    NetApp存储数据恢复环境: NetApp FAS某型号存储,该NetApp存储中有96块扇区大小是520字节的SAS硬盘。存储中的
    的头像 发表于 04-18 15:52 419次阅读
    <b class='flag-5'>Netapp</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>Netapp</b>存储中卷被<b class='flag-5'>误删除</b>的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    NetApp数据恢复NetApp存储中的卷丢失的数据恢复案例

    NetApp存储数据恢复环境: 北京某公司的一台NetApp某型号存储,通过96块磁盘组建了两组存储池,这2组存储池互为镜像。存储池内划分卷并映射到ESXI作为
    的头像 发表于 03-07 15:42 411次阅读
    <b class='flag-5'>NetApp</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>NetApp</b>存储中的卷丢失的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    小米电脑数据恢复的常用方法、工具和步骤

    、工具和步骤。 一、 数据恢复方法: 垃圾箱恢复:当我们删除文件时,它们通常被送往电脑的垃圾箱,我们可以在垃圾箱中找回已删除的文件。因此,在
    的头像 发表于 01-25 11:10 2266次阅读

    NetApp数据恢复NetApp存储误操作删除lun数据恢复案例

    NetApp数据恢复环境: NetApp某型号存储,存储中有数十块SAS硬盘,该型号NetApp存储硬盘是扇区大小是520字节。存储中的
    的头像 发表于 01-11 11:40 470次阅读
    【<b class='flag-5'>NetApp</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>】<b class='flag-5'>NetApp</b>存储误操作<b class='flag-5'>删除</b><b class='flag-5'>lun</b>的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    Netapp存储数据恢复案例

    某单位一台Netapp存储,该Netapp存储内共有数十块SAS硬盘。 工作人员误操作删除Netapp存储中12个lun
    的头像 发表于 01-04 15:26 441次阅读
    <b class='flag-5'>Netapp</b>存储<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例