not syncing: Attempted to kill init! exitcode=0x00007f00

虚拟机出现Kernel Panic,显示exit code是0x7f(127)

[    2.427517] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00
[    2.427517] 
[    2.429668] CPU: 0 PID: 1 Comm: systemd Not tainted 3.10.0-514.26.2.el7.x86_64 #1
[    2.431437] Hardware name: Alibaba Cloud Alibaba Cloud ECS, BIOS rel-1.7.5-0-ge51488c-20140602_164612-nilsson.home.kraxel.org 04/01/2014
[    2.434249]  ffffffff818c9460 00000000546b98ce ffff88003da37e28 ffffffff81687133
[    2.436091]  ffff88003da37ea8 ffffffff8168053a ffffffff00000010 ffff88003da37eb8
[    2.438007]  ffff88003da37e58 00000000546b98ce ffffffff81e6c100 0000000000007f00
[    2.439875] Call Trace:
[    2.440461]  [<ffffffff81687133>] dump_stack+0x19/0x1b
[    2.441678]  [<ffffffff8168053a>] panic+0xe3/0x1f2
[    2.442867]  [<ffffffff8108c8ad>] do_exit+0xa3d/0xa40
[    2.444091]  [<ffffffff8108c92f>] do_group_exit+0x3f/0xa0
[    2.445378]  [<ffffffff8108c9a4>] SyS_exit_group+0x14/0x20
[    2.446679]  [<ffffffff81697809>] system_call_fastpath+0x16/0x1b

分析

  • systemd不断引发Kernel Panic - PID: 1 Comm: systemd Not tainted

这里显示启动init采用了systemd并不断引发内核异常

观察虚拟机的VNC控制台,可以看到操作系统启动时瞬间crash,没有启动其他服务过程。

通过Live-CD启动系统

修复文件系统

core dump分析

  • 从host主机可以获取到core dump

参考 vmcore分析案例:"kernel BUG at fs/buffer.c:1270"

显示信息

crash调试中通过dmesg指令可以看到完整的启动信息,其中可以看到Kernel Panic之前有两行信息,显示systemd-journald出现的问题和vda1文件系统挂载有关,证实Kernel Panic确实可能和文件系统有关:

其他

  • 软件包修复方法:

如果文件系统中缺少一些文件或者需要更新修复软件包,则可以采用chroot方式访问磁盘中的操作系统,然后尝试修复软件包:

挂载根文件案系统:

chroot到磁盘上的操作系统

卸载chroot环境

参考

Last updated

Was this helpful?