解决重装XP后Linux引导菜单GRUB丢失
一直都是用双系统XP+Linux Fedora 15
今天XP架构arm的开发环境最后一步,因为卸载掉CodeWarrior for freescale Developer 然后安装 CodeWarrior for ARM Developer Suite, 然后又安装其他小软件的时候,XP被搞崩溃了。伤心之余,从装XP。
重装完之后,肯定是GRUB没了,于是,以为安装grub很简单,可是搞了我2个小时。才发觉,学知识是:耐心+时间+翻阅资料,才是最重要的。既然学习了Linux,当然要在Linux的环境下搞定,虽然Grub4DOS也可以很容易解决,复制一下就可以。
讲述一下如何解决的:
1.下载fedora15 liveCD(http://fedoraproject.org/get-fedora)
2.刻录或者USB引导(USB引导->插入U盘->安装UltraISO->启动->写入硬件映像->USB-HDD->等待完成->重启后del进入BIOS->advace 选择 frist boot USB-HDD)
3.进入liveCD的fedora terminal
#su -l
#fdisk -l(有root权限才能查看)
#mkdir /mnt/sdaX(新建一个文件夹挂在硬盘)
#mount /dev/sdaX /mnt/sdaX(挂在在fdisk -l看到linux的硬盘)
#mount /dev/sdaX /mnt/sdaX/boot (如果没 /boot 单独分区这步跳过)
#grub-install --root-directory=/mnt/sdaX /dev/sda(这是安装grub到/mnt/sdaX上面)
#提示大概是:grub安装成功,没有错误
#请你清查一下是否收到正确的配置
(这一步提示非常重要,没有出现类似这样英文的提示,那么肯定是配置错误,从新检查上面得地址分配有没有误)
#cd /mnt/sdaX/boot/grub/(移动到刚才安装的grub目录下,看看安装是否成功)
#ll
这里要看一下有没有menu.lst和stage1,stage2。(如果有则成功)
第二种情况:
4.没有出现menu.lst。那么要进行下面配置,但是一般以前你linux上有grub引导一般不会有此情况。
#grub(进入grub shell)
grub> find /boot/grub/stage1
(hd0,2)
grub> root (hd0,6)(这是/boot所在的分区)
grub> setup (hd0) (把GRUB写到MBR上)
5.下一步配置menu.lst
#vi /mnt/sdaX/boot/grub/menu.lst
default=0#(模式0,启动第一个title)
timeout=5#(等待时间5s)
#splashimage=(hd0,2)/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.11-1.1369_FC4)
root (hd0,2)
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
initrd /boot/initrd-2.6.11-1.1369_FC4.img
title WinXp
rootnoverify (hd0,0)
chainloader +1
#reboot now