无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 65986|回复: 98
打印 上一主题 下一主题

[分享] sandy bridge平台uefi启动初体验,7-3更新: UEFI方式启动mbr硬盘上已有的win7 x64

  [复制链接]
跳转到指定楼层
1#
发表于 2011-4-16 16:42:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
早就听说今年开始,intel的所有新平台都采用UEFI平台了,不再用传统的bios。这两天搞了一台DEll的sb处理器的新本,刚拿到手便玩了一下UEFI。

开机F2进入bios,终于是传说中图形界面的bios了,可以直接用外接usb鼠标操作。图形界面倒是无所谓,全是虚的。现在有很多SB平台的bios界面仍旧是字符界面+键盘操作。找到启动设置的地方,有两个模式,一个是legacy一个是uefi。legacy模式就是传统的bios方式启动,可以选择启动设备,这个不多说了。

重点来看UEFI启动模式,不用再选启动设备了,直接窗口操作鼠标选择启动文件即可,还能手动编辑F12启动菜单。当然主板也支持自动扫描包含uefi启动文件的启动设备(比如64位的nt 6.x光盘),然后自动启动。主板的UEFI没有包含命令行模式的efi shell,我自己在网上找了一个EFI shell,放到u盘上,然后鼠标选择从这个.efi文件启动。注意,UEFI只支持读取FAT文件系统的设备上的文件。

进入EFI shell,感觉和dos差不多。有dir/ls,copy,move,rm,md等命令,还有一个类似于edit的文本编辑器,而且直接可以访问usb设备。不同点在于,efi shell下面的盘符不是abcd,而是fs0: fs1: fs2:等,可执行文件是.efi格式。我把64位win7的efi启动的文件拷贝到u盘,然后尝试执行bootmgr.efi,居然不能直接执行。过两天完整装一个UEFI启动的win7看一下uefi启动nt 6.x 64位版到底要那些文件。

之前我就提到过,x64的vista/win7/2008/r2原版光盘支持bios/uefi双平台启动。于是我刻了一张x64 win7的盘,放入光驱然后开机按F12,不出所料,启动设备菜单上光驱的条目出现了bios和uefi两项来启动进入winpe 3.0。选择UEFI方式启动pe 3.0 x64,和bios启动方式没什么不同,进入了pe 3.0。想安装系统,安装程序提示uefi方式启动只能安装到GPT分区表的硬盘上,暂时不想把硬盘转成GPT,否则之后麻烦多多。于是尝试手动在pe下灌了一个vhd,再用bcdboot生成启动菜单,依旧提示无法定位gpt的系统分区,手头暂时没有多余硬盘给我测试GPT。打算过两天再找个硬盘通过esata外接来测试gpt+uefi安装win7。

总而言之,efi启动方式革新很大,终于不用选启动设备了,启动过程和执行一个文件一样简单。至于图形bios,意义不大,纯粹是花哨。

大家pc机支持uefi启动的可以试一下这个efi shell shellx64.rar (207.25 KB, 下载次数: 2817)

4-19更新:利用硬盘或者u盘UEFI模式启动winpe 3.0 x64的方法,以下方法适用于mbr硬盘,也可以适用于u盘

1. 在FAT16/32分区中建立efi\microsoft\boot文件夹,把windows 7 64位系统中\Windows\Boot\DVD\EFI中的bcd文件放到此文件夹中
2. 建立sources文件夹,里面放入boot.wim
3. 建立boot文件夹,把boot.sdi放在该文件夹下
4. 把\Windows\Boot\EFI中的bootmgfw.efi放到根目录中(搞了半天,发现原来这个才是efi下直接可以执行的bootmgr,而不是那个bootmgr.efi)
在启动时指定执行bootmgfw.efi或者在efi shell下直接执行bootmgfw.efi即可

5-1更新:几个用于EFI shell的磁盘工具,包括diskpart,format以及chkdsk
来自:http://www.intel.com/technology/efi/diskutil_overview.htm
微软写的磁盘工具,和cmd中的差不多,但放在intel的网上给大家下载,这里贴出x64 efi shell下使用的版本 x64disk.rar (152.13 KB, 下载次数: 1214)

7-3更新: UEFI方式启动mbr硬盘上已有的win7 x64
今天试了一下,发现UEFI方式完全可以启动mbr硬盘上的win7,这样测试UEFI启动不需要在全盘格成GPT分区表了。而且一个win7 x64系统可以同时用bios和uefi两种方式启动,对于已有的64位win7系统,进行以下操作就可以用uefi方式启动了,而且不影响bios方式启动
1. 在FAT16/32分区中建立efi\microsoft\boot文件夹,在其中放入这个bcd文件 bcd.rar (4.58 KB, 下载次数: 1326)
2. 用bcdedit更改这个bcd中{default}的device和osdevice的盘符为windows所在分区盘符
3. 把\Windows\Boot\EFI中的bootmgfw.efi放到Fat分区根目录中

