我的笔记本电脑上安装了 Xubuntu 16.10 并进行了最新更新。我还安装了 Debian 8.0、Manjaro 和 Windows 7。所有这些操作系统都由 Xubuntu 的 GRUB 引导加载程序控制。我使用 Linux 发行版完成所有任务,但偶尔会切换到 Windows 7 执行特定任务。在过去两周内,我注意到了一些奇怪的行为。每当我启动 Windows 操作系统、执行任务并重新启动 Xubuntu 时,我都会看到此消息:
^[[[B^[[[B^[[[Bfsck.ext4: Superblock checksum does not match superblock while trying to open /dev/sda2
/dev/sda2:
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>
fsck exited with status code 8
[ 9.100397] EXT4-fs (sda2): VFS: Found ext4 filesystem with invalid superblock checksum. Run e2fsck?
mount: mounting /dev/sda2 on /root failed: Bad message
mount: mounting /dev on /root/dev failed: No such file or directory
mount: mounting /run on /root/run failed: No such file or directory
run-init: current directory on the same filesystem as the root: error 0
Target filesystem doesn't have requested /sbin/init.
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
run-init: current directory on the same filesystem as the root: error 0
No init found. Try passing init= bootarg.
BusyBox v1.22.1 (Ubuntu 1:1.22.0-19ubuntu2) built-in shell (ash)
Enter 'help' for a list of built-in commands.
(initramfs)
我必须通过执行 来修复此错误e2fcsk -b 32768 /dev/sda2
。仅当我先启动 Windows 然后再启动 Xubuntu 时才会发生这种情况。
补充说明:- 我用了https://sourceforge.net/projects/ext2fsd/从 Windows 访问 Linux 分区。但是,当我第一次注意到此问题时,我已将其关闭。此外,上面列出的问题仅发生在我的 Xubuntu 分区上,而不会发生在其他 Linux 发行版上。
编辑1:-
我说关闭它,其实是想说我在启动 Windows 时从启动应用程序中删除了它。我没有卸载该软件(ext2fsd
)。这也没有解决问题。此外,正如 Rinzwind 指出的那样,我强制ext2fsd
在读写模式下工作。
答案1
Microsoft Windows 默认不识别其他文件系统。Windows 本身不可能导致该错误。
但是,您安装了ext2fsd
,这是一个用于在 Windows 中启用 EXT 分区读/写功能的工具。该软件通常作为服务运行并在启动时挂载分区,从而访问 Ubuntu 分区。
ext2fsd
可能与较新的 EXT4 文件系统不完全兼容或存在其他问题,或者 Ubuntu 可能安装了 Windows 工具无法理解的分区设置,无论哪种情况都会导致“无效的超级块校验和”错误。
解决办法是卸载ext2fsd
。
答案2
正如其他人提到的,您只需在 Windows 中卸载或更新 ext2fsd。但是,为了暂时或紧急恢复 Linux,您可以在看到错误的黑屏中输入以下命令:
e2fscl -c 您可以在其中写入您的 Linux 分区;例如 /dev/sdb7。