ext2 fs inode 错误

ext2 fs inode 错误

我在执行 e2fsck 时遇到“块位图差异”。我卸载该分区后执行 e2fsck。我的问题是:“位图差异”到底是什么?区别在于什么与什么之间?

谢谢你!

~ # e2fsck -c /dev/sda1
e2fsck 1.42.5 (29-Jul-2012)
ext2fs_check_if_mount: Can't check if filesystem is mounted due to missing mtab file while determining whether /dev/sda1 is mounted.
Checking for bad blocks (read-only test): done
/dev/sda1: Updating bad block inode.
Pass 1: Checking inodes, blocks, and sizes
Inode 81738, i_blocks is 16, should be 8.  Fix<y>? yes
Pass 2: Checking directory structure
Entry 'collector_prof.txt' in /etc/idirect (81624) has deleted/unused inode 81762.  Clear<y>? yes
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences:  -(346115--346116)
Fix<y>? yes
Free blocks count wrong for group #10 (32124, counted=32126).
Fix<y>? yes
Free blocks count wrong (435610, counted=435612).
Fix<y>? yes
Inode bitmap differences:  -81762
Fix<y>? yes
Free inodes count wrong for group #10 (7998, counted=7999).
Fix<y>? yes
Free inodes count wrong (121381, counted=121382).
Fix<y>? yes

/dev/sda1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda1: 1018/122400 files (0.1% non-contiguous), 53599/489211 blocks

答案1

谷歌搜索后,我发现除了 Theodore Tso 以外没有人在谈论这个问题:

http://www.redhat.com/archives/ext3-users/2008-October/msg00024.html

相关部分:

This means the filesystem noticed some discrepancy (for example, when
freeing a block, it noticed that the block bitmap already showed the
block as being not in use, which should never happen and indicates
filesystem corruption).

“块位图”只是一种磁盘上的数据结构,指示特定组中的哪些块已分配,哪些未分配。在这一点和西奥多的解释之间,我想说它可能发现一个正在被索引节点使用的块,而该索引节点在该块组的位图中没有被标记为这样。

相关内容