在启动时指定执行bootmgfw.efi或者在efi shell下直接执行bootmgfw.efi即可

uefi方式启动win7时,四个彩球没了,只有滚动条了

[ 本帖最后由 fujianabc 于 2011-7-3 22:32 编辑 ]

评分

参与人数 2无忧币 +25 收起 理由
zhczf + 5 赞一个!
jneny + 20 原创内容

查看全部评分

2#
发表于 2011-4-16 16:46:57 | 只看该作者
首先恭喜F用上sb平台,我现在比较关心grub4dos能否适应efi,否则grub4dos在后面的几年不能辉煌
回复

使用道具 举报

3#
 楼主| 发表于 2011-4-16 16:50:20 | 只看该作者
grub4dos属于legacy 方式启动的,在bios兼容模式下没问题。dos也可以在兼容模式下正常启动

至于efi模式下,可以用grub2,这个我还没试过,但感觉efi方式的grub2其实就是一种功能强大的efi shell而已
回复

使用道具 举报

4#
发表于 2011-4-16 16:56:15 | 只看该作者
未来几年里可能是burg loader比grub4dos流行。
回复

使用道具 举报

5#
 楼主| 发表于 2011-4-16 16:57:58 | 只看该作者
现在就是直接可用的.efi程序太少,否则uefi本身就可以做一个轻便的操作系统了
回复

使用道具 举报

6#
发表于 2011-4-16 17:01:29 | 只看该作者
以后的OS可以直接从uefi 获取驱动,以后不用去找驱动

现在只能先观望。

vboot基于grub2的原因可能是grub2前景更大,且有支持efi 的基础

[ 本帖最后由 zhhsh 于 2011-4-16 17:02 编辑 ]
回复

使用道具 举报

7#
发表于 2011-4-16 17:05:22 | 只看该作者
百度百科:
将不支持X86模式,而直接采用Flat mode(也就是不能用DOS了,现在有些 EFI 或 UEFI 能用是因为做了兼容,但实际上这部分不属于UEFI的定义了);

有一个发展64位的原因。
回复

使用道具 举报

8#
 楼主| 发表于 2011-4-16 17:24:03 | 只看该作者
所谓的efi系统不用装驱动,貌似只是早期的传闻,其实不是这样的。
看过别人的uefi系统安装贴,驱动安装和普通系统无差别。

UEFI本身就是64位的,那个efi shell感觉就像64位的dos,.efi程序也都是64位程序。至于32位的efi,苹果电脑可能是32位的efi 1.x
回复

使用道具 举报

9#
发表于 2011-4-16 20:17:53 | 只看该作者
今天刚有机会接触了一苹果的一款笔记本MACBOOK AIR,装WIN7。 刚开始直接启动的U盘PE,把分区全给干掉了。结果是装WIN7之后,开机 有很长的一个白屏。 后来又用 随机带的恢复U盘,重装了苹果系统,分了两个区,把苹果装在后面,然后又进PE把前面的分区重新分了,用GHOST把之前的WIN7还原到上面,正常启动。

苹果的本子好像不能进行BIOS设置操作,不像PC那样,可以进入BIOS进行设置。  默认的在硬盘最前面有一个200M的保护分区。
应该是GPT磁盘分区,在网上搜了一下说是 GPT-MBR混合磁盘。
回复

使用道具 举报

10#
 楼主| 发表于 2011-4-16 21:46:53 | 只看该作者
苹果的根本不是标准的uefi,而是某个低版本的efi。和pc机的uefi完全不兼容,苹果也懒得升级EFI

苹果的efi不支持uefi方式启动x64的vista/win7,pc机的uefi也不支持启动mac os。
回复

使用道具 举报

11#
 楼主| 发表于 2011-4-16 21:52:03 | 只看该作者
据说今年的新amd平台也全用UEFI了,包括已经出的bobcat apu的上网本以及将出llano apu平台。
推土机平台可能还是老的bios
回复

使用道具 举报

12#
发表于 2011-4-16 23:46:54 | 只看该作者
前段时间装了台ibm服务器,还可以网页访问等等,不过初始化启动比传统慢不少第一次接触也不是很熟悉呵呵。
回复

使用道具 举报

13#
 楼主| 发表于 2011-4-17 09:05:52 | 只看该作者
原帖由 yjd 于 2011-4-16 23:46 发表
前段时间装了台ibm服务器,还可以网页访问等等,不过初始化启动比传统慢不少第一次接触也不是很熟悉呵呵。

那个是服务器,自检都很慢。普通台式机和笔记本uefi平台自检比bios快
回复

