一次 Linux 下 testdisk+gdisk 恢复 XFS 文件系统及数据的经历
硬盘之前状况,用 gdisk 进行硬盘分区( SATA 标准, 3.6T 容量), 1.6T+2.0T两个
分区,然后用 mkfs.xfs 格式化分区,最后结果就是, GPT 分区表 +两个 XFS 文件系
统的硬盘 (/dev/sdb,/dev/sdb1,/dev/sdb2)
我已无法确定引起这次硬盘错误的原因,但我确实这么做过:
原因一,从另一个硬盘的/home 挂载点复制了大量数据到/dev/sdb1,然后我就将硬盘的
数据线和电源线都拔掉了 ,这个动作在系统运行和关闭的两种情况下都做过 ,(SATA
硬盘是否安全的支持热插拔?)
原因二,在这次准备复制数据的之前,我没有将硬盘固定,也没有平放在台面(有一点斜
度),然后开机 ,(胡乱的猜想着斜坡加载技术)
下面进入正题 :
1,硬盘错误引起分区无法读取,挂载,开始纳闷哪里出了问题
2 ,运行gdisk -l /dev/sdb,显示如下
有警告信息及注意事项,虽然这里的标记 GPT:damaged 说明 GPT 有问题,但最后还
是显示出了有分区的信息存在,(GPT 分区表信息应该没有彻底损坏,不然怎么读取到
两个分区的信息的呢),两个分区里 Code 标记都变成了 0700 (Microsoft basic
data),正常的应该是 8300 (Linux filesystem),这个标记应该说明的是 XFS 文件