重装Vista或Windows7后,Ubuntu无法启动的解决方案

http://forum.ubuntu.org.cn/viewtopic.php?f=139&t=178189&sid=687746e8cfd169f1f5caeea42dd31ca1&start=15

其实,vista、win7 尽管使用BCD,但也会读取boot.ini的内容(以兼容 xp 方式)。所以老办法仍然有效。
你可以在 C: 下自行建立一个 boot.ini 文件,写上:
[boot loader]
[operating systems]
c:grldr.mbr="grub4dos"
与 xp 不同的是,这对引号是必须的。并且必须用 grldr.mbr,然后把 grub4dos 压缩包里面的 grldr.mbr 以及 grldr 两个文件都放置在 c: 下即可。

也 无需从 linux 分区拷贝任何文件, grub4dos 认识所有的 linux 分区(只要你的 grub4dos 足够新),会自动找到并使用里面的 menu.lst(只要你没有在其他分区里放置 menu.lst 来干扰他的运作)。因此你自行建立了 boot.ini 并拷贝了 grldr 和 grldr.mbr 后就算完工了。需要移除的时候删除这3个文件就好了。



bcdedit /create /d "GRUB4DOS" /application bootsector  此时生成一个{id}
bcdedit /set {id} device partition=C:
bcdedit /set {id} path grldr.mbr
bcdedit /displayorder {id} /addlast

bcdedit  /create  /d  "NeoGrub boot loader"  /application  bootsector
这一步将产生一个ID,后面的{id}表示该ID
bcdedit  /set  {id}  device  partition=C:
bcdedit  /set  {id}  path  NSTNeoGrub.mbr
bcdedit  /displayorder  {id}  /addlast