uefi引导mbr分区表的win7,并与ubuntu18组双系统

        最开始,笔记本之前装的是win7旗舰版。win7安装默认使用Legacy引导mbr分区表。后来,想装个ubuntu组双系统,目前的版本是ubuntu18.04。机器有两块硬盘,一个ssd作为系统盘,一个hdd作为存储盘。我把hdd压缩了一些空间出来,准备在这些空间里安装,遇到的问题如下:

1、下载镜像文件,用UltraISO作个u盘启动盘,发现只能用uefi引导启动。

2、安装过程中,要分出一个EFI的系统分区,否则会安装失败。

3、安装完重启,直接进ubuntu,改回Legacy只能进win7。解决办法:(1)进win7,在启动盘ssd上压缩100M空间,新建主分区,分配盘符,文件系统fat32.  (2)因为win7的引导修复工具bcdboot不能安装EFI引导文件,所以可以复制win8或win10的bcdboot.exe和bcdedit.exe文件(在\windows\system32里),重命名bcdboot1.exe和bcdedit1.exe复制到win7的相同目录下。然后,管理员权限打开cmd,

并输入bcdboot1 c:\windows /s e: /f UEFI /l zh-CN。(e: 假设是那100M的盘符)这样就安装了EFI的引导文件。

(3)进入linux系统用grub2更改启动的选项:

修改/etc/default/grub (详细配置https://blog.csdn.net/ltb000/article/details/80956319),然后 sudo update-grub

可参考《鸟哥linux私房菜:基础篇》和这篇博客https://blog.csdn.net/user_longling/article/details/44872727。

这样就能引导双系统了。还有启动菜单顺序和/etc/grub.d/里面的文件前面的数字的从小到大的排序的顺序一致。比如,通过修改40_custom文件添加的windows启动菜单项,把文件名前面40改成07就排第一个了。

40_custom文件修改如下:

menuentry "Windows7" {
    insmod chain
    insmod fat
    set root=(hd1,msdos2)
    chainloader /EFI/Microsoft/Boot/bootmgfw.efi

}

另外,uefi启动win7的激活会失效,所以我只能买激活密匙激活了,大家有什么解决办法,可以给我留言,我会补充出来的。

另外,还有一些参考:

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=303679

http://bbs.pcbeta.com/viewthread-1536880-1-1.html

 

你可能感兴趣的:(Linux)