使用道具 举报

14#
 楼主| 发表于 2011-4-19 08:45:21 | 只看该作者
更新:uefi模式启动winpe 3.0的方法
回复

使用道具 举报

15#
发表于 2011-4-19 09:28:31 | 只看该作者
fujianabc

大师总是有惊喜。收藏学习
回复

使用道具 举报

16#
发表于 2011-4-20 10:58:44 | 只看该作者
过几天新配电脑,试试。现收藏学习
回复

使用道具 举报

17#
发表于 2011-4-20 16:12:55 | 只看该作者
UEFI偶在HP的小机上见过,PC的还没见到

楼主fj农行滴?省的吗
回复

使用道具 举报

18#
 楼主| 发表于 2011-4-20 20:35:41 | 只看该作者
原帖由 a2003a 于 2011-4-20 16:12 发表
UEFI偶在HP的小机上见过,PC的还没见到

楼主fj农行滴?省的吗

随便搞一台sb平台的或者apu平台的台式机或者笔记本,基本都是UEFI的
回复

使用道具 举报

19#
发表于 2011-4-27 10:25:15 | 只看该作者
原帖由 fujianabc 于 2011-4-16 16:42 发表
更新:利用硬盘或者u盘UEFI模式启动winpe 3.0 x64的方法,以下方法适用于mbr硬盘,也可以适用于u盘

1. 在FAT16/32分区中建立efi\microsoft\boot文件夹,把windows 7 64位系统中\Windows\Boot\DVD\EFI中的bcd文件放到此文件夹中
2. 建立sources文件夹,里面放入boot.wim
3. 建立boot文件夹,把boot.sdi放在该文件夹下
4. 把\Windows\Boot\EFI中的bootmgfw.efi放到根目录中(搞了半天,发现原来这个才是efi下直接可以执行的bootmgr,而不是那个bootmgr.efi)
在启动时指定执行bootmgfw.efi或者在efi shell下直接执行bootmgfw.efi即可



搞了个apu主板,昂达AE350,目前最便宜的apu主板。

http://bbs.znpc.net/viewthread.php?tid=6096&extra=page%3D1

EFI 模式下硬盘安装 win7 64位:

1,把 win7 64位版 iso 解开,释放到一个 FAT32分区(经测试,对分区的要求很宽泛,MBR/GPT 均可,是不是 第一分区/主分区 也无所谓)

2,用 imagex 解开 sources\boot.wim,取 \Windows\Boot\EFI中 的 bootmgfw.efi 放到上述 fat32 分区的根目录

3,启动efi shell,执行bootmgfw.efi,即可进入安装程序。


遇到一点小问题:安装过程中需要重启,可是重启后却起不来,只好从移动硬盘进入 EFI shell ,手动运行一下新安装的 win 7的 bootx64.efi ,才启起来,继续安装,完成后再一次重启,这次就能启动了。

我是让它自动分的区,看了一下,系统盘之前还分了两个区,一个ESP,一个MSR。



图中前三个分区就是 win7 安装程序自动分的。后面四个分区是我之前手动分的。

主板的启动项有点意思。传统的 BIOS 主板,启动入口是按设备来的,加一块硬盘,就多一个启动项。
而现在,没有增加硬盘,只是安装了一个 win7,主板 F11 菜单 以及 EFI BIOS 里面就多了一个 windows boot manager 项,想必这些信息是记录在 EFI 专属分区里的,应该有一套标准。

现在 主板 F11 菜单里,既有 BIOS 模式的启动项,又有 UEFI 模式的启动项 —— UEFI 很好的照顾了传统的 BIOS 启动方式,很平滑,很强大。

[ 本帖最后由 PTPTPTPTPTPT 于 2011-4-27 10:50 编辑 ]
回复

使用道具 举报

20#
发表于 2011-4-27 10:35:39 | 只看该作者
有点猜不透 EFI 模式下 win7 64位 光盘的启动过程。

既然 bootmgfw.efi 才是真正的 loader,而它又被裹在 boot.wim 中(install.wim 中应该也有?),如何执行呢?

想来想去,只能这样解释:DVD 引导程序利用 boot.sdi 开辟一个内存盘,挂载 boot.wim ,再运行其中的 bootmgfw.efi 。

或者,bootmgfw.efi 已经作为光盘引导程序的一部分 嵌入到 iso 的开头了,EFI 模式下 光盘启动时,会自动跳转到嵌入的 bootmgfw.efi,然后由 bootmgfw.efi 开辟内存盘,挂载 boot.wim ,并启动安装?

恩,应该是第二种解释,因为它跟硬盘安装的流程是吻合的。



又想起另外一个问题:boot.wim 中的内容是 install.wim 的子集吗?

