专门网论坛

 找回密码
 立即注册

新浪微博登陆

只需一步, 快速开始

快捷登录

【放大价】X390 T490 T490S X1专门网 纪念品蜗牛家 X230 618最新活动【玖伍鑫】团购Yoga260
查看: 5650|回复: 17

[系统] 【原创】接上篇:不借助第三方工具手工使用移动磁盘安装8.1到gpt磁盘并用uefi模式启动

[复制链接] [ 1101字 ]

初级会员 Rank: 2Rank: 2

帖子
1019
积分
1.6
技术分
1.3 分
资产值
1725 nb
联谊分
0 分
注册时间
2011-8-19
发表于 2014-5-7 20:45:24 | 显示全部楼层 |阅读模式
接上篇,这里介绍如何不借助任何第三方工具手工使用移动磁盘安装8.1到gpt磁盘并用uefi模式启动

整个过程其实非常简单,全篇参考了http://technet.microsoft.com/zh-cn/library/hh825686.aspx
这里我们不用安装程序第一是为了详细确定每一步的参数,避免引导覆盖等问题,第二则是为了让大家熟悉一下ms自家的命令以备以后派上用场,当然这里只是做一个演示,大家还可以参阅technet的文章。

有些坛友建议采取setup安装程序自动安装,我当然也认同这种方式,毕竟安装程序是最方便的,我这篇帖主要是为了给大家一个命令行工具安装的样例,方便大家熟悉这些命令,以备应对复杂磁盘配置的情况,以及帮助有写安装脚本需要的人士

准备:U盘或移动硬盘,U盘要求格式化为fat32,移动硬盘则需要一个fat32的分区
windows 8.1 x86或x64的光盘(msdn)
中途不需要任何第三方工具参与

这里准备工作我们还是分两个步骤
1.复制引导文件和winpe
2.复制安装文件

之所以没有建立可引导磁盘结构这个步骤,是因为uefi固件本身可以直接读取fat32磁盘的内容,也就是可以直接引导。不再需要mbr->pbr->bootmgr的传统方式。从这点也可以一窥uefi引导的先进性

1
所需要的文件在这里列出:
  1. 光盘\efi
  2. 光盘\boot
  3. 光盘\sources\boot.wim
复制代码


只需要把这两个文件夹以及boot.wim文件复制到U盘或移动硬盘的fat32分区,就完成了第一步,注意这里boot.wim需要放到sources文件夹下面

2
复制
  1. 光盘\sources\install.wim
复制代码

到U盘或移动硬盘,第二步完成

这是最终完成的fat32分区的所有文件
Capture7.PNG

实际上uefi只是启动模式,并不是一定需要gpt磁盘,所以移动硬盘即使是mbr格式,也是可以启动的。不过在安装时,我们会把硬盘用gpt格式分区,以便体会gpt格式带来的便利

现在,我们开始安装8.1。我的实验环境是这样的,一个vmware虚拟机,1024M内存,已经设置为efi模式启动,并连接了三个硬盘

硬盘1,SATA 5G mbr并带有一个ntfs主分区,安装时,须确保不能改变这块硬盘的内容
硬盘2,SATA 15G,一个空硬盘,我们会把win8.1以及相应的引导安装在这块硬盘上
硬盘3,SATA 5G mbr,用来模拟移动硬盘

这里插入一个“题外话”,vmware默认是bios模式启动,如果希望选择efi模式,修改虚拟机vmx文件,插入这一行:
  1. firmware="efi"
复制代码

这是我们启动虚拟机,会看到启动图标有变化。
demo5-2014-05-07-19-31-03.png
进入efi设置菜单,选择启动顺序,这里把我们移动硬盘上的windows boot manager排在第一位
demo5-2014-05-07-19-31-55.png
然后continue,
demo5-2014-05-07-19-43-47.png
进入windows pe
demo5-2014-05-07-19-45-12.png
然后TroubleShoot->Advanced Options->Command Prompt,出现久违的cmd
这里我们用diskpart察看磁盘信息
  1. lis dis
复制代码

demo5-2014-05-07-19-51-20.png
我们要安装到的磁盘是disk 1
先选中disk 1
  1. sel dis 1
复制代码

