事情的起因是由于机房的管理员按照规定对机房进行定期维护,结果由于操作失误导致一台某品牌的服务器设备(raid5磁盘阵列)中的分区丢失,丢失的分区中存储了该公司所有生产业务数据,业务因此瘫痪。经数据恢复工程师检测后发现由于该服务器文件系统头部的超级块及部分节点、目录项丢失,根据超级块备份及文件系统中的目录树结构,对超级块进行修复还原,对丢失的节点、目录项进行修补、重构之后,文件系统可以完整恢复。
1.数据恢复工程师接到客户服务器后首先将所有硬盘通过镜像的方式被分到数据恢复专用存储上,备份成功后将客户的原服务器交还客户。
2.使用服务器数据恢复工具对客户的备份数据进行解析,(注意,该数据恢复工具目前为内部使用,也可借助市面上其他同类数据恢复辅助工具搜索file id进行分析阵列)经过解析得到磁盘阵列的盘序规律、条带大小等基础信息,由于此操作具有一定风险,切不可在原设备上进行操作。
3.通过对备份数据进行解析可以直接得到原raid阵列的基本信息,工程师利用这些信息重组raid5磁盘阵列,然后定位xfs文件系统的分区起始位置;(注:XFS INODE number:变长的位数表示,三部分组成:起始块组号+起始块号+块内INODE号。起始块号与块内INODE号的位长由SUPERBLOCK中参数指定。)
4.服务器数据恢复工程师对该文件系统完整性和文件系统正确性进行校验,结果显示xfs文件系统头部超级快丢失、部分节点丢失、目录项丢失。
5.根据超级块备份及文件系统中的目录树结构,对超级块进行修复还原(过程略)。对xfs文件系统中丢失的节点及目录项进行修复;对丢失的节点、目录项进行修补、重构。
6.上述修复工作完成后编写一个小程序对文件系统进行解析和数据提取即可。
由于数据丢失之后客户未对存储做任何写入的破坏性操作,所以数据及文件系统信息绝大部分保留完整,服务器数据100%恢复。