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

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

3天内不再提示

Netapp数据恢复—Netapp存储误删除lun如何恢复数据?

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

扫码添加小助手

加入工程师交流群

Netapp数据恢复数据恢复环境&故障:
一台Netapp存储中有72块SAS硬盘,管理员误操作删除了12个lun。

Netapp数据恢复过程:
1、将故障Netapp存储中所有磁盘编号后取出。硬件工程师检测后没有发现有硬盘存在硬件故障,都可以正常读取。将所有硬盘以只读方式进行扇区级全盘镜像。镜像完成后将所有磁盘按照标记原样还原到原存储中。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件对分析所有磁盘底层数据,找到了盘头位置的超级块,分析超级块信息获取到磁盘组的起始块信息、磁盘组名称、逻辑组起始块号、raid编号等基本信息。
分析超级块:

wKgaomUo-bKAW0lbAAGM4LTW7To490.png

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



分析后得知:每个数据块占8个扇区,数据块后附加64字节数据块描述信息。根据数据块描述信息找到校验盘。
校验块描述信息样例:

wKgZomUo-8aAGm7UAAEHPMpjN4Q599.png

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


3、依据每块磁盘8号扇区的磁盘信息以及磁盘末尾的RAID盘序表确定盘序。
分析盘序表:

wKgZomUo-8yAdjHCAAPYVbskxDQ991.png

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


Tips:Netapp的节点分布在数量众多的数据块内,在数据块内被统一组织为节点组。每个节点组的前64字节记录系统数据,后面的192字节作为一项来记录各个文件节点。
点样例图:

wKgaomUo-9OABA-LAAL9VfbltAY886.png

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



4、根据更新序列值获取到最新节点。解析节点中节点类型、逻辑块号、文件数量、文件大小、所占块数量和数据指针。获取节点在节点文件中的逻辑块号,从0开始计数。
5、获取目录项,并根据目录项节点编号找到对应节点。
节点截图:

wKgaomUo-9qAM2eXAAG38XmH3cM110.png

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


6、北亚企安数据恢复工程师编写工具扫描节点信息。
扫描服务器节点信息:

wKgZomUo--CACrCcAAC4SRIqvHE117.png

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


节点扫描类:

wKgZomUo--aALyH4AAI8D28dE-E157.png

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


节点扫描流程:

wKgZomUo--2AKOVAAAEbzDDac4g629.png

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


循环扫描完毕之后将所有扫描到的MBFP(元文件的节点标志)、MBFI(用户文件的节点标志)和DOC数据块分别写入到三个文件内,用于后续处理。
MBFI导入数据库流程:

wKgaomUo-_aABJGAAALrYf9_ZeY415.png

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


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

wKgZomUo-_2AWRRZAAI-0GlMeqY537.png

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


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

wKgaomUo_AOAPHs9AAJa5P2cYoI840.png

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


7、获取到要提取的文件的Node之后,开始提取块设备文件。
提取块设备文件:

wKgZomUo_AyAMNnCAAICLZv8aF4564.png

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


初始化完毕后,开始提取文件的各级MAP。本案例中提取的文件大小均大于1T,MAP层级为4,所以需要提取4次。第一级MAP默认只占用1个块,可以在程序内直接提取;后三级MAP在GetAllMap函数内提取。
8、由于NetApp使用JBOD组织LVM,用块号除以每块磁盘上的块数就可得到当前块所在的磁盘序号;块号取余块数得到数据块在此磁盘上的物理块号;物理块号乘以块大小得到数据块偏移位置。
9、由于本案例中块设备lun采用的是jfs2文件系统。因此需要通过解析jfs2文件系统来提取其中的数据库备份文件。
解析文件系统块信息:

wKgZomUo_BOAbP1bAAFubJgxfMM569.png

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



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

wKgaomUo_BqAYINeAAK-oedPzpE285.png

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



10、解析由数个lun组成的oralce ASM文件系统,提取其中的数据库文件。
添加lun:

wKgZomUo_CGAP8-cAAQkW2LXskE074.png

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



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

wKgaomUo_CmAeQweAAbcezr2UD0510.png

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


Netapp数据验证及数据移交:
北亚企安数据恢复工程师对恢复出来的数据进行检测后没有发现异常。让用户方验证恢复出来的数据,经过用户方验证,确认恢复出来的数据完整有效,认可数据恢复结果。