然后初始化为gpt,并开始分区。这里我是参考的ms推荐的分区配置,划分一个300M的WinRE工具分区,一个100M的EFI系统分区,一个128M的保留分区,然后是8.1安装分区,然后是一个5G的恢复镜像分区
其中ms提到如果是高级格式化的硬盘(也就是说硬盘本身报告4K扇区而非512B扇区的话),EFI系统分区需要划分260M,这个要求是和fat32的性质有关,我们这里暂时不深究
下面的gpt attributes设置是为了保护RE分区和恢复分区,设置0x8000000000000001是为了让Windows隐藏这两个分区(不分配盘符)
"de94bba4-06d1-4d40-a16a-bfd50179d6ac"则是recovery分区专用的分区id,详见
http://technet.microsoft.com/en-us/library/ff715563.aspx

  1. convert gpt
  2. rem == 1. Windows RE tools partition ===============
  3. create partition primary size=300
  4. format quick fs=ntfs label="Windows RE tools"
  5. assign letter="T"
  6. set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
  7. gpt attributes=0x8000000000000001
  8. rem == 2. System partition =========================
  9. create partition efi size=100
  10. rem    ** NOTE: For Advanced Format 4Kn drives,
  11. rem               change this value to size = 260 **
  12. format quick fs=fat32 label="System"
  13. assign letter="S"
  14. rem == 3. Microsoft Reserved (MSR) partition =======
  15. create partition msr size=128
  16. rem == 4. Windows partition ========================
  17. rem ==    a. Create the Windows partition ==========
  18. create partition primary
  19. rem ==    b. Create space for the recovery image ===
  20. shrink minimum=5120
  21. rem       ** NOTE: Update this size to match the size
  22. rem                of the recovery image           **
  23. rem ==    c. Prepare the Windows partition =========
  24. format quick fs=ntfs label="Windows"
  25. assign letter="W"
  26. rem === 5. Recovery image partition ================
  27. create partition primary
  28. format quick fs=ntfs label="Recovery image"
  29. assign letter="R"
  30. set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
  31. gpt attributes=0x8000000000000001
复制代码

demo5-2014-05-07-19-54-51.png
demo5-2014-05-07-19-57-14.png
现在察看分区的情况
  1. list par
  2. list vol
复制代码

demo5-2014-05-07-19-57-57.png
至此,分区完成

下面部署8.1
  1. dism /apply-image /imagefile:E:\sources\install.wim /index:1 /applydir:W:
复制代码


然后建立引导
  1. bcdboot W:\Windows /s S: /f UEFI
复制代码


部署和引导建立完成
demo5-2014-05-07-20-08-59.png

下面设置8.1的恢复镜像路径和RE镜像路径
  1. md R:\OSImages
  2. copy E:\sources\install.wim R:\OSImages
  3. W:\Windows\System32\reagentc /setosimage /path R:\OSImages /target W:\Windows /index 1
复制代码

  1. md T:\Recovery\WindowsRE
  2. xcopy /H W:\windows\system32\recovery\winre.wim T:\Recovery\WindowsRE
  3. W:\Windows\System32\reagentc /setreimage /path T:\Recovery\WindowsRE /target W:\Windows
复制代码

相应的设置已完成
demo5-2014-05-07-20-17-26.png

下面直接
  1. wpeutil shutdown
复制代码

关机,移除移动硬盘,启动后自动开始8.1的初始化
demo5-2014-05-07-20-20-28.png
最终,8.1安装完成
其中可以看到整个gpt磁盘的分区
demo5-2014-05-07-20-43-05.png

[ Edited by  ganboing on 2014-5-7 23:48 ]

评分

参与人数 1技术分 0 收起 理由
misterben 0 原创内容

查看全部评分

chuda - 大屁股情怀

初级会员 Rank: 2Rank: 2

帖子
22186
积分
3.5
技术分
0.3 分
资产值
34509 nb
联谊分
0 分
注册时间
2009-7-12
银牌荣誉勋章(注册8年以上会员)
发表于 2014-5-7 20:54:20 | 显示全部楼层
用10秒看了一遍
放弃
回复 支持 反对

使用道具 举报

初级会员 Rank: 2Rank: 2

帖子
1019
积分
1.6
技术分
1.3 分
资产值
1725 nb
联谊分
0 分
注册时间
2011-8-19
 楼主| 发表于 2014-5-7 20:55:04 | 显示全部楼层

回复 #2 chuda 的帖子

为啥呢???
回复 支持 反对

使用道具 举报

黄金会员 Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

帖子
101088
积分
21
技术分
20.2 分
资产值
592 nb
联谊分
0 分
注册时间
2008-9-4
离任版主月全勤勋章
发表于 2014-5-7 21:09:35 | 显示全部楼层

