Linux内核升级导致无法启动,Kernel panic - not syncing Unable to mount root fs on unknown block(0,0)

问题原因:内核的某次升级,导致系统无法启动。

首先进入recovery模式:引导界面选择-->Ubuntu高级-->出现的选项中选择能够启动的recovery模式(几个内核版本分别试一下)-->确认后就能看到一个界面出现很多选项,选择第一个recovery模式-->OK。(大概步骤就是这样,自己摸索一下就出来了)

然后就进入系统了。在这里操作如下

1,查看/boot/下的文件

abi-4.4.0-31-generic memtest86+.bin
abi-4.4.0-98-generic memtest86+.elf
config-4.4.0-31-generic memtest86+_multiboot.bin
config-4.4.0-98-generic System.map-4.4.0-31-generic
grub System.map-4.4.0-98-generic
initrd.img-4.4.0-31-generic vmlinuz-4.4.0-31-generic
initrd.img-4.4.0-98-generic vmlinuz-4.4.0-98-generic

发现存在两个版本的内核,原因应该是某次自动更新??不知道

2,尝试修改/boot/grub/grub.cfg

定位到某个menuentry(你自己需要启动的那个系统),如下是我无法启动的系统的menuentry

menuentry ‘Ubuntu‘ --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option ‘gnulinux-simple-c9ddf11a-a984-4854-91af-bcaed3e6c9b9‘ {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root=‘hd0,msdos9‘
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 c9ddf11a-a984-4854-91af-bcaed3e6c9b9
else
search --no-floppy --fs-uuid --set=root c9ddf11a-a984-4854-91af-bcaed3e6c9b9
fi
linux /boot/vmlinuz-4.4.0-31-generic root=UUID=c9ddf11a-a984-4854-91af-bcaed3e6c9b9 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.4.0-31-generic
}

标红的版本,将自己系统中的高版本修改为低版本。如我的系统版本原来是31,不知道为什么升级成了98,修改回来。

重启就能启动了。

时间: 2024-10-11 00:35:33

Linux内核升级导致无法启动,Kernel panic - not syncing Unable to mount root fs on unknown block(0,0)的相关文章

Virtual Machine Kernel Panic : Not Syncing : VFS : Unable To Mount Root FS On Unknown-Block (0,0)

Virtual Machine Kernel Panic : Not Syncing : VFS : Unable To Mount Root FS On Unknown-Block (0,0) 33192 Share on FacebookShare on Twitter This issue appeared in the Linux virtual machines in the VMware environment after upgrading the guest os, Virtua

解决 linux [Fedora] 下 内核升级 导致VMware 启动出现"before you can run vmware workstation, serveral modules must be complied and loaded into the runing kernel"

解决: 开机启动 进入 升级之前的内核系统 然后 执行卸载 VMware 命令 # vmware-uninstall You have gotten this message because you are either downgrading VMware Workstation, Player, or VIX, or because you attempted to run either vmware-uninstall or vmware-uninstall-vix. If you are

linux 内核升级2 转

linux内核升级 一.Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统. 设备驱动程序可以完全访问硬件. Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置,并在系统运行期间可直接装载或卸载. 1. linux内核 linux操作系统是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件. 一个计算机系统是一个硬件和软件的共生体,它们互相依赖,不可分割. 计算机的硬件,含有外围设备.处理器.内存.硬盘和其他的电子设

linux加载rootfs 根文件系统 kernel panic - not

环境:linux内核加载自己的制作的文件系统. 错误信息有以下几种: 错误信息1: Root-NFS: Server returned error -5 while mounting /mini2440/rootfs VFS: Unable to mount root fs via NFS, trying floppy. VFS: Cannot open root device "nfs" or unknown-block(2,0) Please append a correct &q

linux 内核启动错误和selinux参数 Kernel panic -not syncing:Attempted to kill init

今天在装某个软件的时候,修改了selinux参数.修改selinux 的某个参数值为Disable.导致 linux系统不能启动.出现如下错误 Kernel panic -not syncing:Attempted to kill init! 后经过向群友请教和自己操作和互联网搜索,终于找到了解决办法. 在linux启动界面出现时,按f2进入如下界面: 按e进入如下界面 移动到第2个选项,再按e进入编辑 在后面输入 selinux=0 按回车. 返回到原来界面, 再按b,就可以启动了. 以下为转

Linux内核如何装载和启动一个可执行程序-----实验7

2015108 李泽源 Linux内核如何装载和启动一个可执行程序 理解编译链接的过程和ELF可执行文件格式,详细内容参考本周第一节: 编程使用exec*库函数加载一个可执行文件,动态链接分为可执行程序装载时动态链接和运行时动态链接,编程练习动态链接库的这两种使用方式,详细内容参考本周第二节: 使用gdb跟踪分析一个execve系统调用内核处理函数sys_execve ,验证您对Linux系统加载可执行程序所需处理过程的理解,详细内容参考本周第三节:推荐在实验楼Linux虚拟机环境下完成实验.

从Linux内核升级的必要性说开去

Linux内核更新超级频繁,但是有必要时刻升级吗?个人感觉没有必要,但是你要时刻关注新特性列表,然后把自己的内核升级到离最新版本差一两个月发布的版本而不是最新版本,以保证稳定性,因为一两个月的时间足够多的慧眼会发现足够多的问题,既然自己不是Alan Cox那个梯队的大牛,最好不要在自己的生产版本上使用最新内核,当然,做试验或者Just play例外.       为什么要升级内核?是的,很多人并不同意这种观点,可能他们认为使用内核提供的最持久最稳定的接口就已经足够,多数的定制特性需要自己在用户空

Linux内核如何装载和启动一个可执行程序(转)

原文:http://www.cnblogs.com/petede/p/5351696.html 实验七:Linux内核如何装载和启动一个可执行程序 姓名:李冬辉 学号:20133201 注: 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 云课堂笔记: (1)可执行文件的创建 C代码(.c) - 经过编译器预处理,编译成汇编代码(.asm) - 汇编器,生成目标代码(.o) - 链接

实验七:Linux内核如何装载和启动一个可执行程序

原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 题目自拟,内容围绕对Linux内核如何装载和启动一个可执行程序 可以结合实验截图.ELF可执行文件格式.用户态的相关代码等 博客内容中需要仔细分析新可执行程序的执行起点及对应的堆栈状态等 总结部分需要阐明自己对“Linux内核装载和启动一个可执行程序”的理解 实验报告: 理解编译链接的过程和ELF可执行文件格式: C代码——预处理——汇