Ubuntu 修复GRUB
2010-12-01 09:13
148 查看
部分转自:http://foolishken.blog.163.com/blog/static/2562766520091116112454744/
前几天看到网上有关Windows 7的一些评价,便想自己亲自试试,于是将之前单硬盘安装的Ubuntu 9.10和Windows XP双系统的windows XP抹掉了,重新安装的Windows 7,结果不出所料,安装之后,系统就只能导Windows 7而无法进入Ubuntu 9.10了,通过几天在论坛上找资料,再加上自己多次的尝试,功夫不负有心人啊,最后终于解决了问题。今天写在这里,希望对喜欢Ubuntu 9.10和Windows 7双系统的朋友有所帮助。
之前在安装Ubuntu 9.10的时候,听说Ubuntu 9.10 采用了新的ext4文件系统,于是就在安装时选择了,结果大部分的grub4dos版本都比较老,并不支持这个文件系统,网上也有人说最新的0.4.4版本好像是支持,但是都太过于复杂,不太适合于大多数人,弄不好还有可能使Windows 7无法引导,网上也有使用这个的方法,喜欢研究的朋友可以搞一下,写出来大家也一起分享一下。在网上也找了一些关于Ubuntu 9.04以前版本和Windows 7共存的方法,但是Ubuntu 9.10采用的grub是新版本的grub2[启动时显示是1.97 beta],所以之前的方法已经不适用了。
相信安装过Ubuntu 9.10的朋友都有LiveCD的安装光盘,我们今天就用Ubuntu 9.10的LiveCD的来修复grub2的引导。启动Ubuntu 9.10光盘,选择LiveCD模式,进入之后选择进入终端,先在终端输入如下命令:
sudo fdisk -l (注意是小写的L,不是数字的1,此步用于确定电脑中安装Ubuntu 9.10的所在分区的位置,输入以后会输出类似如下信息,找到ID为83的那行,记住/dev/sdaX的情况,比如本人的电脑是/dev/sda7,以下就以此为例,你自己的请加以更改)
然后再输入
sudo -i (此步用于得到root权限,无需输入密码,方便以下操作)
接着输入mkdir /media/tempdir (这里用于创建一个文件夹tempdir,用于挂载刚才的sda7,此文件夹名称你可以依个人爱好而定,没有太多要求)
再输入 mount /dev/sda7 /media/tempdir (将sda7挂载于tempdir文件夹下)
下面进入了本次恢复最为关键和激动人心的时刻,在终端输入以下命令:
grub-install --root-directory=/media/tempdir /dev/sda (本步骤用于来重新安装grub2到硬盘的主引导记录【MBR】里面,十分关键!)
输入以后如果出现“Installation finished.No Error Reported.”字符的时候,就表示操作成功了。但是现在只成功的一半,还有以下操作才能够完全成功。
这时重新启动你的电脑,就能看到grub2的引导界面了,但是这时只能用来引导Ubuntu 9.10,还暂时无法引导Windows 7,这时选择进入Ubuntu 9.10,再找到并启动终端,在终端输入如下命令:
sudo update-grub2
按照提示输入密码,如果顺利的话,会出现如下类似语句,那就表示成功了。
grub.cfg ...
Found Debian background: moreblue-orbit-grub.png
Found linux image: /boot/vmlinuz-2.6.31-15-generic
Found initrd image: /boot/initrd.img-2.6.31-15-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 7 (loader) on /dev/sda1
done
如果没有出现以上类似语句的话,那就在新立得里面搜索grub,可以安装带有Ubuntu标志的那个grub-pc,安装之后,再输入sudo update-grub2更新一下grub2就可以了。
建议在修改前先将原有grub配置文件备份,不是cd启动的grub而是原硬盘上的,千万别搞错了(/boot/grub/grub.cfg),如果出现进入不了windows系统可以先试一试将备份的grub.cfg覆盖回来,如果还不行参考网友的:
输入终端命令: sudo -i chmod +w /boot/grub/grub.cfg (修改grub.cfg文件的操作权限)
gedit /boot/grub/grub.cfg (编辑grub.cfg文件)
将其中的windows引导相关的部分进行修改:
(绿色字体部分为原内容)
menuentry "Microsoft Windows XP Professional" {
set root=(hd0,1)
search –no-floppy –fs-uuid –set 4a807ca0807c93e3
drivemap -s (hd0) $root
chainloader +1
}
修改成:
menuentry "Microsoft Windows XP Professional" {
set root=(hd0,1)
chainloader +1
}
修改好以后,存盘,关闭终端窗口,重新启动系统,修复成功!
前几天看到网上有关Windows 7的一些评价,便想自己亲自试试,于是将之前单硬盘安装的Ubuntu 9.10和Windows XP双系统的windows XP抹掉了,重新安装的Windows 7,结果不出所料,安装之后,系统就只能导Windows 7而无法进入Ubuntu 9.10了,通过几天在论坛上找资料,再加上自己多次的尝试,功夫不负有心人啊,最后终于解决了问题。今天写在这里,希望对喜欢Ubuntu 9.10和Windows 7双系统的朋友有所帮助。
之前在安装Ubuntu 9.10的时候,听说Ubuntu 9.10 采用了新的ext4文件系统,于是就在安装时选择了,结果大部分的grub4dos版本都比较老,并不支持这个文件系统,网上也有人说最新的0.4.4版本好像是支持,但是都太过于复杂,不太适合于大多数人,弄不好还有可能使Windows 7无法引导,网上也有使用这个的方法,喜欢研究的朋友可以搞一下,写出来大家也一起分享一下。在网上也找了一些关于Ubuntu 9.04以前版本和Windows 7共存的方法,但是Ubuntu 9.10采用的grub是新版本的grub2[启动时显示是1.97 beta],所以之前的方法已经不适用了。
相信安装过Ubuntu 9.10的朋友都有LiveCD的安装光盘,我们今天就用Ubuntu 9.10的LiveCD的来修复grub2的引导。启动Ubuntu 9.10光盘,选择LiveCD模式,进入之后选择进入终端,先在终端输入如下命令:
sudo fdisk -l (注意是小写的L,不是数字的1,此步用于确定电脑中安装Ubuntu 9.10的所在分区的位置,输入以后会输出类似如下信息,找到ID为83的那行,记住/dev/sdaX的情况,比如本人的电脑是/dev/sda7,以下就以此为例,你自己的请加以更改)
Disk /dev/sda: 80.0 GB, 80026361856 bytes 255 heads, 63 sectors/track, 9729 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x624aa2e0 Device Boot Start End Blocks Id System /dev/sda1 * 1 1388 11149078+ 7 HPFS/NTFS /dev/sda2 1389 3825 19575202+ 7 HPFS/NTFS /dev/sda3 3826 9729 47423880 f W95 Ext'd (LBA) /dev/sda5 3826 5851 16273813+ b W95 FAT32 /dev/sda6 5852 8323 19856308+ b W95 FAT32 /dev/sda7 8324 9598 10241406 83 Linux /dev/sda8 9599 9729 1052226 82 Linux swap / Solaris |
sudo -i (此步用于得到root权限,无需输入密码,方便以下操作)
接着输入mkdir /media/tempdir (这里用于创建一个文件夹tempdir,用于挂载刚才的sda7,此文件夹名称你可以依个人爱好而定,没有太多要求)
再输入 mount /dev/sda7 /media/tempdir (将sda7挂载于tempdir文件夹下)
下面进入了本次恢复最为关键和激动人心的时刻,在终端输入以下命令:
grub-install --root-directory=/media/tempdir /dev/sda (本步骤用于来重新安装grub2到硬盘的主引导记录【MBR】里面,十分关键!)
输入以后如果出现“Installation finished.No Error Reported.”字符的时候,就表示操作成功了。但是现在只成功的一半,还有以下操作才能够完全成功。
这时重新启动你的电脑,就能看到grub2的引导界面了,但是这时只能用来引导Ubuntu 9.10,还暂时无法引导Windows 7,这时选择进入Ubuntu 9.10,再找到并启动终端,在终端输入如下命令:
sudo update-grub2
按照提示输入密码,如果顺利的话,会出现如下类似语句,那就表示成功了。
grub.cfg ...
Found Debian background: moreblue-orbit-grub.png
Found linux image: /boot/vmlinuz-2.6.31-15-generic
Found initrd image: /boot/initrd.img-2.6.31-15-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 7 (loader) on /dev/sda1
done
如果没有出现以上类似语句的话,那就在新立得里面搜索grub,可以安装带有Ubuntu标志的那个grub-pc,安装之后,再输入sudo update-grub2更新一下grub2就可以了。
建议在修改前先将原有grub配置文件备份,不是cd启动的grub而是原硬盘上的,千万别搞错了(/boot/grub/grub.cfg),如果出现进入不了windows系统可以先试一试将备份的grub.cfg覆盖回来,如果还不行参考网友的:
输入终端命令: sudo -i chmod +w /boot/grub/grub.cfg (修改grub.cfg文件的操作权限)
gedit /boot/grub/grub.cfg (编辑grub.cfg文件)
将其中的windows引导相关的部分进行修改:
(绿色字体部分为原内容)
menuentry "Microsoft Windows XP Professional" {
set root=(hd0,1)
search –no-floppy –fs-uuid –set 4a807ca0807c93e3
drivemap -s (hd0) $root
chainloader +1
}
修改成:
menuentry "Microsoft Windows XP Professional" {
set root=(hd0,1)
chainloader +1
}
修改好以后,存盘,关闭终端窗口,重新启动系统,修复成功!
相关文章推荐
- Windows、Ubuntu双系统重装windows系统后grub引导的修复及默认启动项的修改
- 先安装ubuntu,后安装windows,修复启动grub
- 修复 Ubuntu 12.04 Grub 引导
- Ubuntu 修复 grub
- 双硬盘双win8加ubuntu修复grub
- [stephen原创]Ubuntu系统中GRUB的修复
- [转]使用Ubuntu Live CD修复Grub引导教程
- Ubuntu10.04光盘启动重新安装GRUB到主引导区MBR修复Linux启动
- Windows、Ubuntu双系统重装windows系统后grub引导的修复及默认启动项的修改
- Windows、Ubuntu双系统重装windows系统后grub引导的修复及默认启动项的修改
- ubuntu安装光盘修复grub-rescue引导失败问题
- Ubuntu和windows系统修复GRUB
- ubuntu grub修复
- 修复ubuntu的grub的方法
- U盘安装Ubuntu10.04出现Grub问题修复
- Ubuntu 16.04 grub rescue 模式下修复 grub
- dapper grub error (试着修复grub错误,转自ubuntu 的list)
- 安装Ubuntu 开机出现 grub rescue> 终端模式修复方法
- win7和ubuntu10.10双系统grub修复
- Ubuntu 开机出现 grub rescue> 终端模式修复方法