审核编辑 黄宇

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

    关注

    10

    文章

    682

    浏览量

    18714
  • NetApp
    +关注

    关注

    0

    文章

    79

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Netapp数据恢复Netapp存储数据恢复揭秘

    某公司一台服务器中一共有72块SAS硬盘。 工作人员误操作删除了十几个lun。需要恢复服务器中的数据
    的头像 发表于 10-28 15:26 158次阅读
    <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® (NASDAQ: NTAP)今日宣布推出业界领先的全新网络韧性功能,进一步强化其“全球最安全存储”的产品优势。经升级并更名的NetApp Ranso
    的头像 发表于 10-16 13:31 175次阅读

    Mysql数据恢复—Windows Server下MySQL(InnoDB)全表误删数据恢复案例

    本地服务器,操作系统为windows server。服务器上部署mysql单实例,innodb引擎,独立表空间。未进行数据库备份,未开启binlog。 人为误操作使用Delete命令删除数据时未添加where子句,导致全表数据
    的头像 发表于 09-23 15:56 435次阅读
    Mysql<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—Windows Server下MySQL(InnoDB)全表<b class='flag-5'>误删</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

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

    工作人员不慎将一台服务器上的卷误删除,服务器上有一组raid5阵列。需要恢复误删除数据
    的头像 发表于 08-14 11:33 657次阅读
    服务器<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数据库误执行错误truncate命令如何恢复数据

    oracle数据库误执行truncate命令导致数据丢失是一种常见情况。通常情况下,oracle数据库误操作删除数据只需要通过备份恢复数据
    的头像 发表于 06-05 16:01 558次阅读
    oracle<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—oracle<b class='flag-5'>数据</b>库误执行错误truncate命令如何<b class='flag-5'>恢复数据</b>?

    分布式存储数据恢复—虚拟机上hbase和hive数据数据恢复案例

    分布式存储数据恢复环境: 16台某品牌R730xd服务器节点,每台服务器节点上有数台虚拟机。 虚拟机上部署Hbase和Hive数据库。 分布式
    的头像 发表于 04-17 11:05 477次阅读

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

    服务器数据恢复环境: 存储设备通过光纤通道将3个LUN映射到AIX小型机。通过AIX-LVM技术将物理卷(PV)构建为卷组(VG),并在卷组空间内创建2个逻辑卷(LV):oradat
    的头像 发表于 04-16 18:12 437次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—AIX小型机<b class='flag-5'>误删</b><b class='flag-5'>数据</b>如何<b class='flag-5'>恢复</b>!

    数据数据恢复——MySQL数据误删除表记录的数据恢复案例

    误操作,在用Delete命令删除数据时未添加where子句进行筛选导致全表数据删除删除后未对该表进行任何操作。
    的头像 发表于 02-22 09:44 1132次阅读
    <b class='flag-5'>数据</b>库<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>——MySQL<b class='flag-5'>数据</b>库<b class='flag-5'>误删除</b>表记录的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    NetApp革新块存储,赋能现代工作负载

    智能数据基础设施领域的领先企业NetApp®,近日宣布对其企业存储产品组合进行了重大更新,以更好地满足现代工作负载的多样化需求。此次更新重点扩充了NetApp ASA A系列,推出了一
    的头像 发表于 02-17 10:07 609次阅读

    服务器数据恢复—LINUX系统删除/格式化的数据恢复可行性分析

    Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊
    的头像 发表于 12-06 13:52 721次阅读

    云硬盘挂载到新服务器,怎么恢复数据

    将云硬盘挂载到新服务器并恢复数据,需先获取挂载权限和配置信息,登录新服务器管理控制台选择并挂载云硬盘到指定点,检查挂载状态后访问挂载点恢复数据,若数据以快照形式存在则需先创建云盘。恢复
    的头像 发表于 12-01 22:27 946次阅读

    Sybase数据恢复—Sybase数据库无法启动怎么恢复数据

    数据数据恢复工程师经过检测,发现Sybase数据库出现故障的原因是:异常断电造成Sybase数据库无法回写正常
    的头像 发表于 11-30 16:45 825次阅读
    Sybase<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—Sybase<b class='flag-5'>数据</b>库无法启动怎么<b class='flag-5'>恢复数据</b>?

    服务器数据恢复—raid5阵列崩溃导致上层lun无法正常使用的数据恢复案例

    服务器存储数据恢复环境: 某品牌MSA2000FC存储中有一组由7块盘组建的RAID5阵列,另外还有1块硬盘作为热备盘使用。 基于RAID5阵列划分的几个
    的头像 发表于 11-25 14:04 825次阅读
    服务器<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—raid5阵列崩溃导致上层<b class='flag-5'>lun</b>无法正常使用的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

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

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