win8.1硬盘安装ubuntu14.04双系统
在网上找了很多方法都失败了,原因是大多数方法都是用mbr方式安装的,如grub4dos,easybcd。以至于连自己都怀疑win8能不能用硬盘安装,差点就去买个u盘来安装了,就在打算放弃的时候在ubuntu论坛里看到了一个置顶的帖子,对win8硬盘安装讲的很详细,终于按照他的方法把ubuntu装上去了,现在讲讲自己安装中遇到的坑。
参考:http://forum.ubuntu.org.cn/viewtopic.php?f=77&t=467746
在Win8基础上加装Ubuntu,得先搞清楚Win8是以何种方式安装的
Win8的正规安装方式有4种,ubuntu的正规安装方式也是这4种:(双系统理论上提供4*4种正规安装方式)
A、BIOS+MBR 传统安装方式
B、CSM+MBR 注:CSM是指UEFI主板,且开启CSM,这种办法就感觉UEFI不存在一样
C、CSM+GPT 本文重点讨论的部分,难度不低
D、纯UEFI+GPT 注:纯UEFI是指UEFI主板,且关闭CSM,或者主板没有CSM
Apple、DELL、HP、Thinkpad等部分机型为应对16种正规安装方式,提供了阵容强大的混合启动方案,包括完善的CSM支持模块、GPT+MBR双硬盘混合启动。
台系主板显得功能少一些:
华硕UEFI主板Z97-DELUXE不提供A方式,仅提供B、C、D三种方式。
华擎UEFI主板B85 Killer不提供A方式,仅提供B、C、D三种方式。
技嘉UEFI主板GS-B85-HD3_v2.1_c不提供D方式,能够提供A、C两种方式,特点:技嘉安装比较容易。
微星UEFI主板Z87 MPOWER MAX不提供B或C方式,仅提供A、D两种方式,缺点:微星UEFI安装方式难度过高。
在Win8基础上加装Ubuntu,最为关键的是:你得知道Win8是装在MBR上还是装在GPT上?
在Win8下安装傲梅分区助手5.6.1专业版或服务器版,一打开它就可以见到GPT或者MBR字样。
a.如果分区助手查出原有Win8系统盘是安装在MBR字样上,那么,建议ubuntu装MBR方式,见2楼。b.如果分区助手查出原有Win8系统盘是安装在GPT字样上,那么,建议ubuntu装GPT方式。
其次,在Win8基础上加装Ubuntu,你得知道电脑本身有没有开启UEFI功能?或者根本就是老式BIOS主板。
第一检查方法:如果查出原有Win8系统盘是安装在GPT上,那么,基本可以确认为UEFI主板,并且已经开启UEFI功能。
第二检查方法:进一步确认,需要进入主板固件设定界面,看一下它有没有UEFI字样。如果没有UEFI字样就是老式BIOS主板。如果有UEFI字样,还需要确认它有没有开启这个功能,并且检查CSM是否开启。
关键的UEFI预备知识
U1:开机进入Windows 8,第一时间关闭Fast Startup!如果不关闭它,装Ubuntu+Win双系统会害死Windows 8。Fedora不关闭Fast Startup,会封锁NTFS分区。
U2:关闭主板的快速启动,可能会叫Fast Boot或者Ultra Fast之类,关闭Intel Smart Response Technology (SRT)
U3:现在是2015年,当前超过90%以上的独立显卡不支持UEFI GOP。
a.如果你的独立显卡不支持UEFI,请不要关闭CSM,否则,Win8跟ubuntu都不能启动。
b.如果你的独立显卡不支持UEFI,请不要开启Secure Boot,否则,Win8跟ubuntu都不能启动。
这是因为UEFI规定CSM与Secure Boot互相冲突,不能同时开启。
U4:ubuntu官方强烈建议单块硬盘不要做两个EFI分区(又叫ESP分区),It is strongly recommended to have only 1 EFI partition per disk.
GPT时代硬盘安装思路
预装Win8电脑不带光驱,且确定Win8建基于纯UEFI+GPT方式,且安装者手头上没有U盘,直接安装Ubuntu14.04.1 x64
讲一下我的预装环境,安装的是正版Windows 8.1 update x64,请注意:当你建立一个50G分区的时候,微软会帮你建立四个分区(在真正的纯EFI模式)。
Step1:第一时间关闭Fast Startup快速启动。
Step2:下载ubuntu-14.04.1-desktop-amd64.iso,将其复制到C盘,Grub2理论支持NTFS。
Step3:安装前,通过傲梅分区助手,可以看到C盘排第4,FAT格式的D盘排第5,(排第几不能通过微软自带的磁盘管理查看,因为它隐藏了MSR分区)。
Step4:以管理员身份,利用mountvol命令挂载ESP分区,将EFI分区设定为M盘,此时,ESP分区仍未能直观显示。(注:如果不超过两个ESP分区,不需要动用diskpart。)
代码:
mountvol M: /s
Step5:打开任务管理器->详细信息,记下explorer.exe名称,选中explorer并把它结束。
Step6:在任务管理器上,点文件->运行新任务explorer,必须勾选“系统管理权限”,确定,打开“这台电脑”即可看到esp分区。此时已经具备写权限,我在efi目录下新建了一个文件夹,重启后它会自动消失。请不要删除或替换任何文件,否则,Win8将无法启动。
Step7:下载最新的Grub2 for Windows 8 ,将其解压存放至C盘下,并更名为grub2
Step8:通过cd命令跳转到grub2目录下,
代码:
cd c:\grub2
Step9:安装命令部分比较艰辛,主要参考archlinux中文维基解释,后来,又参考了无忧上的一位高人写的方法,现在用的就是1698写的安装方法。
超过90%的UEFI主板为64位固件,我的主板就是64位,使用如下安装命令,M: 表示挂载的盘符号,此方法仅适用于64位主板:
代码:
grub-install --target=x86_64-efi --efi-directory=M: --bootloader-id=Boot --boot-directory=M:/EFI --modules="part_gpt fat normal"
命令执行成功之后,打开ESP分区,可以看到EFI文件夹下多了一个grub文件夹(需要做一个grub.cfg存放在这里),Boot文件夹下多了一个grubx64.efi。
Step10:需要手动配备开机选择菜单grub.cfg文件,因为Windows版本缺少grub-mkconfig.exe这个文件。
讲到第10步,需要手动配备开机选择菜单grub.cfg文件,存放位置见上篇。本以为成功进入Grub2敲两条命令就ok了,但UEFI的安装命令不一样,而且,还需要考虑显卡的问题,否则,将会进入 Blind Mode摸黑状态!
代码:
menuentry "14.04.1 LiveCD (hd0, gpt5) insmod efi_gop efi_uga cyberfung is Here"{
insmod efi_gop
insmod efi_uga
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt5)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
万能grub .cfg.txt”改为"grub .cfg"代码:
menuentry "Boot Windows 8.1_update x64 with GPT" --class windows --class os {
search --no-floppy --file --set=root /EFI/microsoft/boot/bootmgfw.efi
chainloader /EFI/microsoft/boot/bootmgfw.efi
}
menuentry "System restart" {
echo "System rebooting..."
reboot
}
menuentry "System shutdown" {
echo "System shutting down..."
halt
}
menuentry "14.04.1 LiveCD (hd0, gpt2) insmod all_video" {
insmod all_video
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt2)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "14.04.1 LiveCD (hd0, gpt3) insmod all_video" {
insmod all_video
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt3)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "14.04.1 LiveCD (hd0, gpt4) insmod all_video Huggo is Here" {
insmod all_video
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt4)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "14.04.1 LiveCD (hd0, gpt5) insmod all_video Huggo is Here" {
insmod all_video
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt5)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "14.04.1 LiveCD (hd0, gpt2) insmod efi_gop efi_uga"{
insmod efi_gop
insmod efi_uga
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt2)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "14.04.1 LiveCD (hd0, gpt3) insmod efi_gop efi_uga"{
insmod efi_gop
insmod efi_uga
set isofile="/ubuntu-14.04-desktop-amd64.iso"
loopback loop (hd0,gpt3)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "14.04.1 LiveCD (hd0, gpt4) insmod efi_gop efi_uga cyberfung is Here"{
insmod efi_gop
insmod efi_uga
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt4)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
menuentry "14.04.1 LiveCD (hd0, gpt5) insmod efi_gop efi_uga cyberfung is Here"{
insmod efi_gop
insmod efi_uga
set isofile="/ubuntu-14.04.1-desktop-amd64.iso"
loopback loop (hd0,gpt5)/$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash --
initrd (loop)/casper/initrd.lz
}
不过我笔记本明明只安装了一个硬盘,结果只有用(hd1,gpt5)才能找到c盘。
进入linux后,输入命令sudo umount -l /isodevice卸载ISO镜像文件后,即可跟光盘安装一样了。
总结
这样安装很麻烦,还不如用usb安装,上面仅仅给没有u盘的同学提供一个硬盘安装的方法。
win8.1硬盘安装ubuntu14.04双系统的更多相关文章
- win8硬盘安装Ubuntu14.04双系统參考教程
硬盘安装,无需光盘.U盘.win8为主.Ubuntu14.04为辅.可将Windows或Ubuntu设置为开机默认启动项.在Ubuntu下可查看.操作Windows系统下的文件:适用于安装和14.04 ...
- Windows8.1硬盘安装Ubuntu14.04双系统参考教程和多硬盘的注意事项[画画]
硬盘安装.无需光盘.U盘:Win8.1为主,Ubuntu14.04为辅,可将Windows或Ubuntu设置为开机默认启动项.在Ubuntu下可查看.操作Windows系统下的文件:适用于安装和14. ...
- Windows 8.1 硬盘安装 Ubuntu14.04 双系统参考教程及注意事项
硬盘安装,无需光盘.U盘:Win8.1为主,Ubuntu14.04为辅,可将Windows或Ubuntu设置为开机默认启动项:在Ubuntu下可查看.操作Windows系统下的文件:适用于安装和14. ...
- win8下硬盘安装Ubuntu12.04双系统成功记录
一开始是在windows下VirtualBox虚拟机中搞了一个Ubuntu玩,时间一长,感觉卡的厉害,浪费时间,那就装个双系统! 在win8下磁盘管理中的最后一个盘中压缩出20G左右的空闲硬盘分区: ...
- Win7/Win8/Win10下安装Ubuntu14.04双系统 以及常见问题
整理自网络. 1. 制作镜像 将ubantu镜像刻录到优盘(我使用UltraISO刻录,镜像下载地址:链接: http://pan.baidu.com/s/1bndbcGv 密码: qsmb) 2. ...
- Windows7下U盘安装Ubuntu14.04双系统
1.准备工作 (1)下载Ubuntu14.04系统镜像文件,Ultraiso,EasyBcd,分区助手 Ubuntu14.04地址:http://www.ubuntu.com/download/des ...
- Win7 下安装ubuntu14.04双系统
下面介绍一下利用wubi在Windows中安装Ubuntu 14.04的教程,或者说安装方法和注意事项. 方法一:直接下载wubi.exe 方法二:直接下载ubuntu-14.04-desktop- ...
- win10安装Ubuntu14.04双系统
1 制作镜像 UltralISO刻录镜像到U盘,下载地址:http://pan.baidu.com/s/1o7JpthS 2压缩空间给Ubuntu安装 使用windows自带的压缩(磁盘管理) 3安装 ...
- Windows8.1和Ubuntu14.04双系统卸载Ubuntu參考教程[图]
我之前编写并公布了<Windows8.1安装Ubuntu14.04双系统參考教程及双硬盘注意事项>这篇教程,而本文提供的卸载Ubuntu方法适用于这篇教程,其它方法安装的Ubuntu可适当 ...
随机推荐
- 避免重复造轮子的UI自动化测试框架开发
一懒起来就好久没更新文章了,其实懒也还是因为忙,今年上半年的加班赶上了去年一年的加班,加班不息啊,好了吐槽完就写写一直打算继续的自动化开发 目前各种UI测试框架层出不穷,但是万变不离其宗,驱动PC浏览 ...
- Unity3d学习 相机的跟随
最近在写关于相机跟随的逻辑,其实最早接触相机跟随是在Unity官网的一个叫Roll-a-ball tutorial上,其中简单的涉及了关于相机如何跟随物体的移动而移动,如下代码: using Unit ...
- 关于ubuntu实机与虚机互相copy
我的开发环境是在ubuntu上的,但是ubuntu上没有官方支持的QQ,有些不太方便,所以在上面虚了一个Win7(先是win10,但是win10最新版本太坑了,不说了),不过经常会出现复制文件,或者文 ...
- 在Ubuntu 16.10安装mysql workbench报未安装软件包 libpng12-0错误
1.安装mysql workbench,提示未安装软件包 libpng12-0 下载了MySQL Workbench 6.3.8 在安装的时候报错: -1ubu1604-amd64.deb 提示: ...
- 【SSM框架】Spring + Springmvc + Mybatis 基本框架搭建集成教程
本文将讲解SSM框架的基本搭建集成,并有一个简单demo案例 说明:1.本文暂未使用maven集成,jar包需要手动导入. 2.本文为基础教程,大神切勿见笑. 3.如果对您学习有帮助,欢迎各种转载,注 ...
- 前端学HTTP之安全HTTP
前面的话 HTTP的主要不足包括通信使用明文(不加密),内容可能会被窃听:不验证通信方的身份,有可能遭遇伪装:无法证明报文的完整性,有可能被篡改 基本认证和摘要认证能够使得用户识别后较安全的访问服务器 ...
- ES6的一些常用特性
由于公司的前端业务全部基于ES6开发,于是给自己开个小灶补补ES6的一些常用特性.原来打算花两天学习ES6的,结果花了3天才勉强过了一遍阮老师的ES6标准入门(水好深,ES6没学好ES7又来了...) ...
- node中的Stream-Readable和Writeable解读
在node中,只要涉及到文件IO的场景一般都会涉及到一个类-Stream.Stream是对IO设备的抽象表示,其在JAVA中也有涉及,主要体现在四个类-InputStream.Reader.Outpu ...
- pdo的使用
PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口. PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据. PDO随 ...
- 深入Java虚拟机--判断对象存活状态
程序计数器,虚拟机栈和本地方法栈 首先我们先来看下垃圾回收中不会管理到的内存区域,在Java虚拟机的运行时数据区我们可以看到,程序计数器,虚拟机栈,本地方法栈这三个地方是比较特别的.这个三个部分的特点 ...