我尝试使用 grub 启动文件系统,但没有成功。我不想使用外部媒体重新安装操作系统。请帮我解决这个问题。请查看下面链接图片中的错误截图。
我使用 Ubuntu 18.04 LTS 作为我的 HP pavilion g6 中唯一的操作系统,该电脑配备英特尔 i5 处理器和 8GB 内存。
我尝试过在启动系统之前使用“e”选项,并通过用“nomodeset”删除“quiet splash”来更改 Linux 命令行。我尝试了大多数解决方案,但没有成功。
我尝试使用以下步骤从 grub 启动,但失败了,并且遇到了同样的错误。下面的命令根据我的系统略有不同 -
grub> set root=(hd0,1) grub> linux /boot/vmlinuz-3.13.0-29-generic root=/dev/sda1 grub> initrd /boot/initrd.img-3.13.0-29-generic grub> boot
由于 BIOS 中禁用了虚拟化功能,因此我无法启动 vbox,因此出现了问题,因此我重新启动系统以在 BIOS 中启用虚拟化功能,再次重新启动机器后,我又遇到了这个问题。
目前,我只能使用“c”和“e”选项访问 Linux 中的 grub 命令行界面和高级启动选项。
更新 1:我禁用了虚拟化,但问题并未解决。我也无法使用该locate
命令找到文件 zz-resume-auto。Grub 无法识别此命令。我也尝试使用,search.file zz-resume-auto
但没有成功。我不太熟悉 grub 命令行界面。请帮我使用命令来搜索文件。
输出ls -al /boot
:-
更新2:我也无法启动到最新的内核版本。我附上链接以了解更多信息。我尝试使用启动修复来解决这个问题,但没有任何效果。请查看启动修复报告 -http://paste.ubuntu.com/p/F2kbMT6nd5/
谢谢。
答案1
您尝试启动的内核的 initramfs 映像完全可能已损坏。根据您的ls -al /boot
输出,该映像可能是 5.3.0-28 或 5.3.0-40
initramfs 是一个 gzip 压缩的 cpio 存档。在启动时,内核会将该存档解压到 RAM 磁盘中,然后挂载并将其用作初始根文件系统。所有根设备的查找都发生在这个早期用户空间中。这些通常位于 /boot 中,在我的系统上称为 initrd.img-内核版本
您可以使用命令检查图像中是否存在相关文件lsinitramfs /boot/initrd.img-5.3.0-28-generic | grep zz-resume-auto
(例如,根据您搜索的图像和要搜索的内容调整文件名)
如果是这种情况,该update-initramfs
脚本可能会解决问题。以下是 [手册页] 的摘录
EXAMPLES
Update the initramfs of the newest kernel:
update-initramfs -u
Create the initramfs for a specific kernel:
update-initramfs -c -k 2.6.18-1-686
有关启动过程的更多详细信息,请参阅不错的介绍。
资料来源:
man update-initramfs
答案2
当内核由于某种原因无法继续运行时,就会发生“内核恐慌”。
“试图终止init
”实际上意味着:“init
死亡或无法启动”。这是进程 #1,它在 Linux 中占有特殊地位,没有它系统就无法运行。很可能是库错误或其他问题导致进程根本无法启动。检查dmesg
发生故障之前的日志。
答案3
您安装了一个应用程序(可能是 zram 或类似的程序),但该应用程序安装了无效文件zz-resume-auto.*
,或者您手动添加了某个地方的文件zz-resume-auto.*
,但其中有错误,或者您有一个有缺陷的/boot/initrd.img-5.3.0-40-generic
文件。
找到此文件并更正脚本错误。使用locate -b zz-resume-auto
或find / -name zz-resume-auto
帮助查找此文件。它可能位于 中/etc/initramfs-tools/conf.d/
。如果是这样,您需要sudo update-initramfs -c -k 5.3.0-40-generic
在修复脚本后执行 。
更新#1:
在 BIOS 中禁用虚拟化功能,看看是否能让您启动。
更新 #2:
尝试启动较旧的 -28 内核。
更新 #3:
sudo update-initramfs -c -k 5.3.0-40-generic
解决了问题