回复 #3 ganboing 的帖子

耐心有限——在某种程度图片文字结合可能有更好效果。
回复 支持 反对

使用道具 举报

初级会员 Rank: 2Rank: 2

帖子
1019
积分
1.6
技术分
1.3 分
资产值
1725 nb
联谊分
0 分
注册时间
2011-8-19
 楼主| 发表于 2014-5-7 21:11:21 | 显示全部楼层

回复 #4 misterben 的帖子

好吧,我感觉图片已经比较详尽了,只是命令稍多
回复 支持 反对

使用道具 举报

黄金会员 Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

帖子
101088
积分
21
技术分
20.2 分
资产值
592 nb
联谊分
0 分
注册时间
2008-9-4
离任版主月全勤勋章
发表于 2014-5-7 21:14:12 | 显示全部楼层

回复 #5 ganboing 的帖子



每个人的耐心不太相同,没关系,有欣赏的就好了。

多谢分享,多谢原创。
回复 支持 反对

使用道具 举报

入门会员 Rank: 1

帖子
1294
积分
0.5
技术分
0 分
资产值
4361 nb
联谊分
0 分
注册时间
2007-1-22
金牌荣誉勋章(注册10年以上会员)银牌荣誉勋章(注册8年以上会员)
发表于 2014-5-7 21:15:29 | 显示全部楼层
似乎没这么麻烦,这个整麻烦了
回复 支持 反对

使用道具 举报

入门会员 Rank: 1

帖子
1606
积分
0.4
技术分
0 分
资产值
3174 nb
联谊分
0 分
注册时间
2003-11-1
银牌荣誉勋章(注册8年以上会员)
发表于 2014-5-7 21:25:55 | 显示全部楼层
难道不是随便一个移动硬盘或者优盘不管fat32还是ntfs,直接把win8光盘下的内容copy到活动分区里,就可以直接启动安装系统了吗?
回复 支持 反对

使用道具 举报

初级会员 Rank: 2Rank: 2

帖子
1019
积分
1.6
技术分
1.3 分
资产值
1725 nb
联谊分
0 分
注册时间
2011-8-19
 楼主| 发表于 2014-5-7 21:27:45 | 显示全部楼层

回复 #8 coolsear 的帖子

并不是,uefi固件本身不能读取ntfs分区的内容,所以不管是u盘启动还是硬盘启动,都是把引导文件放到fat32分区

当然bios启动方式是可以从ntfs分区启动的,因为bios会先引导mbr,mbr引导分区启动记录,分区启动记录是可以解析ntfs的

[ Edited by  ganboing on 2014-5-7 21:29 ]
回复 支持 反对

使用道具 举报

荣誉版主 Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

帖子
23022
积分
5.5
技术分
4 分
资产值
642 nb
联谊分
0 分
注册时间
2005-10-8
金牌荣誉勋章(注册10年以上会员)离任版主银牌荣誉勋章(注册8年以上会员)
发表于 2014-5-7 21:38:48 | 显示全部楼层
说明的文字非常详细,比pcbeta某些只给命令不说原因的可透彻多了。不说原因与解释和照本宣科没啥区别。
请教下:set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"这条命令的意思是?主要是后面的这串16进制代表?特定,还是可以随意指定呢?
回复 支持 反对

使用道具 举报

入门会员 Rank: 1

帖子
1606
积分
0.4
技术分
0 分
资产值
3174 nb
联谊分
0 分
注册时间
2003-11-1
银牌荣誉勋章(注册8年以上会员)
发表于 2014-5-7 21:39:51 | 显示全部楼层

Title

QUOTE:
Posted by ganboing on 2014-5-7 21:27
并不是,uefi固件本身不能读取ntfs分区的内容,所以不管是u盘启动还是硬盘启动,都是把引导文件放到fat32分区

当然bios启动方式是可以从ntfs分区启动的,因为bios会先引导mbr,mbr引导分区启动记录,分区启动 ...
不要想当然,我自己就是用的一块移动硬盘ntfs分区启动,在uefi+gpt下装的win8。
确实可行,这还有实测 http://nonameteam.cc/thread-1344-1-1.html
而且即便只有fat32可以,那就用fat32的安装盘启动嘛,安装文件又不超过4G,实在不懂lz教的这个如此复杂是为了什么。
回复 支持 反对

使用道具 举报

初级会员 Rank: 2Rank: 2

