基于UEFI引导的win8.1和ubuntu13.10双系统安装方法_第1页
基于UEFI引导的win8.1和ubuntu13.10双系统安装方法_第2页
基于UEFI引导的win8.1和ubuntu13.10双系统安装方法_第3页
基于UEFI引导的win8.1和ubuntu13.10双系统安装方法_第4页
基于UEFI引导的win8.1和ubuntu13.10双系统安装方法_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于UEFI引导的win8.1和ubuntu13.10双系统安装前言 UEFI引导的出现乃至变得火热让系统安装的问题变得复杂,尤其是在windows横空出世并针对URFI优化更是让其与ubuntu组成的双系统安装变得情况百出(顺带哀悼下由此退出江湖的wubi安装)。最近花了一天多的时间完成了win8.1与ubuntu13.10基于UEFI引导的安装,在过程中遇到了一些问题,理解了一些硬件和软件架构,摸索了一个不算完美的解决方案,在此整理,希望能够帮助到需要的人。实验环境:电脑——联想Y510P支持UEFI启动,N卡Windows——Windows8.1简体中文64位Ubuntu——Ubuntukylin13.10AMD64位UEFIboot与Legacyboot基本输入/输出系统(BIOS)是硬件和操作系统之间的一层。UEFI与Legacy都是系统引导的技术,都是实现电脑在硬件开机之后找到操作系统过程中的引导。Legacyboot是传统的引导方式,其引导基于驱动器上的主引导记录(MBR)。通俗的解释,一次系统启动的流程为,硬件开启→BIOS自检→读入MBR→读取激活主分区→启动系统。一些蛋疼的人们认为Legacyboot有一些他们不能容忍的缺点:无法直接引导超过2.2T的驱动器缺乏安全性验证启动时间慢于是他们加强了BIOS的功能,设计了UEFIboot模式(仅针对64位系统),可以解决上述的问题,于是MBR被抛弃了,引进了一个新的引导分区EFI,采用全局唯一标识分区表GPT来引导分区,下图中可以在硬盘管理中看到EFI系统分区。另一方面,UEFIboot也提供了驱动、系统信息的临时储存,用于加快开机。在引导的时候也提供了SecureBoot,禁止加载未知的系统(正中Windows下怀)。UEFIboot与Legacyboot对于我们安装双系统的影响是两个系统需要使用同一引导模式。如果win8.1是按照UEFI引导的方式安装的,ubuntu也一定要是UEFI引导,反之亦然。而ubuntu从11.04开始就支持UEFI引导,版本越新,兼容性越好。BIOS的设定与win8.1的安装 BIOS要做的事情只有两个,1、打开UEFIboot,2、禁用SecureBoot。一般前者的设置在BIOS-boot中,后者的设置在BIOS-secure中。 前者是保证我们装的系统走的是UEFI的引导,不需多说。后者因为如果使用了SecureBoot,win8.1会加密EFI分区,ubuntu作为一个未知的系统将无法安装无法引导。设置完成后,可以在powershell中检查secureboot是否关闭(如果此时有win8系统运行的话),切记要以管理员运行,出现下图的false代表成功。如果要是出现下图的情况,您可以不用按照这个教程来做,您的电脑不支持UEFI。没想到的是,我随手打开电脑,电脑在Legacyboot失败后进入UEFI引导,然后进入了ubuntu并成功的运行起了图形界面。万万没想到,我最后还是装好了win8.1和ubuntu的双系统,在之前的过程中遇到的各种错误都找到了原因和解决方案。对于最后一个错误,找到了一个解决方案但是找不到原因。不过除了开机画面会出现两遍,也没什么不好。以上就是双系统安装的全过程,耗时一天多,参考资料很多,有用的如下:参考资料[1]UEFIboot和Legacyboot区别/giliwala/item/761da2f79dad706b3d1485fa[2]安装win8和ubuntu12.04双系统/koffuxu/article/details/8845922[3]InstallingUbuntuQuicklyandEasilyviaTrialandError/community/UEFI#Identifying_if_the_computer_boots_the_HDD_in_EFI_mode[4]纯小白EFI引导下安装win8+Ubuntu双系统/viewtopic.php?t=446557[5]ubuntu安装时N卡黑屏处理/sunjiajiang/article/details/7745408/koffuxu/article/details/8845922在经历了非常折磨的一个多星期之后(/p/2804072264?pid=44194854181&cid=0#),终于完成了windows8.1和ubuntu的双系统。立贴记录经过,帮助Lenovo和Sony的童鞋们,摆脱纠结。

0.开篇首先说明两个问题

-之所以搞了这么久,是因为Lenovo锁定了EFI启动的文件路径,ubuntu安装在EFI分区的文件会被直接无视。所以本文最后会提到替换efi文件,参考了(/thread-3141134-1-1.html),但是不完全一样。

-预装的Windows8.1是GPT分区+EFI引导,所以ubuntu必须是EFI方式安装,原因如下:

-Legacy方式安装的ubuntu不会在启动grub时挂载EFI分区,而windows8的启动文件是在EFI分区里的,所以Legacy方式的ubuntu是不能引导EFI方式的Windows8的。有的话请告诉我,谢谢!

1.BIOS设置

-关闭secureboot,这个是微软的验证,用于禁止其他操作系统的启动。虽然ubuntu12.10开始支持secureboot,但是显然我手头的联想并没有更新License。如果不关闭secureboot,最终(已经安装ubuntu,并替换引导文件)会有下面这个华丽的界面。

