Mat*_*teo 7 boot grub2 init kernel
接受内核更新后,我的系统停止运行。终端上的命令(如ls、cd等)不起作用并返回错误消息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
Run Code Online (Sandbox Code Playgroud)
我没有惊慌(希望你喜欢双关语)并在网上寻找可能的解决方案,其中我发现:
这种方法的问题在于,不知何故新内核似乎把旧内核搞砸了,如果当我使用 GRUB 菜单选择以前的版本(在常规和恢复模式下)时,新内核会给出完全相同的错误.
/sbin/init文件丢失/sbin/init文件,如果丢失尝试添加。我的错误是类似的,因为run-init命令不起作用,但不是因为文件丢失。与 OP 的情况类似,我的磁盘工作正常,如果我从 LiveOS 访问设备,我可以找到所有二进制目录和文件。
selinux.这些链接指的是不同的系统,因此在启动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
Run Code Online (Sandbox Code Playgroud)
并不是真正提出解决方案,而是指出了多种可能的诊断,但似乎没有一个适合我的问题。
有点与内核崩溃无关,但解释了如何从 GRUB 菜单中引导到单用户模式。这可以防止X Server启动并希望允许我运行内核。
在这一点上,我找到了很多诊断,尝试了很多解决方案,但没有任何效果。
我(认为我)理解的是:
run-init命令时出现问题。X server加载也不起作用。我想了解的,按重要性排序:
进一步阅读
在尝试使用Bug 文档之一中找到的解决方案解决统一问题时,Trusty (14.04) 也遇到了同样的问题。
让我难过的是看到所有这些研究都被“浪费”了,甚至没有尝试给出答案。当然,必须有一种方法可以解决这个问题,而无需重新安装。
我还没有找到解决方案,但让我分享一下解决方案的入口(部分归功于此线程):
使用您喜欢的 Ubuntu 发行版创建可启动 USB 驱动器
选择尝试 Ubuntu 选项
确保您的文件系统可以使用
e2fsck /dev/your-partition
blikd您可以通过运行或获取正确的信息fdisk -l挂载你的分区
sudo mount /dev/your-partition /mnt访问你的根环境
chroot /mnt现在您应该可以完全访问您的文件系统。
您可以尝试通过 USB 驱动器或使用 rsync 修复或检索数据
我被困在试图通过重建初始化sudo apt-get install init
它返回了unable to locate package init,至于sudo apt-get update它返回了类似的东西
ubuntu 14.04有默认的init包吗?
在尝试手动下载时,我在这里找到了大量初始化包。
我发现的唯一“init”包显然是用于 xenial 的。我可以使用这个软件包在trusty中安装吗?
仍在努力弄清楚如何使这项工作发挥作用。再过几个小时,我就会承认失败并开始备份我的敏感数据,然后从头开始重新安装。
| 归档时间: |
|
| 查看次数: |
26123 次 |
| 最近记录: |