解决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经常性有特价促销VPS放出来,每次的数量都是相当有限的,为了方便、及时帮助大家,主机测评这里就做这个cloudcone特价VPS补货专题吧,以后每次放货我会在这里更新一下日期,方便大家秒杀!官方网站:https://cloudcone.com/预交费模式,需要充值之后方可使用,系统自动扣费!信用卡、PayPal、支付宝,均可付款购买!为什么说cloudcone值得买?cloudc...
RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...
vpsdime上了新产品系列-Windows VPS,配置依旧很高但是价格依旧是走低端线路。或许vpsdime的母公司Nodisto IT想把核心产品集中到vpsdime上吧,当然这只是站长个人的猜测,毕竟winity.io也是专业卖Windows vps的,而且也是他们自己的品牌。vpsdime是一家新上来不久的奇葩VPS提供商,实际是和backupspy以及crowncloud等都是同一家公司...