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

问题缘由:内核的某次升级,致使系统没法启动。

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

而后就进入系统了。在这里操做以下linux

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-genericios

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

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

定位到某个menuentry(你本身须要启动的那个系统),以下是我没法启动的系统的menuentryide

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
}ui

标红的版本,将本身系统中的高版本修改成低版本。如个人系统版本原来是31,不知道为何升级成了98,修改回来。spa

重启就能启动了。orm

 

Ubuntu升级内核后没法启动htm

 Ubuntu升级内核后经常产生新的内核grub没法启动,只能进入Ubuntu图标,加载进度条没有反应,呈现紫葡萄色背景的界面不动。而经过grub的原先内核版本启动,仍然可以启动。缘由是新升级的内核与显卡等不兼容,须要更新显卡驱动。另外若是不想麻烦,能够直接内核降级,回到升级以前的版本:

    找出系统已经安装的内核版本,在终端里输入命令:blog

    dpkg --get-selections | grep linux-image

    而后会显示系统中已安装的内核,例如:

    linux-image-3.0.0-32-generic           instal
    linux-image-3.0.0-12-generic           install
    linux-image-generic               install

    卸载新的内核版本,在终端里输入命令:

    sudo apt-get removelinux-image-3.0.0-32-generic

    上面命令和含义是:

    dpkg --get-selections [<表达式> ...]把已选中的软件包列表打印到标准输出;

    grep linux-image 匹配查找;

    uname -a 查看已安装的linux内核版。

    发现只有原先的内核版本了

    最后update-grub一下,重启,就能够直接进入。

相关文章
相关标签/搜索