UNIX操作系统XFS文件系统恢复方法
客户描述:系统重启突然,进入系统发现文件系统无法挂载。使用mount命令提示 mount: wrong fs type, bad option, bad superblock on /dev/sdb
前两天,恢复了一个XFS文件系统损坏的RAID1。 客户描述:系统重启突然,进入系统发现文件系统无法挂载。使用mount命令提示 mount: wrong fs type, bad option, bad superblock on /dev/sdb1, or too many mounted file systems. 技术积累: XFS文件系统前面几个扇区分别是 对于扇区开始分别为 XFSB XAGF XAGI ABTB ABTC IABT 然后是 INA。 检测:用winhex查看,发现MBR正常,找到分区起始位置,发现XFSB标记丢失,看内容像是inode节点,估计是文件系统异常造成的数据写入错误,正常的superblock被覆盖。没有superblock当然没法正常挂载了。磁盘63-70扇区数据都不正常。71扇区是ABTB 即 AG Free Space B+trees the block offset B+tree,往下数据正常。所以需要恢复 63-70这几个扇区。还好XFS对这部分数据是有备份信息的,用Winhex 搜索XFSB搜索备份。 处理过程:找到superblock备份,贴回原来位置(63-70扇区)。进入系统挂载(sudo mount /dev/sdb1 /mntunix文件系统,发现提示superblock错误。mount: wrong fs type, bad option, bad superblock on /dev/sdb1, or too many mounted file systems. 继续分析,可能是文件系统本身已经存在问题了了,尝试用系统自带文件系统修复工具fsck。全盘备份,用文件系统自检工具,检测并修复(fsck.xfs /dev/sdb1),大概半小时,完成后挂载,成功,基本上全部恢复。 0扇区MBR 显示正常正常 第一个分区 找到63扇区 数据不正确,这里应该是超级块,以 XFSB开头 71扇区 XFS文件系统ABTB结构 ABTB数据正常 8593815扇区找到备份 技术总结: 1、已经接到两个这种情况的单子了,而且都是磁盘空间使用超过95%估计是Linux系统XFS模块有问题,系统使用容量太大时计算有问题,或者是数据回写出错; 2、做好备份工作 3、XFS还需要深入研究 4、fsck有时候是可以用来恢复数据的,不过要备份好。 (编辑:通辽站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |