时代已经进步了,grub2经过近五年的发展,已经非常成熟而且强大。
在过去的很长时间里,在ubuntu下硬盘安装windows都是一件非常困难而且繁琐的工作
但是现在,有了最新的grub2,让这一切都变的非常简单。
在介绍基本的方法和步骤之前,先来普及一个关于grub2的新特性,这个新特性事实上在前几个版本的ubuntu中已经出现,
只是很少有人注意到。
在现在的grub2中,出现了一种除chainloader以外的引导windows的新机制:ntldr。
以下grub命令用来利用ntldr引导windows:
代码:
grub:>set root=(hd0,3)
grub:>insmod ntfs (or fat)
grub:>ntldr /bootmgr
grub:>boot
简单的四行就可以调用该死的bootmgr,引导windows。
重点在于,无论是引导win系统,还是引导win安装程序,需要运行的都是这个该死的bootmgr,于是现在一切都简单化了。
下面进入正题:如果在ubuntu下硬盘安装windows 7
第一步 下载win7安装镜像,在ubuntu下用parted或其他分区工具建立一个ntfs分区,这个分区在下一步会用到。
第二步 下载win7安装镜像文件,将其挂载,然后将其中全部内容复制到新建的ntfs分区中。
第三步,重启计算机,在bios画面闪过后持续按shift,进入grub2的引导菜单
第四步,按c进入grub2编辑模式,按顺序输入前面的引导命令。
然后,你会看到win7安装引导程序已经启动了,我刚刚装完了win7,从iso复制文件到安装完成,整个过程大概15分钟。
补充几件事:
一、新建的ntfs分区用来放置win7的安装文件,因此在你新建分区的时候要考虑到以后完整的分区结构,比如说把这个分区
当作你的D盘,这也意味着从方便的角度,在第一步中你应该顺便建立好win7的安装分区,也就是你的C盘。
二、新建的windows分区也可以是fat32分区,看个人喜好
三、关于grub2,很多人似乎还不能熟练掌握grub命令,对于ubuntu用户而言这是不应该的。如果你实在无法确定新建的ntfs
分区到底在哪里,你可以使用grub2的ls命令,示例:
代码:
grub:>ls (hd0,3)/
grub会列出(hd0,3)的全部内容,当你看到某个分区内存在bootmgr文件,你就找到它了。
四、事实上grub2有更聪明的方法找到bootmgr,
代码:
grub:>search --file --set=root --no-floppy /bootmgr
这样grub会自动寻找到根目录下的bootmgr并把其所在分区设为root