当前位置: 首页 > article >正文

服务器数据恢复—SAN环境中LUN映射错误导致文件系统一致性出错的数据恢复案例

服务器数据恢复环境:
SAN光纤网络环境,存储由一组6块硬盘组建的RAID6阵列构成,划分为若干LUN,MAP到跑不同业务的SUN SOLARIS操作系统服务器上。

服务器故障&分析:
因为业务需要,用户在该光纤存储环境中新增一台SUN SOLARIS操作系统服务器。将存储中的某个LUN映射到新增的服务器上,但是映射的这个卷之前已经MAP到SOLARIS生产系统上的某个LUN上了。因为未及时察觉这个问题,新增服务器已经对该LUN进行部分初始化操作。
在SOLARIS操作系统层面磁盘报错,重启后卷无法挂载。联系SUN工程师检测后,执行了fsck操作。操作完成后虽然文件系统可以挂上,但是发现大量文件丢失或文件大小变为0,尤其是最新数据破坏严重。
此类故障在SAN光纤网络环境下较为常见,大多数情况下是人为设置不当造成的,此故障也是如此。正常情况下,SAN分配出来的LUN是独占的。LUN如果同时被几个操作系统控制就会导致写操作不互斥,文件系统一致性出错。
如果要恢复这类故障中的丢失/破坏的数据,需要深入文件系统观察各结构的破坏情况。本案例的文件系统是UFS,所以对任何一个需要恢复的文件来说,需要优先考虑目录信息、节点、数据区这几个结构是否正常。如果这3个结构均正常,数据可完整恢复。但多数情况下,执行fsck操作后INODE会被清除,即使留下目录信息,也无法与数据一一对应。这种情况下只能参考文件内部格式进行类型式的恢复。

服务器数据恢复过程:
1、以只读方式将故障卷完整镜像。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始数据造成二次破坏。
2、基于镜像文件分析文件系统,分析发现需要恢复的文件的inode已经被全部清除,无法恢复,只能按照文件类型进行处理。
3、分析需要恢复的特定文件,发现采用vfs公文系统的索引文件具有很强的类型特征,且文件中包含目录信息。
4、按照vfs公文系统的索引结构特征,北亚企安数据恢复工程师编写程序提取数据,提取后根据特征重新命名。
5、按照类型恢复数据文件。恢复完成后由用户方根据索引文件对数据文件进行重新整理。
6、经过数据恢复工程师的努力,目录索引文件基本上全部恢复出来,大部分数据文件恢复成功。对于极小部分无法恢复的文件,用户根据目录索引文件重新向其他部门采集。用户认可数据恢复结果。


http://www.kler.cn/a/379372.html

相关文章:

  • 十四届蓝桥杯STEMA考试Python真题试卷第二套第五题
  • 2024江苏省网络建设与运维省赛Linux(十) mariadb 服务
  • 代码随想录算法训练营第二十一天|669修剪二叉搜索树 、108将有序数组转换为二叉搜索树、538把二叉搜索树转换为累加树
  • 大学适合学C语言还是Python?
  • 利用EasyExcel实现简易Excel导出
  • C++和OpenGL实现3D游戏编程【连载17】——着色器进阶(附源码)
  • 【neo4j】 图数据库neo4j cypher单一语句 optional 可选操作的技巧
  • “代码世界的必修课:Git完整指南“(3)
  • JVM基本结构和垃圾回收机制
  • 小白从零开始学c++之继承对象的内存空间
  • nodejs入门教程8:nodejs EventEmitter
  • 《Java 实现希尔排序:原理剖析与代码详解》
  • 三维测量与建模笔记 - 2.2 射影几何
  • Hive数据库操作语法
  • Java-I/O框架10:File类、文件操作
  • docker部署Flask+Vue3项目
  • Leetcode328奇偶链表,Leetcode21合并两个有序链表,Leetcode206反转链表 三者综合题
  • C++游戏开发前景讨论
  • [算法初阶]第二集 滑动窗口(已完结)
  • 【NCRE】全国计算机一级必刷选择题(真题476道)
  • 第三十三章 Vue路由进阶路由模块封装
  • 【LeetCode:153. 寻找旋转排序数组中的最小值 + 二分】
  • sql将查到的所有id,拼接成字符串,用逗号隔开,并排序
  • 路由器中怎麼設置代理IP?
  • 微服务设计模式 - 发布订阅模式(Publisher Subscriber Pattern)
  • [java][高级]FilterListenerAjax