无法使用fsck解决数据损坏警告

为了为我的文件系统创build一个连续的空间,我在sda1创build了一个新的EFI系统分区,以便我可以从sda5上的当前分区迁移它。 这个举动本身是成功的,除了一个警告说:

内核:FAT-fs(sda1):卷未正确卸载。 有些数据可能已损坏。 请运行fsck

当我第一次创buildEFI分区时,我没有注意到已经存在了两天的警告。 我卸载文件系统并执行文件系统检查,如下所示:

# umount /dev/sda1 # fsck -V /dev/sda1 fsck from util-linux 2.24 [/sbin/fsck.vfat (1) -- /boot/efi] fsck.vfat /dev/sda1 fsck.fat 3.0.24 (2013-11-23) 0x25: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt. 1) Remove dirty bit 2) No action ? 1 Leaving filesystem unchanged. /dev/sda1: 14 files, 2435/51145 clusters 

我认为去掉脏点就可以解决这个问题。 但事实并非如此。 实际上应该做什么?

这很愚蠢。 我发现自己再次回答我自己的问题。 它说,

保持文件系统不变。

暗示没有什么改变。 这实际上意味着键入1然后在fsck提示符下按enter键 不起作用 。 无论如何,下面的工作:

 # fsck.vfat -v -a -w /dev/sda1 

上述命令自动将更改写入磁盘。 如果有人能告诉我这是fsck一个bug还是由于别的原因,那将是非常好的。

我跑了一个巨大的同步,它被严重打断,导致很多不可移动的文件(“只读文件系统”)。 唯一允许我recursion移除的命令是

sudo fsck.vfat -v -w -r / dev / sda1