Netapp数据恢复—Netapp存储误删除lun的数据恢复案例

简介: Netapp存储数据恢复环境:北京某公司一台netAPP存储,72块SAS硬盘划分了若干个lun。Netapp存储故障:工作人员误操作删除了12个lun。

Netapp存储数据恢复环境:
北京某公司一台netAPP存储,72块SAS硬盘划分了若干个lun。

Netapp存储故障:
工作人员误操作删除了12个lun。

Netapp存储数据恢复过程:
1、将故障存储中所有磁盘编号后取出,以只读方式做全盘镜像后按照编号还原到原存储中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析底层数据,找到盘头位置的超级块。北亚企安数据恢复工程师通过分析超级块信息获取磁盘组的起始块信息、磁盘组名称、逻辑组起始块号、raid编号等信息。
分析超级块:
1副本.jpg

通过分析得知每个数据块占8个扇区,数据块后附加64字节数据块描述信息。根据这些信息判断出作为校验盘的磁盘,在后续的数据恢复过程中需要踢出这些磁盘。
校验块描述信息样例:
2副本.jpg

3、依据每块磁盘8号扇区的磁盘信息以及磁盘末尾的RAID盘序表确定盘序。首先确定各个磁盘所属aggr组,然后再判断组内盘序。数据指针跳转时不考虑校验盘,只需要确定数据盘的盘序即可。
分析盘序表:
3副本.jpg

Netapp的节点分布在数量众多的数据块内,在数据块内又被统一组织为节点组。每个节点组的前64字节记录一些系统数据,之后用192字节为一项,记录各个文件节点。节点根据用户级别可分为两类:系统文件节点(MBFP)和用户文件节点(MBFI),数据恢复一般只需要MBFI节点组。
服务器节点样例图:
4副本.jpg

头部信息64字节,此头部为数据文件的节点文件块头部,大小为64字节。
根据更新序列值获取到最新节点。解析节点中节点类型、逻辑块号、文件数量、文件大小、所占块数量和数据指针。
获取节点在节点文件中的逻辑块号,从0开始计数。

4、获取目录项,根据其节点编号找到对应节点。
获取服务器内对应节点截图:
5副本.jpg

5、通过北亚企安自主开发的程序提取服务器数据。
a、扫描节点信息。
扫描服务器节点信息:
6副本.jpg

节点扫描类:
7副本.jpg

节点扫描程序完整流程:
8副本.jpg

循环扫描完毕之后将所有扫描到的MBFP、MBFI和DOC数据块分别写入到三个文件内,用于后续处理。
b、将节点信息导入到数据库。
此模块主要负责将ScanNode扫描到的MBFI和MBFP、Dir存入数据库以备后续使用。
MBFI导入数据库整体流程:
9副本.jpg

函数执行完毕后查看数据库,得到如下信息:
节点导入信息:
10副本.jpg

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

c、提取文件。
在获取到要提取的文件的Node之后,开始提取块设备文件。
提取块设备文件:
12副本.jpg

初始化完毕后,开始提取文件的各级MAP,在本次提取过程中文件大小均大于1T,MAP层级为4,所以需要提取4次。第一级MAP默认只占用1个块,所以在程序内直接提取,后三级MAP在GetAllMap函数内进行提取。通过块号计算数据块位置时,由于NetApp使用JBOD组织LVM,直接用块号除以每块磁盘上的块数可得到当前块所在的磁盘序号(计算机整数除法,丢弃小数部分);再使用块号取余块数,得到数据块在此磁盘上的物理块号,物理块号乘以块大小,得到数据块偏移位置。

6、解析块设备文件系统。
故障存储块设备中5T大小的lun使用的是aix小机的jfs2文件系统。因此要解析jfs2文件系统,提取里面的数据库备份文件。
a、找到记录lvm描述信息的扇区,解析pv大小和pv序号;找到vg描述区,解析lv数和pv数;找到pv描述区,解析pp序号和pp数。
解析文件系统块信息:
13副本.jpg

LV类型及LV挂载信息区域:
14副本.jpg

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

解析asm文件系统,提取出数据库文件:
16副本.jpg