帖子
1019
积分
1.6
技术分
1.3 分
资产值
1725 nb
联谊分
0 分
注册时间
2011-8-19
 楼主| 发表于 2014-5-7 21:43:04 | 显示全部楼层

回复 #10 LiveOnLove 的帖子

对这个问题,我稍候编辑一下帖子,说明一下,具体看ms的说明,这个就是让windows知道分区的id,以便挂载文件系统或者提供其他的功能

http://technet.microsoft.com/en-us/library/ff715563.aspx

相信这里设置为recovery可以避免windows自动分配盘符
回复 支持 反对

使用道具 举报

初级会员 Rank: 2Rank: 2

帖子
1019
积分
1.6
技术分
1.3 分
资产值
1725 nb
联谊分
0 分
注册时间
2011-8-19
 楼主| 发表于 2014-5-7 21:48:05 | 显示全部楼层

回复 #11 coolsear 的帖子

如果你的主板支持bios/uefi混合启动模式,那么ntfs分区是可以启动的,因为此时主板是直接用bios方式启动的,纯efi方式启动的话,是不能读取ntfs分区的,这也是为什么ms提供的样例特意把efi分区格式化为fat32

当然我也不排除uefi固件直接支持ntfs的情况,但我强烈怀疑这种主板为数不多,因为ntfs标准毕竟没有公开,如果你想测试uefi固件能不能直接访问ntfs分区,进入主板uefi shell测试一下就可以

之所以复杂,是为了演示ms所提供的纯脚本安装方式,当然可以利用其他更方便的形式,只是这里给出以便大家不时之需

[ Edited by  ganboing on 2014-5-7 21:53 ]
回复 支持 反对

使用道具 举报

荣誉版主 Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

帖子
23022
积分
5.5
技术分
4 分
资产值
642 nb
联谊分
0 分
注册时间
2005-10-8
金牌荣誉勋章(注册10年以上会员)离任版主银牌荣誉勋章(注册8年以上会员)
发表于 2014-5-7 21:49:03 | 显示全部楼层
LZ对Ms文章吃的比较透,谢谢解答。我看英文说明那得晕头了,毕竟直接请教会更清楚的了解。
回复 支持 反对

使用道具 举报

chuda - 大屁股情怀

初级会员 Rank: 2Rank: 2

帖子
22186
积分
3.5
技术分
0.3 分
资产值
34509 nb
联谊分
0 分
注册时间
2009-7-12
银牌荣誉勋章(注册8年以上会员)
发表于 2014-5-7 22:06:23 | 显示全部楼层

回复 #6 misterben 的帖子

我也欣赏

点评

:D   详情 回复 发表于 2014-5-7 22:35
回复 支持 反对

使用道具 举报

入门会员 Rank: 1

帖子
851
积分
0.3
技术分
0 分
资产值
3272 nb
联谊分
0 分
注册时间
2008-3-25
发表于 2014-5-7 22:23:14 | 显示全部楼层
真的不用这么复杂。难度在于“把win8光盘下的内容copy到U盘的活动分区里”,这一步搞定,用U盘启动后就不用命令行了。win8选择分区的界面删掉所有分区再创建,会自动将磁盘转换为GPT并生成所有需要的分区。
回复 支持 反对

使用道具 举报

初级会员 Rank: 2Rank: 2

帖子
1142
积分
1.2
技术分
0 分
资产值
22110 nb
联谊分
0 分
注册时间
2012-4-29
月全勤勋章
发表于 2014-5-7 23:20:38 | 显示全部楼层
简单的一个U盘能搞定何必搞这么麻烦
回复 支持 反对

使用道具 举报

初级会员 Rank: 2Rank: 2

帖子
1019
积分
1.6
技术分
1.3 分
资产值
1725 nb
联谊分
0 分
注册时间
2011-8-19
 楼主| 发表于 2014-5-7 23:35:54 | 显示全部楼层

回复 #16 bs340248 的帖子

这里完全可以直接用setup.exe来安装,我只是给出一个手动安装的样例,当遇到复杂的磁盘或分区的配置模式的时候,这些命令也许可以帮上忙
回复 支持 反对

使用道具 举报

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

本版积分规则

Powered by Discuz! X3.2 © 2001-2018 Comsenz Inc & 51nb.com

GMT+8, 2019-7-16 11:00 , Processed in 0.098627 second(s), 88 queries , Gzip On, OPcache On, Redis On.

手机版|小黑屋|客户端|Archiver|||专门网 ( 粤B2-20050246 )

返回顶部