试了下,不管是不是子集,boot.wim 都是安装过程必不可少的文件。

[ 本帖最后由 PTPTPTPTPTPT 于 2011-4-27 10:52 编辑 ]
回复

使用道具 举报

21#
发表于 2011-4-27 10:46:34 | 只看该作者

回复 #19 PTPTPTPTPTPT 的帖子

图片没看到,把图片上传到本坛吧
回复

使用道具 举报

22#
发表于 2011-4-27 10:54:34 | 只看该作者
已传  : )

字数补丁。。。
回复

使用道具 举报

23#
 楼主| 发表于 2011-4-27 13:08:01 | 只看该作者
原帖由 PTPTPTPTPTPT 于 2011-4-27 10:25 发表



搞了个apu主板,昂达AE350,目前最便宜的apu主板。

http://bbs.znpc.net/viewthread.php?tid=6096&extra=page%3D1

EFI 模式下硬盘安装 win7 64位:

1,把 win7 64位版 iso 解开,释放到一个 FA ...

感谢确认amd apu平台的UEFI可用性。
至于那个windows boot manager 项,不是记录在硬盘上的,而是记录在主板上的,或者说是cmos还是什么里面的。我装了uefi win7后,把全盘分区删了,然后把硬盘转成mbr。windows boot manager项还在,那个项要到bios设置中去删除
回复

使用道具 举报

24#
 楼主| 发表于 2011-4-27 13:16:07 | 只看该作者
原帖由 PTPTPTPTPTPT 于 2011-4-27 10:35 发表
有点猜不透 EFI 模式下 win7 64位 光盘的启动过程。

既然 bootmgfw.efi 才是真正的 loader,而它又被裹在 boot.wim 中(install.wim 中应该也有?),如何执行呢?

想来想去,只能这样解释:DVD 引导程序 ...

你没有仔细看过win7 x64光盘的启动,uefi启动是和win98一样的软盘模拟方式启动的。模拟的软盘镜像是光盘中efi\microsoft\boot的efisys.bin文件。

用winimage打开这个镜像,里面只有一个文件bootx64.efi,这个是光盘启动时的可执行文件,应该是bootmfw.efi简化版,专门用于光盘启动的。

另外启动时插入光盘,在efi shell中可以看到这个模拟软驱
回复

使用道具 举报

25#
发表于 2011-4-27 14:23:56 | 只看该作者
原帖由 fujianabc 于 2011-4-27 13:16 发表

你没有仔细看过win7 x64光盘的启动,uefi启动是和win98一样的软盘模拟方式启动的。模拟的软盘镜像是光盘中efi\microsoft\boot的efisys.bin文件。

用winimage打开这个镜像,里面只有一个文件bootx64.efi,这 ...



哦,原来如此。。。这就对了,ubuntu 和 redhat 的 iso ,也都是有一个小镜像,里面是 /efi/boot/bootx64.efi


那个 windows boot manager ,我记得好像把硬盘拔了就没有了。。。记不清了,等晚上回去试试
回复

使用道具 举报

26#
发表于 2011-4-27 16:57:00 | 只看该作者
进来学习下,感谢分享。
回复

使用道具 举报

27#
发表于 2011-4-28 00:51:47 | 只看该作者
原帖由 fujianabc 于 2011-4-27 13:08 发表

感谢确认amd apu平台的UEFI可用性。
至于那个windows boot manager 项,不是记录在硬盘上的,而是记录在主板上的,或者说是cmos还是什么里面的。我装了uefi win7后,把全盘分区删了,然后把硬盘转成mbr。win ...


试了下,还真是,把装有window的盘全拔了,只接移动硬盘,windows boot manager 项仍旧存在。

如果不连接任何硬盘,开机直接就进 bios 了
回复

使用道具 举报

28#
 楼主| 发表于 2011-4-28 10:57:04 | 只看该作者
原帖由 PTPTPTPTPTPT 于 2011-4-28 00:51 发表


试了下,还真是,把装有window的盘全拔了,只接移动硬盘,windows boot manager 项仍旧存在。

如果不连接任何硬盘,开机直接就进 bios 了

感觉我的本本的主板存储记录的区域(cmos或者其他?)容量很大。除了能记录efi启动项,还有开关机事件记录,以及主板自带的硬件诊断程序的记录都存储在主板上。可能efi主板上多了一块类似于闪存的存储设备来记录这些信息。
回复

使用道具 举报

29#
发表于 2011-4-28 17:12:24 | 只看该作者

回复 #28 fujianabc 的帖子

如果这样,那存储设备会不会因为电池没电就没有了?应该不会吧
回复

使用道具 举报

30#
发表于 2011-4-28 17:13:13 | 只看该作者
想买一台来试试,不知道能不能安装XP X86呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-23 13:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表