无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 5247|回复: 9
打印 上一主题 下一主题

[教程] 视频详细分析神雕作品已经改编后的文件结构和原理

  [复制链接]
跳转到指定楼层
1#
发表于 2015-1-30 22:23:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 110654 于 2015-11-27 15:28 编辑

           首先感谢各路好友对于grub2相关引导提供代码分析支持,感谢无忧论坛神雕作品.这次更新U盘引导主要针对EFI引导支持已经应用上的变化,通过这次的制作,加深了对于EFI引导的了解和应用.在EFI研究的道路上撞墙无数次,同时也无数次走入死胡同又倒回来的结果,最后还是选择了grub2方式来主管整个引导的菜单

这次制作的的U盘引导主要有以下特点:
1,如果引导被破坏,你只需要使用grubinst_gui.exe再次安装即可修复,文件不会丢失,不用再次格式化,再次复制文件进U盘等操作。
2,如果你想换个EFI下使用的win8PE,你只需要找到PE里面的BOOT 及EFI目录覆盖,并改名为菜单对应指引的路径的如:win8pe.efi
3,如果你想换个windows8安装版本只需要更换第2分区的windows目录,并对应文件目录即可。切换分区显示用BOOTICEx.exe
4,整个制作全程windows系统,不需要linux上去制作,更方便。

       这次呢采用视频的方式来说明,更直观的让大了解U盘引导以及U盘文件结构。
第一次制作视频,比较仓促,也没有实际演示制作过程,但很详细的说明了文件结构以及引导原理。
没有看明白的地方可以暂停后再次查看资料再回头研究。有兴趣的也可以发邮件到344043074@qq.com提问
我会与你一起研究U盘引导,谢谢大家。支持的点个赞啊。


视频在线观看上半部地址是:http://www.tudou.com/programs/view/OUsj9cFoiJk/

视频在线观看下半部地址是:http://www.tudou.com/programs/view/vR9ok4097_o/
我修改的相关文件地址是:

全部工具文件
http://pan.baidu.com/s/1eQqHLom
下载V4备份(包含gurb4dos的引导全部文件及工具成品)

