微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 突然大量文件系统损坏的原因? (“root inode不是目录”)

我有一台笔记本电脑运行Maverick(非常高兴,直到昨天),配备爱国者Torx SSD;整个分区的LUKS加密;最重要的是一个lvm物理卷;然后在ext4逻辑卷的主页和root用户之上.

当我昨天尝试启动它时,它抱怨它无法挂载根文件系统.运行fsck,基本上每个inode似乎都是错误的.主文件系统和根文件系统都显示类似的问题.检查备份超级块无济于事.

e2fsck 1.41.12 (17-May-2010)
lithe_root was not cleanly unmounted,check forced.
Resize inode not valid.  Recreate? no

Pass 1: Checking inodes,blocks,and sizes
Root inode is not a directory.  Clear? no   
Root inode has dtime set (probably due to old mke2fs).  Fix? no
Inode 2 is in use,but has dtime set.  Fix? no
Inode 2 has a extra size (4730) which is invalid
Fix? no
Inode 2 has compression flag set on filesystem without compression support.  Clear? no
Inode 2 has INDEX_FL flag set but is not a directory.
Clear HTree index? no
HTREE directory inode 2 has an invalid root node.
Clear HTree index? no
Inode 2,i_size is 9581392125871137995,should be 0.  Fix? no
Inode 2,i_blocks is 40456527802719,should be 0.  Fix? no
Reserved inode 3 (<The ACL index inode>) has invalid mode.  Clear? no
Inode 3 has compression flag set on filesystem without compression support.  Clear? no
Inode 3 has INDEX_FL flag set but is not a directory.
Clear HTree index? no
....

文件系统中运行字符串,我可以看到那里有文件名和用户数据.我确实有足够好的备份(触摸木头),不值得为了拉回单个文件而值得一提,尽管我可能会在重建之前保存未加密磁盘的图像,以防万一.

smartctl没有显示任何错误,内核也没有记录.在交换lv上运行写模式坏块也没有发现问题.因此磁盘可能会失败,但不是显而易见的.

在这一点上,我基本上,正如他们所说,fscked?回到重新安装,可能在磁盘上运行坏块,然后从备份恢复?甚至似乎没有足够的数据来提交有意义的错误……

我不记得上次使用它时这台机器崩溃了.

在这一点上,我怀疑一个错误或内存损坏导致它在上次运行时在磁盘上写入垃圾,或者是SSD的某种微妙的故障模式.

您认为这会导致什么?还有别的吗?

解决方法

您的第一个超级块似乎已损坏.有超级块的许多副本,因为它是文件系统中最关键的部分.您可以使用-b选项尝试使用e2fsck来检查超级块的不同副本是否具有正确的信息.检查 e2fsck(8)获取有关-b选项的更多信息,以及如何确定其他超级块的位置.

IIRC,根目录只有一个副本,因此如果它被损坏,则必须重新创建,为空.最初位于根目录下的目录将显示在/ lost found中,您必须从那里重新定位它们.

Inode表通过分区传播.你不可能失去所有这些.可恢复的,如果他们的文件不能重新定位到他们的原始目录,他们也将结束/丢失找到.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