7、对提出的数据进行检测,没有发现异常。交由用户方进行验证,经过用户方相关工作人员的共同验证,确认恢复出来的数据完整有效。本次数据恢复工作完成。

相关文章
|
18天前
|
传感器 人工智能 自然语言处理
智能体与具身智能区别详解:技术架构、应用场景全对比
本文深入解析智能体与具身智能的核心差异,从技术架构、应用场景到发展趋势全面对比。智能体聚焦数字空间的自主决策,适用于客服、数据分析等场景;具身智能依托物理载体,专注现实世界交互,广泛用于机器人、智能制造等领域。文章结合权威数据与案例,为企业AI战略选型提供清晰决策框架,助力把握未来智能化方向。
324 0
|
11天前
|
数据采集 人工智能 监控
2025年数据治理选型指南,值得推荐的数据中台系统
2025年,数据治理成为企业数字化转型核心。本文深度解析瓴羊Dataphin、华为DataArts Studio、字节Dataleap、Informatica与Talend五大主流工具,涵盖其背景、能力、优势及典型应用,助力企业明晰选型路径,实现数据资产化、治理智能化,释放数据要素价值。
|
程序员 Linux Ruby
Mac安装并使用telnet命令操作
Mac安装并使用telnet命令操作
17338 1
Mac安装并使用telnet命令操作
|
机器学习/深度学习 网络协议 算法
IGP高级特性(一)
IGP高级特性(一)
|
Prometheus 监控 Cloud Native
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
|
机器学习/深度学习 自然语言处理
差分Transformer竟能消除注意力噪声,犹如降噪耳机
差分Transformer是一种创新的自然语言处理模型,通过计算两个独立softmax注意力图之间的差异来消除注意力噪声,提高信息检索和生成的准确性。该模型在语言建模、长文本建模等任务中表现出色,但计算复杂度较高且参数数量较多。
321 11
|
12月前
|
传感器 测试技术 定位技术
HarmonyOS Next 模拟器安装与探索
HarmonyOS 5 的发布带来了许多新特性,尤其是 HarmonyOS Next 模拟器。本文将带你一步步了解如何安装和使用这个强大的工具,帮助你更好地进行开发,加速项目进展。通过 DevEco Studio 的 Device Manager,你可以轻松创建、配置并启动模拟器,模拟真实设备的效果,支持多窗口、跨设备测试等新特性。此外,模拟器还提供了虚拟传感器、GPS 模拟、音频输入等功能,极大地方便了开发和调试过程。掌握这些功能,能让你的开发更加高效便捷。
1064 9
|
11月前
|
机器学习/深度学习 存储 人工智能
MNN:阿里开源的轻量级深度学习推理框架,支持在移动端等多种终端上运行,兼容主流的模型格式
MNN 是阿里巴巴开源的轻量级深度学习推理框架,支持多种设备和主流模型格式,具备高性能和易用性,适用于移动端、服务器和嵌入式设备。
2619 18
MNN:阿里开源的轻量级深度学习推理框架,支持在移动端等多种终端上运行,兼容主流的模型格式
|
12月前
|
人工智能 算法 搜索推荐
AI宠物 适合当代年轻人吗
在当今社会,年轻人面临巨大工作压力和社交时长受限的挑战,AI宠物应运而生。它无需实际喂养,能24小时在线互动,提供情感支持,满足现代年轻人对陪伴的需求。相较于传统宠物,AI宠物无需专门空间和额外成本,却能通过算法学习主人习惯,给予贴心陪伴。未来,AI宠物有望在心理健康辅导等领域发挥更大作用,为人们带来多元的情感体验。
|
存储 数据可视化 数据挖掘
办公软件对比:哪些平台最适合进行协作、记录进展并帮助复盘总结?
本文介绍了五款高效的办公软件——板栗看板、Toggl Plan、Redmine、Wrike和TeamGantt,它们各自具备独特功能,如灵活的看板视图、可视化任务板、多项目管理、自动化工作流及甘特图视图等,适用于不同行业和团队需求,旨在提升工作效率、优化工作流程,并为工作总结和复盘提供数据支持。
办公软件对比:哪些平台最适合进行协作、记录进展并帮助复盘总结?