服务器崩溃 重启后发现无法进入系统故障的数据恢复

服务器环境:
Windows操作系统
zfs文件系统
32块磁盘分为4个组
热备盘全部启用
三组RAIDZ作为子设备

故障描述:
正常运行的时候突然崩溃
排除断电、进水、异常操作、机房不稳定等外部因素
重启无法进入系统

数据恢复流程:
1、重组ZPOOL,追踪数据入口
手工截取事务块数据,编写程序获取最大事务号入口:

获取到文件系统入口后,编写数据指针解析程序进行地址解析:

获取到文件系统入口点在各磁盘分布情况后,开始手工截取并分析文件系统内部结构,入口分布所在的磁盘组无缺失盘,可直接提取信息。根据ZFS文件系统的数据存储结构顺利找到客户映射的LUN名称,进而找到其节点。
2、编写数据提取程序并运行
存储中的ZFS版本与开源版本有较大差别,无法使用公司原先开发的解析程序进行解析,所以重新编写了数据提取程序。

 

一番努力过后,包括和客户多次沟通,最后提取完成。验证数据,确定文件数量与系统自动记录的文件个数相差极小,丢失文件可能是最新生成还未刷新到磁盘。验证文件可用性,文件全部可正常打开,服务器数据恢复成功。

原文地址:https://www.cnblogs.com/frombyte/p/15629883.html