ubuntu和windows7双系统,ubuntu系统启动项丢失的解决方案

微软FixIt 2010-11-04

先说一下我的电脑上,实际安装了3个系统,xp,win7,ubuntu,但因为xp的系统启动项由win7管理着,所以一直都没出问题(只要win7不出问题),本来3个系统好好的(ubuntu是默认进入的系统,因为之前是先装xp,再装win7,最后装的ubuntu10.10),但因为出了点问题,需要重装win7,于是我就重装了,但是重装之后发现ubuntu的系统启动项消失了,而且在win7下也看不到ubuntu所在的系统盘。

这是因为我之前是硬盘安装的ubuntu(注意,非wubi,网上很多讲找回wubi启动项的方法在这里不适用),我装的ubuntu10.10,网上的解决方案是找个livecd,进入系统再修复grub(ubuntu的系统启动管理工具),但我只有9.04的cd,所以就将就用了。

1,先从cd启动进入ubuntu的试用系统,打开终端;

2, df  命令查看一下现在所有的硬盘大小,这一步主要是为了帮助你找到每一个盘所对应的sda号;比如我记得我的ubuntu当时分了100M的boot,27G的/空间,所以一下就认出了ubuntu所在的盘符

先把之前安装的ubuntu系统挂载到livecd的系统里:

cd mnt

mkdir ubuntu

mkdir ubuntu/boot

mnt /dev/sda9  /mnt/ubuntu                     (sda9是我的ubuntu所在盘符,那个26G空间)

mnt /dev/sda7 /mnt/ubuntu/boot             (sda7是我ubuntu的boot空间,100M)

mnt -o bind /dev /mnt/ubuntu/dev

source /etc/profile                                       (这个命令,我也不太确定管不管用,但反正我是执行了

然后,现在相当于之前的ubuntu系统已经加载到livecd里了,我们可以直接进入之前的系统,一个神奇的命令:

chroot /mnt/ubuntu

登录

login

用户名

密码

(也可能不需要用户名密码,直接以root‘身份登录了,登录的时候主要看终端提示符的前缀,root@ubuntu;这个就算登录成功了,)

登录

现在,执行命令,安装grub:

grub-install /dev/sda

重启(看网上说,重启之后会进入grub界面,然后需要引导系统进入之前的ubuntu大, 我重启之后久违的系统启动项就直接出现了,不过第二个选项变成了recovery mode)

3,进入ubuntu系统,运行 sudo update-grub,修复之后就和以前一模一样了。

当然,在第二步里,我还执行了其他一些命令,不过都出错了,所以就不写在上面,也不知道这些命令对我回复grub有没有帮助,列在下面:

grub-install /dev/sda5    (sda5是我win7所在的盘符,但安装grub失败)

update-grub  (直接在livecd里执行这个命令,不知道对回复grub有多大帮助,但如果实在不行,我觉得这个命令执行一下也没坏处)

我所参考的一篇文章:

http://www.linuxdiyf.com/viewarticle.php?id=185169

相关推荐