原来电脑装有windows和ubuntu,后来要重装ubuntu,然后重装了。结果问题来了,装完之后grub启动界面没了,也就是在该出现选择windows或者ubuntu的时候没有出现这个界面,而是略微停顿一会之后直接进入ubuntu。开始以为是grub出现了问题,于是执行sudo update-grub更新了grub.cfg,然后界面回来了,进入windows正常。满以为问题解决了,可是问题又来了————没法进入ubuntu了,哦,我的天。选择进入ubuntu,结果提示“Failed to execute /init(error -8) Starting init:/bin/sh exists but couldn't execute it (error -8) Kernel panic - not syncing :No working init found. Try passing init =option to kernel. See linux documentation/init.txt for guidance.”然后我就蒙了,用u盘里的系统进入文件系统看了,/目录下没有init,把/boot/init复制到根目录下依然无法解决问题,再就是查看了/bin/sh,它是指向/bin/dash的链接,无论是/bin/sh,还是/bin/dash都是拥有可执行权限的。最后,比较了下update-grub前后文件的区别,可是我对这个没深究过,看不懂啊!
大家帮我看看是哪里的问题吧!线上等待,急!
diff update-grub.cfg grub.cfg
(前面的是执行update-grub之后的/boot/grub/grub.cfg,后面的是为执行时的)
69c69
< search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 6e7f1920-34ac-4b9d-9739-a8d253d37677
71c71
< search --no-floppy --fs-uuid --set=root b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root 6e7f1920-34ac-4b9d-9739-a8d253d37677
134c134
< menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b8a24abe-32b8-4e92-8f37-df597afe559d' {
---
> menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-6e7f1920-34ac-4b9d-9739-a8d253d37677' {
143c143
< search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 6e7f1920-34ac-4b9d-9739-a8d253d37677
145c145
< search --no-floppy --fs-uuid --set=root b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root 6e7f1920-34ac-4b9d-9739-a8d253d37677
147c147
< linux /boot/vmlinuz-3.16.0-30-generic root=UUID=b8a24abe-32b8-4e92-8f37-df597afe559d ro quiet splash $vt_handoff
---
> linux /boot/vmlinuz-3.16.0-30-generic.efi.signed root=UUID=6e7f1920-34ac-4b9d-9739-a8d253d37677 ro quiet splash $vt_handoff
150,151c150,151
< submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-b8a24abe-32b8-4e92-8f37-df597afe559d' {
< menuentry 'Ubuntu, with Linux 3.16.0-30-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-30-generic-advanced-b8a24abe-32b8-4e92-8f37-df597afe559d' {
---
> submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-6e7f1920-34ac-4b9d-9739-a8d253d37677' {
> menuentry 'Ubuntu, with Linux 3.16.0-30-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-30-generic-advanced-6e7f1920-34ac-4b9d-9739-a8d253d37677' {
160c160
< search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 6e7f1920-34ac-4b9d-9739-a8d253d37677
162c162
< search --no-floppy --fs-uuid --set=root b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root 6e7f1920-34ac-4b9d-9739-a8d253d37677
165c165
< linux /boot/vmlinuz-3.16.0-30-generic root=UUID=b8a24abe-32b8-4e92-8f37-df597afe559d ro quiet splash $vt_handoff
---
> linux /boot/vmlinuz-3.16.0-30-generic.efi.signed root=UUID=6e7f1920-34ac-4b9d-9739-a8d253d37677 ro quiet splash $vt_handoff
169c169
< menuentry 'Ubuntu, with Linux 3.16.0-30-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-30-generic-recovery-b8a24abe-32b8-4e92-8f37-df597afe559d' {
---
> menuentry 'Ubuntu, with Linux 3.16.0-30-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-30-generic-recovery-6e7f1920-34ac-4b9d-9739-a8d253d37677' {
177c177
< search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9 6e7f1920-34ac-4b9d-9739-a8d253d37677
179c179
< search --no-floppy --fs-uuid --set=root b8a24abe-32b8-4e92-8f37-df597afe559d
---
> search --no-floppy --fs-uuid --set=root 6e7f1920-34ac-4b9d-9739-a8d253d37677
182c182
< linux /boot/vmlinuz-3.16.0-30-generic root=UUID=b8a24abe-32b8-4e92-8f37-df597afe559d ro recovery nomodeset
---
> linux /boot/vmlinuz-3.16.0-30-generic.efi.signed root=UUID=6e7f1920-34ac-4b9d-9739-a8d253d37677 ro recovery nomodeset
195,216d194
< menuentry 'Memory test (memtest86+)' {
< 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 b8a24abe-32b8-4e92-8f37-df597afe559d
< else
< search --no-floppy --fs-uuid --set=root b8a24abe-32b8-4e92-8f37-df597afe559d
< fi
< knetbsd /boot/memtest86+.elf
< }
< menuentry 'Memory test (memtest86+, serial console 115200)' {
< 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 b8a24abe-32b8-4e92-8f37-df597afe559d
< else
< search --no-floppy --fs-uuid --set=root b8a24abe-32b8-4e92-8f37-df597afe559d
< fi
< linux16 /boot/memtest86+.bin console=ttyS0,115200n8
< }
220,235d197
< menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-5834FDA534FD8672' {
< insmod part_msdos
< insmod ntfs
< set root='hd0,msdos1'
< if [ x$feature_platform_search_hint = xy ]; then
< search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 5834FDA534FD8672
< else
< search --no-floppy --fs-uuid --set=root 5834FDA534FD8672
< fi
< parttool ${root} hidden-
< chainloader +1
< }
< set timeout_style=menu
< if [ "${timeout}" = 0 ]; then
< set timeout=10
< fi
-------------------------over---------------------------------------
我装的是ubuntu14.04,目前又重装了一次,但是没有执行update-grub,请大家帮忙提供一个好的解决方案
谢谢
安装系统后遇到的关于grub以及无法启动系统的问题
-
- 帖子: 5
- 注册时间: 2015-04-13 10:32
- 系统: ubuntu14.04
-
- 帖子: 5
- 注册时间: 2015-04-13 10:32
- 系统: ubuntu14.04
Re: 安装系统后遇到的关于grub以及无法启动系统的问题
自己顶下,大神帮忙分析下啊!
-
- 帖子: 5
- 注册时间: 2015-04-13 10:32
- 系统: ubuntu14.04
Re: 安装系统后遇到的关于grub以及无法启动系统的问题
问题已解决,纯属破罐子破摔,机会好给碰到了。哈哈,前面提到在update-grup前后grub.cfg有差异,参照执行命令前的grub.cfg修改执行命令后的grub.cfg,
仅仅保留
220,235d197
< menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-5834FDA534FD8672' {
< insmod part_msdos
< insmod ntfs
< set root='hd0,msdos1'
< if [ x$feature_platform_search_hint = xy ]; then
< search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 5834FDA534FD8672
< else
< search --no-floppy --fs-uuid --set=root 5834FDA534FD8672
< fi
< parttool ${root} hidden-
< chainloader +1
< }
< set timeout_style=menu
< if [ "${timeout}" = 0 ]; then
< set timeout=10
< fi
以上部分的关于windows的差异(因为现在windows可以打开了,只是ubuntu打不开,哦对了,我现在处于执行update-grub命令后的状态,所以修改除windows相关信息外的所有差异内容),然后保存,重启,然后两个系统都可以打开了。问题大致解决了。
实际上这种解决方案还是有弊端的,毕竟没有理解grub.cfg的内容,所以在启动ubuntu系统是会保留之前略微等待的界面,应该是grub.cfg内容设置没到最佳,但是其他的都没问题了。
汗,两个系统终于共存了,哈哈。
大神们,如果看到本帖,希望还是帮忙看看,分析分析,虽然解决了目前的问题,但是毕竟开机还是有些别留,我保持跟进的,欢迎指导!!
仅仅保留
220,235d197
< menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-5834FDA534FD8672' {
< insmod part_msdos
< insmod ntfs
< set root='hd0,msdos1'
< if [ x$feature_platform_search_hint = xy ]; then
< search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 5834FDA534FD8672
< else
< search --no-floppy --fs-uuid --set=root 5834FDA534FD8672
< fi
< parttool ${root} hidden-
< chainloader +1
< }
< set timeout_style=menu
< if [ "${timeout}" = 0 ]; then
< set timeout=10
< fi
以上部分的关于windows的差异(因为现在windows可以打开了,只是ubuntu打不开,哦对了,我现在处于执行update-grub命令后的状态,所以修改除windows相关信息外的所有差异内容),然后保存,重启,然后两个系统都可以打开了。问题大致解决了。
实际上这种解决方案还是有弊端的,毕竟没有理解grub.cfg的内容,所以在启动ubuntu系统是会保留之前略微等待的界面,应该是grub.cfg内容设置没到最佳,但是其他的都没问题了。
汗,两个系统终于共存了,哈哈。
大神们,如果看到本帖,希望还是帮忙看看,分析分析,虽然解决了目前的问题,但是毕竟开机还是有些别留,我保持跟进的,欢迎指导!!