其中视频提到的上次制作的U盘引导请参考我第3代U盘个性化引导制作文章。地址是:
http://user.qzone.qq.com/344043074/blog/1371900152
第2代U盘地址是
http://user.qzone.qq.com/344043074/blog/1370195789
其中神雕原帖地址是:
[http://bbs.wuyou.net/forum.php?mod=viewthread&tid=308011      

神雕作品引导主要文件下载地址是:
http://pan.baidu.com/s/1o6uosAm
windows8.1原版光碟文件下载地址是:
http://pan.baidu.com/s/1eQxSx5C


             未来都是EFI的天下,这是目前不可否定的,也许你也跟我一样在学习EFI启动的途中遇到过各种坑,但愿你能像我一样,一一解开这些谜团.bios+mbr与efi+gpt  想起来都是云里雾里.必须把bios与EFI分开想,才能找到他们之间区别,才能找到如何理解他们的引导方式,如果还是无法清晰的理解efi引导,但愿这篇文章能帮助到你,我将以通俗的,详细的方式说明。这次更新的U盘引导结构,分析他们之间的联系

正文:
    先概括一下这次更新后的U盘引导思路,以及个人见解.采用无忧启动论坛神雕大神的思路上改编而成,U盘分区表为MBR.文件格式为fat32
引导思路为:1以BIOS为例是whly---grub2--加载内容.或者whly---grub2---grub4dos--加载内容
                 2以EFI为例是whly---grub2---efi---加载内容
文件结构概括,以存放efi为副分区(FAT32)来加载我需要的windows8.1原光盘内容(已解压)以及ubuntu12.04官方版(已解压)
其中ubuntu12.04支持EFI模式包装后启动,且没有bcd菜单而是采用grub2去引导内容.所以跟windows8
不会在同一个根目录发生调用相同的bcd菜单文件而需要去更改,方便管理.主分区(FAT32)存放whly引导,gurb2引导,PE文件,img文件,这边有EFI启动windows8PE引导文件是因为避免与windows8原版内容的EFI启动产生冲突.以分区形式避免去修改bcd 破解bootmgr等繁琐的操作


            U盘除了存储文件,还有最大的功能就是方便携带,支持引导来维护电脑.
从bios引导来说无非就是启动PE系统(有图形界面的管理维护电脑模式,更适合大众,新手)
              还有启动DOS坏境,加载img iso exe等DOS坏境运行的工具,确实用起来爽吧
从efi引导来说,同样离不开启动PE系统去维护,因为我们已经习惯了.
              启动DOS已经不行了,还能干什么呢?而且win8PE坏境已经不能直接运行win8或者8.1的安装程序
              无法在PE下面直接运行windows原版文件安装,只能采用其他方式安装wim,esd系统镜像文件等
失去了DOS时代意味着我们的维护方式将会被统一,在未来即便你是一个菜鸟也能维护系统.EFI的修复方式也是
如此巧妙的寻找EFI支持的文件而已.(小提:在台湾引导论坛中发现有人可以破解bootmgr 修改BCD,篡改efi引导路径
实现EFI多模式同目录.而不需要我们做多余的分区来加载不同EFI启动的系统)
EFI启动简单的理解就是开机---寻找设备上支持的EFI文件(后面会说明是那些文件)---加载BCD菜单--引导实现
这里指的寻找文件是指连接这个电脑的全部设备上活动的与非活动的,无论是mbr分别表还是EFI分区表,
无论是NTFS还是FAT32文件系统,只要存有EFI支持的文件就会显示一个EFI启动项目.
至于EFI是那些文件你必须参考下面这个内容:
★ -----------------对于UEFI启动本身来说,这些文件是必需的
▲----------------- 对于传统BIOS引导光盘来说,这些文件是制作时必需的
▲----------------- 对于传统BIOS引导光盘来说,这些文件是引导时必需的
◆ -----------------对于UEFI引导光盘来说,这些文件是制作时必需的
◆ -----------------对于UEFI引导光盘来说,这些文件是引导时必需的
UEFI_MSPE-------------在磁盘介质上,通过UEFI启动 Windows PE 系统,这些文件是必需的
UEFI_MSHD-------------在磁盘介质上,通过UEFI启动 Windows 硬盘系统,这些文件是必需的
(本说明用法:你需要查询某个文件的用处,直接找那个文件;或者你需要做什么,从上方认识标示,从本说明标示入手)
根目录
├─boot --------------------------------启动文件目录   UEFI_MSPE + ▲
│  │  BCD --------------------------------传统BIOS启动所需BCD菜单文件  ▲
│  │  boot.sdi --------------------------------UEFI/BIOS启动都需要    UEFI_MSPE + ▲+ ◆
│  ├─fonts --------------------------------传统BIOS启动字体文件目录(不影响启动)  
│  │      chs_boot.ttf
│  │      wgl4_boot.ttf
│  └─zh-cn --------------------------------传统BIOS启动中文显示用的目录(不影响启动)
│          bootmgr.exe.mui
├─efi--------------------------------UEFI启动目录   ★ + UEFI_MSPE + UEFI_MSHD  + ◆
│  ├─zh-cn --------------------------------UEFI启动中文显示用的目录(不影响启动)
│  │      bootia32.efi.mui
│  │      bootx64.efi.mui
│  ├─boot--------------------------------UEFI启动文件目录   ★ + UEFI_MSPE + UEFI_MSHD + ◆
│  │      bootia32.efi--------------------------------IA32构架的启动文件   ★ + UEFI_MSPE + UEFI_MSHD + ◆
│  │      bootx64.efi--------------------------------X64构架的启动文件   ★ + UEFI_MSPE + UEFI_MSHD + ◆
│  └─microsoft-------------------------------UEFI启动目录   UEFI_MSPE + UEFI_MSHD + ◆
│           ├─fonts --------------------------------UEFI启动中文字体文件目录(不影响启动)  
│           │      chs_boot.ttf
│           │      wgl4_boot.ttf
│           └─boot---------------------------------UEFI启动菜单目录   UEFI_MSPE + UEFI_MSHD + ◆
│                   BCD-------------------------------UEFI启动菜单   UEFI_MSPE + UEFI_MSHD + ◆

│─MBR.bin ------------------------制作传统BIOS下的启动光盘上时的引导记录,负责引导Bootmgr,适合x64+x86   ▲
│─bootmgr -----------------------传统BIOS下的启动光盘的引导文件,适合x64+x86  ▲
│─UEFI_ALL.BIN-----------制作UEFi启动光盘上时的引导记录,可以同时支持引导IA32+X64构架,直接读取\efi\microsoft\boot\bcd  ◆
│─winpe_x86.wim --------------------------------适合IA32构架的winPE,目前仅有Win8 x86  UEFI_MSPE +▲+ ◆
└─winpe_x64.wim --------------------------------适合X64构架的winPE,目前有Win7/8 x64   UEFI_MSPE+ ▲+ ◆


然后来说UEFI启动 计算机默认引导的简要流程(引导windows为例):
---->>电脑开机(假设已经设置了UEFI为打开)
---->>启动模块根据启动项顺序依次查找所有
(FAT分区):\efi\boot\bootia32.efi(IA32构架的启动文件)
或者
(FAT分区):\efi\boot\bootx64.efi(X64构架的启动文件)
---->>加载\efi\microsoft\BCD 启动菜单文件
---->>按照BCD里面的内容进一步启动,整个过程和传统的BIOS相比,没有引导记录的参与,不错不错
提示:
以上的bootia32.efi,bootx64.efi 都是一个efi应用,不同的是使用在IA32或者X64构架(详见C部分)下。你可以选择任意一个efi应用文件,然后改名替代上面的文件。
这里加载\efi\microsoft\BCD 启动菜单文件是因为当前的efi文件的内容是微软写的,efi内容下一步就指向\efi\microsoft\BCD
我们当然可以创建一个abc.efi,然后改名,bootx64.efi 或者bootia32.efi,让UEFI开机的时候加载,这时候你可以让你自己写的abc.efi指向
某个目录的某个CFG文件这都随你愿意,从而实现调用......
注意:在没有修改.EFI这个文件引导路径的情况下,以windows为例他会默认加载EFI--microsoft---BOOT---BCD菜单文件.
当然有人可以实现修改EFI不加载这个路径的BCD或者其他名字的菜单文件,关键在于修改bcd菜单文件的GUID实现与EFI文件引导的数字验证是一样,才能通过引导.
不然就会报错.
关于Windows Boot Manager、Bootmgfw.efi、Bootx64.efi、bcdboot.exe 的详解..
http://bbs.wuyou.com/forum.php?m ... &fromuid=396698

评分

参与人数 2无忧币 +10 收起 理由
yang77 + 5 赞一个!
shan + 5 赞一个!

查看全部评分

2#
发表于 2015-1-31 13:29:15 | 只看该作者
uefi引导是大势所趋啊。。。
回复

使用道具 举报

3#
发表于 2015-1-31 17:57:05 | 只看该作者
辛苦了,学无止境啊,折腾不息、
回复

使用道具 举报

4#
发表于 2015-3-16 16:01:58 | 只看该作者
楼主怎么学的?我也想学,引导基础不好啊,用GRUB引导多系统很难的样子
回复

使用道具 举报

5#
发表于 2015-3-17 00:23:57 | 只看该作者
楼主,能救救我吗?

我的问题http://bbs.wuyou.net/forum.php?m ... page%3D1&page=1
回复

使用道具 举报

6#
发表于 2015-4-11 22:30:10 | 只看该作者
这个帖子怎么转发。
回复

使用道具 举报

7#
发表于 2015-11-1 02:11:13 | 只看该作者
用GRUB引导多系统很难的样子
回复

使用道具 举报

8#
发表于 2015-11-1 06:51:51 | 只看该作者
可以看看。
回复

使用道具 举报

9#
发表于 2015-11-3 10:42:20 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

10#
发表于 2015-11-6 19:27:35 | 只看该作者
学习一下
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-24 05:08

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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