我尝试从 USB 安装 Fedora-Workstation-Live 28,在安装开始时,当我选择 [启动 Fedora-Workstation-Live 28] 时,出现以下错误。有什么解决办法吗?
[1.81660] ---[end Kernel] 恐慌 - 未同步:VFS:无法在未知块(0,0)上挂载根 fs。
(系统:Lenovo z51 70 - 操作系统:Linux、Ubuntu 18.04 - 内核版本:4.15)
发生以下错误:
当我选择[Start Fedora-Workstation-Live 28]时:
我更换了 USB 并收到以下错误:
答案1
解决了。显然问题出在 USB 上,所以我尝试使用以下命令再次格式化 USB:
sudo dd if=/dev/zero of=/dev/sdb
然后在其上刻录 .iso 文件。现在它显示安装页面没有问题。
答案2
目录
- 请使用重新检查写入数据的写入 USB 的方法。这可能很难,抱歉。
- 之后如何使用
cmp
命令进行验证dd
。 - 从 USB 读取的 initramfs 已损坏。
- 为什么我责怪从USB读取的initramfs。
1. 请使用重新检查写入数据的USB写入方法。这可能很难,抱歉。
您遇到的启动问题看起来很像 USB 上的错误数据。因此,请使用USB写入方法重新检查写入的数据。
dd
其本身不重新检查写入的数据。请cmp
按照下一节中的具体说明,使用 手动重新检查数据。不幸的是我想不出任何更简单的方法。
GNOME 磁盘可用于写入 USB(Fedora 安装说明告诉您如何操作)。但似乎并没有重新检查写入的数据。
Fedora 官方安装说明“默认”为Fedora 媒体作家。至少版本为Fedora 媒体作家我有,写入USB后会自动重新检查写入的数据。我不知道安装的简单方法Fedora 媒体作家在你的 Ubuntu 操作系统上:-(。
https://docs.fedoraproject.org/f28/install-guide/install/Preparing_for_Installation.html
Ubuntu 的“启动磁盘创建器”对我来说根本不起作用。我认为它只愿意编写Ubuntu ISO,而不愿意编写Fedora ISO。
2. 之后如何使用cmp
命令验证dd
原则上这可能是一个简单的cmp
命令。非常遗憾的是,有一些困难会返回无用的结果,所以我需要解释一下这些。
我相信,cmp
如果您允许将写入的 USB 挂载到 Linux 系统上,也可能会出现差异:-(。如果您在写入后再次将其插入 Linux 系统,则可能会发生这种情况!(或者成功启动 Fedora Live USB?)你必须小心它!
因此,您需要运行dd
写入数据,然后cmp
命令验证 USB 数据,而无需在中间重新插入 USB(或重新启动)。
首先运行您的dd
命令。请记住要格外小心,不要擦拭您的内部硬盘:)。
然后记住你应该运行sync
,以确保数据已完成写入。
然后,你就可以运行了echo 3 | sudo tee /proc/sys/vm/drop_caches
。需要执行此步骤,以确保cmp
不仅仅从系统 RAM 中的缓存中读回。
然后你就可以运行
# cmp Fedora-Workstation-Live-28.iso /dev/sdb
即wheresdb
是你的USB设备的名称,.iso
file是你的ISO文件的名称。如果问题是您的 USB 记忆棒需要更换,则此命令可能会显示 IO 错误或差异。
原则上,您可能想更进一步,测试 USB 在拔出并断电后是否能正确保存其数据。因此,这需要一种替代方法来禁用图形登录的自动安装。知道如何暂时禁用自动挂载可能非常困难:-(。我认为最简单的方法是登录文本控制台并从那里运行命令。确保您之前没有切换回图形登录您已完成!有关在文本控制台上登录的一些信息,请参阅这里。
3. 从 USB 读取的 initramfs(可能)已损坏
从目前的证据来看,从 USB 读取的 initramfs 似乎已损坏。您可以尝试在写入 USB 的同一系统上验证 USB 数据。这对于确认 USB 写入时出现某种问题可能很有用。
为了完整起见,可能性的完整列表是:-
- 写入 USB 时出现问题
- 您写入的 ISO 映像存在问题
- 您的计算机出现问题,例如早期启动期间的 EFI/BIOS 问题
- 您的计算机与此版本的 Linux 之间“不兼容”。 (也就是说,如果有人认为你的计算机不应该受到责备,他们就必须责怪特定的 Linux 版本:)。
4. 为什么我责怪从USB读取的initramfs
我发现其他未解之谜也有相同的错误消息和非常相似的条件:
- Fedora Live USB 无法启动
- 我无法制作 [Fedora 24] 的可启动 USB...
- 内核恐慌 - 不同步 VFS:无法在 Fedora 22 安装上的未知块(0,0)上挂载 root fs
[1.81660] ---[结束内核] 恐慌 - 不同步:VFS:无法在未知块(0,0)上挂载根文件系统。
不幸的是,这不是真正的具体错误。
我已经仔细检查过了; Fedora-Workstation-Live 28 使用初始化文件系统。这有时也称为一种类型初始化程序。
如果您使用内核和 initramfs 设置引导,则会显示此错误,但某些错误会阻止加载 initramfs。
例如,触发此错误的一种方法是,如果您在启动菜单中按特殊键来启动启动选项的临时编辑。理论上,您可能已经开始编辑启动选项,并无意中删除了一个initrd
选项。所以我不得不提到这是一种可能性:)。请注意,这种类型的编辑是临时的。因此,您可以再次启动,并确保您没有进行禁用 initramfs 的编辑:)。
在这种情况下,内核可能会“陷入”没有 initramfs 的旧式引导,但它没有任何被指定挂载为 root fs 的“块设备”。 “(0,0)”表示“未知”;该设备号永远不是有效的块设备。
但我不认为这是你(和其他一些人)所做的。
因此,我认为在启动过程的早期可能存在更具体的错误。不幸的是,如果有错误消息,您可能看不到它,因为它滚动到屏幕顶部,如果此后有太多消息:)。
一个图像搜索“无法在未知块(0,0)上安装根文件系统。”表明内核调用跟踪填满屏幕是很常见的。发生这种情况时,您无法查看是否有任何先前的错误消息。
我发现了一个此类错误的示例,发布在不同的 Linux 上:
https://bbs.archlinux.org/viewtopic.php?id=220178
Initramfs unpacking failed: junk in compressed archive
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
...
--- [end Kernel] panic - not syncing: VFS: unable to mount root fs on unknown-block(0,0).
编辑:称之为:-)。 “Initramfs 解包失败:”是真正的错误。 “XZ 压缩数据已损坏”清楚表明 initramfs 未从 USB 正确读取