-Thinkpad启动时按F1(或者按Enter,再按F1),就可以进入BIOS。在Security下,找到secoreboot,Disable就可以了。

-在Start选项下,默认UEFIOnly,不用改,因为ubuntu就是EFI的。CSMSupport是No,因为不用兼容Legacy。官网上说需要选Yes,但是我的机器上不用。

3.安装ubuntu

-Windows下刻录ubuntu13.1064位(32位的不支持EFI)到USB里。我用的是UltraISO,可以下到绿色版。注意UltraISO直接打开ubuntu的iso文件可能不正常,会只有EFI分区,没有数据分区。解决办法是:a)在ubuntu的iso上点右键,打开方式,ImageMount什么的,也就是把这个iso加载成虚拟光驱。b)然后在UltraISO里面,选打开光驱,这样加载的就是正确的了。c)某个菜单下选“写入硬盘镜像”,写到USB里就行了。

-开机的时候按F12,打开BootMenu,选USBHDD

-看到EFI模式的grub启动菜单,注意EFI模式的grub和Legacy的grub是不一样的。我们要用EFI模式的。

EFI:

Legacy:

-选择Tryubuntu,这步是为了找到EFI分区到底是那个,已知的话可以直接选Installubuntu。

-进入之后,打开gparted:

-这里看到,我的/dev/sda2是预装的EFI分区。特点:FAT32格式,Flags是boot

-怎么确认呢?打开terminal(Ctrl+Alt+t),像下面这样,建一个文件夹,把我的sda2挂载出来,然后用ls看到这个分区里面有BOOT,有EFI,说明确实是我的EFI分区。记住了,我的EFI分区是/dev/sda2,你需要确定你自己的。如果gparted识别了你的USB,那么你的硬盘可能会变成sdb。

-接着就打开InstallUbuntu,在下面这个页面,ubuntu问你怎么安装,请选Somethingelse。

-关于分区注意:刚才那个EFI分区(我的是/dev/sda2),需要Useas:EFIbootpartition,如果你的显示Type不是efi,需要点这个分区,点change,像下面这样修改。

-然后给ubuntu分配空间,主要有两部分:a)我的/dev/sda5,格式是ext4,挂载到/。这个首先要有freespace,然后点+,然后选大小(记得留swap的空间),选主分区,从起始点开始,选挂载到/。b)剩下的空间(4G-8G,一般不小于你的内存大小),新建一个swap分区(我的是sda7):选大小,选逻辑分区,从起始点开始,挂载到swap。

-三个条件:有efi,有/,有swap,就可以安装了。这里/下包含了/boot,/home,/opt等等,也有人为这几个单独建立分区,可以的,不过我建议等你懂了之后下次再试吧。

4.安装完之后,系统重启,一般来说会直接进入windows,就好像ubuntu不存在一样。原因如下:

-Lenovo支持EFI,但是不支持自动检索可用的启动项,所以虽然EFI分区里面有ubuntu的启动项,但是会被无视。

-启动顺序:

a)/EFI/Boot/LenovoBT.EFI,显示下面的logo:

b)/EFI/Boot/bootx64.efi,加载windows的bootloader

c)/boot/efi/EFI/Microsoft/Boot/bootmgfw.efi,启动windows

-这样3步之后,完全没ubuntu什么事。所以我们要打断这个顺序。

5.再次用USB启动,Tryubuntu,打开terminal。

a)创建这个文件夹:

sudomkdir/mnt/efi

b)挂载EFI分区(记得改成你自己的)到刚才的文件夹里:

sudomount/dev/sda2/mnt/efi

c)打开一个Administrator权限的文件管理器:

sudonautilus/mnt/efi

d)打开EFI/Boot,看到里面有一个bootx64.efi,把它改名成bootx64.efi.old,以后不用它了

e)打开EFI/ubuntu,里面有一个grubx64.efi,这个是grub的启动文件,把它复制到刚才的EFI/Boot里面,改名成bootx64.efi,顶替Windows的loader。

-显然,这样开机的时候,加载bootx64.efi时,实际加载了grub,这样就不会直接进入windows了。

6.开机时看到了grub,但是里面没有windows8。

-进入ubuntu,打开terminal,输入

sudoupdate-grub2

-看到下面这样:

neil@neil-ThinkPad-T440s:/boot/efi/EFI/Boot$sudoupdate-grub2

Generatinggrub.cfg...

Foundlinuximage:/boot/vmlinuz-3.11.0-12-generic

Foundinitrdimage:/boot/initrd.img-3.11.0-12-generic

FoundWindowsBootManageron/dev/sda2@/EFI/Microsoft/Boot/bootmgfw.efi

AddingbootmenuentryforEFIfirmwareconfiguration

done

-发现上面的windowsbootmanager直接被找到了。这也就是为什么之前替换了bootx64.efi,而不是bootmgfw.efi。我们需要留着bootmgfw.efi来启动windows。

7.到此,双系统已经可以正常工作了。EFI分区会自动挂载到/boot/efi下面,这样就是为什么EFI模式的ubuntu可以启动windows,而Legacy模式的ubuntu不能,因为Legacy模式的ubuntu不会挂载这个分区。

-如果有童鞋想要让windows在grub的第一位,可以这样打开grub的顺序文件夹:

sudonautilus/etc/grub.d/

-把30_os-prober改成01_os-prober,‘01’可以是别的数字,只要是比header靠后,比其他考前就行。

-然后更新grub2:

sudoupdate-grub2

-会发现WindowsBootManager被排到前面了:

neil@neil-ThinkPad-T440s:~$sud

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论