解决Reiserfs文件系统损坏的问题我们是认真的
一、故障设备信息
服务器 X3850服务器
硬盘类型 SAS容量 146G 4块硬盘组成RAID5
文件系统 Reiserfs
二、 Reiserfs文件系统故障分析
1、经过分析发现了之前的硬盘数据组织结构是由一个不到100M的boot分区后接一个271G的LVM卷之后是2G的swap分区。 LVM卷中直接划分了一个re i s e rfs文件系统作为根分区。
2、用户在使用的过程中系统遭遇了未知的原因而瘫痪经过系统的冲撞以后发现整个RAID逻辑卷变成了前面2G的boot与swap分区后接271G的LVM卷 LV M卷中文件系统位置有个空的re i s e rfs超级块。
3、我们这次要恢复的数据就是原来271G中文件系统里的所有用户数据这些数据包含了数据库、 网站程序与网页、单位OA系统里的所有办公文档。
三、 Reiserfs文件系统解决方案
1、先通过对全盘reiserfs树节点之间的关联确定了原来的reiserfs分区位置发现原来存储数据的文件系统的前2G数据已经被覆盖判断应该是用户在安装系统时错误地初始化了分区结构所以装好系统无法导入LVM卷而做过reiserfsck试图修复。
2、因re i s e rfs文件系统对文件系统里所有的文件(含目录)线性化后再以文件key生成B+树树不断增加节点会导致树的结构整体拉展后向整个磁盘的数据区做平滑迁移。这样一来顶级节点通常不会放在文件系统的最前面。因根目录的文件KEY号通常是最小的所以从空间上看前2G中存储最多的应该是从根起始路径最近的key节点。
3、这样用户数据因目录层次较深节点存在的可能性很高。前2G覆盖的数据已经无法恢复只能希望不要恰好覆盖用户数据。因文件系统前面对整个
树的索引全丢失加上re i s e rfs的树概念设计得很抽象重搭建树会很困难。
4、我们通过自主程序在整个原文件系统区域进行key节点扫描并将所有节点导出。然后通过自主程序对所有叶节点重新排序、过滤(去掉之前删除文件丢弃的节点) 重新生成二级、三级、四级等叶节点。选择分区前面2G空间做为新树的结构区并生成对应地址信息。
5、应对目录命名问题如遇到原树路径某节点丢失的情况对其用自定义的key节点编号命名如无法确定其父目录暂加入/otherfi les下。根据上面对生成树索引信息写入特定位置再根据这些信息生成超级块设置clear标志。在suse虚拟机下创建快照挂载修复好的卷已经可以看到文件了。 (注虚拟机与快照的目的为了操作可加溯 同时因bitmap等元数据不影响数据未做修正故挂载前不可做re i s e rfs c k) 。
6、在修复用的s use虚拟机下挂载用于copy数据的目标硬盘 mkfs后将所有数据cp到目标盘。用户通过find命令整理所需数据修正部分目录文件位置与名称。部分丢失的散文件按大小与文件头标志查找找到后移动及重命名。
四、 Reiserfs文件系统数据恢复结果
经工程师处理分析后数据已成功恢复且均可正常使用至此数据恢复工作结束。
CloudCone发布了2021年的闪售活动,提供了几款年付VPS套餐,基于KVM架构,采用Intel® Xeon® Silver 4214 or Xeon® E5s CPU及SSD硬盘组RAID10,最低每年14.02美元起,支持PayPal或者支付宝付款。这是一家成立于2017年的国外VPS主机商,提供VPS和独立服务器租用,数据中心为美国洛杉矶MC机房。下面列出几款年付套餐配置信息。CPU:...
a400互联是一家成立于2020年商家,主营美国机房的产品,包括BGP线路、CN2 GIA线路的云服务器、独立服务器、高防服务器,接入线路优质,延迟低,稳定性高,额外也还有香港云服务器业务。当前,全场服务器5折,香港VPS7折,洛杉矶VPS5折,限时促销!A400互联官网:https://a400.net/优惠活动全场独服永久5折优惠(续费同价):0722香港VPS七折优惠:0711洛杉矶VPS五...
农历春节将至,腾讯云开启了热门爆款云产品首单特惠秒杀活动,上海/北京/广州1核2G云服务器首年仅38元起,上架了新的首单优惠活动,每天三场秒杀,长期有效,其中轻量应用服务器2G内存5M带宽仅需年费38元起,其他产品比如CDN流量包、短信包、MySQL、直播流量包、标准存储等等产品也参与活动,腾讯云官网已注册且完成实名认证的国内站用户均可参与。活动页面:https://cloud.tencent.c...