调试`内核崩溃-未同步:试图杀死init!`

调试`内核崩溃-未同步:试图杀死init!`

接受内核更新后,我的系统停止运行。终端上的命令(如lscd等)不起作用并返回错误消息command not found,并且尝试使用 GUI 执行任何操作。

我强制关闭了计算机,重新启动后(不出所料)出现了内核恐慌错误:

[timestamp]Kernel panic - not syncing: Attempted to kill init! exitcode=0x0001000
[timestamp]CPU: 0 PID: 1 Comm: run-init Not tainted 3.19.0-25-generic #26~14.04.1-Ubuntu
[timestamp]Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./B150M Pro4S, BIOS P1.10 07/16/2015
[timestamp] ffff88084cd60380 ffff880851727e68 ffffffff817aed00 0000000000002478
[timestamp] ffffffff81a901a8 ffff880851727ee8 ffffffff817a8bc8 ffff880851728000
[timestamp] ffffffff00000010 ffff880851727ef8 ffff880851727e98 ffffffff81c5ee20
[timestamp] Call Trace:
[timestamp]  [<ffffffff817aed00>] dump_stack+0x45/0x57
[timestamp]  [<ffffffff817a8bc8>] panic+0xc1/0x1f5
[timestamp]  [<ffffffff81077ae1>] do_exit+0xa11/0xb00
[timestamp]  [<ffffffff81077c17>] SyS_exit+0x17/0x20
[timestamp]  [<ffffffff817b668d>] system_call_fastpath+0x16/0x1b
[timestamp] Kernel Offset: 0x0 from 0xffffffff81000000 (relocation range:0xffffffff80000000-0xffffffffbfffffff)
[timestamp] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0001000

我并没有惊慌(希望你喜欢这个双关语)并在网上寻找可能的解决方案,其中我发现:


这种方法的问题在于,新的内核似乎以某种方式弄乱了旧内核,并且如果我使用 GRUB 菜单选择以前的版本(在常规模式和恢复模式下),新内核会出现完全相同的错误。


我的错误类似,因为run-init命令不起作用,但不是因为文件丢失。与 OP 的情况类似,我的磁盘工作正常,如果我从 LiveOS 访问设备,我能够找到所有二进制目录和文件。


这些链接指的是不同的系统,因此一旦我启动命令行,我就按如下方式调整解决方案GRUB

grub> set root=(hd0,1) selinux=0 enforcing=0
grub> linux /boot/vmlinuz-3.19.0-25-generic root=/dev/sda1
grub> initrd /boot/initrd.img-3.13.0-29-generic
grub> boot

并没有真正提出解决方案,但指出了多种可能的诊断,但似乎没有一个适合我的问题。


与内核崩溃无关,但解释了如何从 GRUB 菜单内启动到单用户模式。这可以防止X Server启动,并希望允许我运行内核。


此时,我发现了许多诊断,尝试了许多解决方案,但都没有效果。

我(认为)理解的是:

  • 内核(包括新的和旧的,无论是否处于恢复模式)在运行命令时遇到问题run-init
  • 这与我的硬件无关,因为计算机可以使用 LiveOS 正常运行,并且我可以使用显卡、访问磁盘、使用键盘和鼠标。
  • 该错误发生在启动的早期阶段,因为尝试启动到单用户模式不起作用并且阻止X server加载没有效果。

我想了解的内容(按重要性排序):

  • 新内核的安装是否可能覆盖或弄乱旧内核?
  • 有人知道我遗漏了什么/还有其他解决方案吗?
  • 我在实施上述解决方案时是否犯了任何错误?
  • 您能想到什么我还没尝试过的事情吗?
  • 我可以安装新内核而不从 GRUB 控制台格式化所有内容吗?
  • 是时候重新安装操作系统了吗?(如果您无法回答上述问题,那么我已经知道答案了……)

进一步阅读

答案1

在尝试解决统一问题时遇到与 Trusty (14.04) 相同的问题问题用一个解决方案在其中一个错误的文档中发现。

看到所有这些研究都“浪费”了,甚至没有尝试回答,这让我很难过。肯定有一种方法可以解决这个问题,而无需全新安装。


我还没有找到解决方案,但让我分享一下解决方案的入口(部分归功于这个线程):

  1. 使用你喜欢的 Ubuntu 发行版创建可启动的 USB 驱动器

  2. 选择“尝试 Ubuntu”选项

  3. 确保您的文件系统可用 e2fsck /dev/your-partition

    • blikd你可以通过运行或获取正确的信息fdisk -l
  4. 使用以下方式挂载分区sudo mount /dev/your-partition /mnt

  5. 使用以下命令访问你的根环境chroot /mnt

  6. 现在您应该可以完全访问您的文件系统。
    您可以尝试通过 USB 驱动器或使用 rsync 来修复或检索数据

我试图通过以下方式重建 initsudo apt-get install init

它返回了unable to locate package init,并sudo apt-get update返回了类似

ubuntu 14.04 有默认的初始化包吗?

在尝试手动下载时,我发现了大量的 init 包这里

唯一的“init”包裹我发现它显然是为 xenial 设计的。我可以使用这个包来安装可靠


仍在尝试弄清楚如何实现这一点。再过几个小时我就会承认失败,并开始备份我的敏感数据,然后再从头开始重新安装。

相关内容