110654 发表于 2016-3-16 14:22:47

菜鸟个性化U盘之路第6篇(DIY篇)

本帖最后由 110654 于 2016-3-16 14:22 编辑

菜鸟个性化U盘之路第6篇(DIY) 你还在为U盘根目录乱七八糟的文件夹分不清楚而烦恼吗?你还在为grub2该如何使用苦苦找寻教材吗?你还在为使用那个PE更好,而无法合并到自己的U盘吗?你还在为efi该如何应用而郁闷吗? 这篇教材适用于才接触grub2的新手,需要自定义U盘引导的,喜欢折腾的,老手飘过。。。 DIY(个性化)的宗旨:对于原作者的作品,我们可以修改外观,修改布局,修改功能以及快捷方式,但我不赞成修改原作者的标签,这种“毁尸灭迹”的剽窃是对所有致力于IT技术研究的前辈们莫大的打击,我们无偿地使用了他人的劳动成果就应该铭记和感谢他们,那些将“转帖”称为“原创”的家伙是大家所不齿的。 其实很多懂代码的根本看不起DIY这样的工具党,那是因为有些逗比把人家的作品标签都改成自己,还说自己的原创。 下载地址:http://pan.baidu.com/s/1nudQpCH 这个压缩包包含了全部成品的文件,集合了各类大神的作品修改版,还有很多很多实用工具。 这些工具总之很实用,不要谢我,回帖鼓励一下吧,我会分享更好的东西给大家的。 已知BUG:在这个压缩包里面缺少一个文件,就是老毛桃0911撒手不管版ISO里面的OP.WIM文件,其实就是XP-PE的外置程序打包文件,大家可以下载原本复制到boot/p/目录里面,也可以不用添加,这样的话进PE相当于没有任何的工具使用,但你可以使用U盘里面的工具, 安装:(也可参考神雕的帖子)把U盘格式化成FAT32格式把压缩包解压到U盘运行\winly文件夹grubinst文件夹里面的grubinst_gui.exe 就可以使用了 目录结构大致说明 Boot=存放了各类PE,EFI=EFI引导需要的Winly=神雕作品引导关键文件Winlyldr=这个文件是grub2引导文件Winlyldr.mbr=引导文件mbr备份,用于恢复引导 看过第5篇的会发现根目录是不是少了很多文件夹,没错,DIY的目的就是要这样。把各种你喜欢的PE丢到一个文件夹里面去引导,然而还不会跟EFI引导冲突,自己也不会做PE,只能修改别人的怎么办?怎么修改别人的PE? 从下面几个实例中你会发现大多数PE都可以采用这样的办法去解决DIY无法合并的问题 第一个:XP -PE 随便下载个XP的PE,听说老毛桃0911撒手不管版很强大,驱动集成兼容超强,下载一个来DIY一下。 打开看一下发现是个ISO文件,用ULTRAISO提取全部文件出来。百度一下发现XP-PE引导文件说明WinPE毕竟是MS的附属产品,包含文件如下(分别对应XP启动盘中的那几个文件):
  1、PEBOOT.BIN,2、SETUPLDR.BIN(PELDR),3、NTDETECT.COM,4、WINNT.SIF(WINNT.XPE)必须放在根目录。另外还要附带WINPE的ISO文件WINPE.ISO,此文件被CAB压缩后仍然可以被PELDR调用。
  具体启动过程是:PEBOOT.BIN在制作光盘时被写入光盘引导轨道,光盘启动后调用光盘:\I386\SETUPLDR.BIN,找到根目录下的WINNT.SIF,根据WINNT.SIF文本中的配置信息找到WINPE.ISO,并将WINPE.ISO载入一个内存虚拟盘X:,在此过程中,要求 WINNT.SIF(WINNT.XPE)必须放在根目录,SETUPLDR.BIN(PELDR)和NTDETECT.COM必须在同一个目录中,如果要将此两个文件放在wxpe目录中,必须同时修改peboot.bin和setupldr.bin的内容,通过ASCII编辑器将其中的i386改成wxpe,同样,如果需要修改 winnt.sif(winnt.xpe)文件名也要通过这个办法修改setupldr.bin的内容。WXPE下面的NTDETECT.COM,SETUPLDR.BIN2个文件是引导关键文件根目录下面WINNT.XPE用记事本打开看一下BootDevice="ramdisk(0)"BootPath="\WXPE\SYSTEM32\"OsLoadOptions="/minint /fastdetect /rdexportascd /rdpath=MiniPE\WinPE.IS_" 发现了指引minipe下面的WINPE.IS文件,分析一下资料发现XP PE引导过程SETUPLDR.BIN------NTDETECT.COM---WINNT.XPE-----WINPE.IS-----winpe.wim于是我直接用他这个安装程序安装到一个空白的新U盘,发现对应的文件被改名了,现在就手动改名也行 U盘新建立BOOT目录,里面再建文件夹P,为什么是一个字母呢,后面有解释把SETUPLDR.BIN 改文件名为LDRXPE(注意不是LDRXPE.BIN),WINNT.XPE改名成PE(不是PE.XPE),NTDETECT.COM改名成NTCOM(不是NTCOM.COM),以及winpe.ini,winpe.is_ OP.wim复制到p文件夹 编辑菜单menuentry "启动 windowsxp-pe"{insmod part_msdos insmod fat ntldr /boot/p/LDRXPE} 根据WINNT.XPE(改名后PE)引导会发现指引的路径是minipe文件夹里面这里要改成BootDevice="ramdisk(0)"BootPath="\WXPE\SYSTEM32\"OsLoadOptions="/minint /fastdetect /rdexportascd /rdpath=boot\p\WinPE.IS_"就差最好一步修改MBR引导了,这个PE的引导文件SETUPLDR.BIN也相当于win7pe的bootmbr引导文件,怎么修改这个文件默认指引路径呢,先把这个文件右键-属性-里面的只读不要勾选,用WinHex(16进制编辑器)打开这个文件 修改前 修改后 根据占用的字符发现刚好把位置用完,这我就可以把这些文件丢在boot目录下面了,所以才建立一个英文的文件夹,当然大神级别的高手忽略,这种DIY方式确实有点丢人,能用就行。然后把所有的minipe都改成这样后保存这样就成功DIY了PE默认引导路径问题了,然后给这个PE添加一些工具,更新一下版本,打开WINPE.INI, “Desktop”就是桌面,“Programs”就是程序,“LINK %Desktop%\”后面紧跟着是快捷方式的名称,这个随意,逗号后面紧跟着的是程序的绝对路径,这个必须要准确,错一个标点符号都不行。 要往里面添加程序也是一样的,将程序放进对应的文件夹。按照他的格式添加几行就好了对于的文件添加方式:用这个软件gimagex-wim,挂载这个op.wim到一个目录 直接把对应的程序放在对应的文件夹,编辑那个winpe.ini修改添加对应的路径即可。 到这里XP PE简单的DIY差不多可以了。XP PE中有个winpe.is_这个的文件,其实这个文件可以用winrar软件打开,里面是一个iso打包的xp pe核心文件。这里面修改主要是集成一些驱动等,对于添加软件等操作可以不动它。 下面说明WIN7PE 添加到你的U盘及grub2的应用。Win7PE差不多也是如此, 这里注意修改背景壁纸,及路径,有的win7pe是在里面修改背景,有的是加载外部图片为背景,里面的背景存放在修改配置的软件在windows目录system32文件夹里面 主要修改点是挂载wim文件镜像后找到Program Files文件夹下pecmd.ini记事本打开。修改了好了,要注意勾选提交更改,这样就完成了win7pe的修改 重点是如何修改bootmgr去指引需要的文件路径,参考这个帖子http://bbs.wuyou.net/forum.php?mod=viewthread&tid=211314&highlight=bootmgr至于菜鸟级仍然找不到修改方法,可以直接下载对应的成品替换下面是实例:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=174163&highlight=bootmgr点击这个地址下载对应的路径及模版替换对应的文件即可比如我需要这个 下载后 这个7pe=bcd菜单文件7pe_mgr=bootmgr引导文件他们的路径都是存放在boot这个目录,也就是说你的引导grub菜单去指引bootmgr(也就是7pe_mgr),然后这个7pez_mgr会再指引boot目录的文件bcd菜单,后续加载wim等PE内核文件例如:我下载的是通用win7pe他默认指引的路径是7777,而我要修改为boot。找不到修改的办法,就可以采用替换法。 把下载的那个7pe及7pe_mgr替换掉对应的文件,再用bootice.exe去打开这个7pe文件后编辑指引的wim文件sdi文件就可以了如果还是找不到修改路径的办法可以参考下面链接这个帖子,直接按提示输入对应路径及文件名就可以获得成品即可使用http://bbs.wuyou.net/forum.php?mod=viewthread&tid=370681&highlight=bootmgr比喻,请输入你的boot路径:boot
请输入你的bcd名称: x86
请输入你的bootmgr名称:10pex86
则文件夹boot中自动生成:10pex86和x86两个文件。
10pex86--------bootmgr
x86 -------------bcd (可用BOOTICE.exe编辑) 这样就成功修改了别人的PE以及路径自定义的合盘。 至于win8pe的修改方式,借用别人的话:有了win7pe的修改经验,修改win8pe就驾轻就熟了吧,所以我也不打算重复那些具体过程,只说两个重点: 1,      不管谁制作的pe系统,首先要找到它用于加载外置程序和桌面背景的配置文件。 2,      这个配置文件存放的地方各有不同,有的放在windows目录下,有的放在system32目录下,命名也各不相同,但是配置文件的扩展名一定是INI。 3,      同时还会存在多个不同作用的INI配置文件,我们需要一一打开查看里面的内容,确定哪个是用于定义外置程序快捷方式的配置文件,再进行修改。 4,      用于加载驱动和注册组件的配置文件和批处理文件,我们千万不要随意去修改,在这个阶段我们还无法将修改错误的地方改正过来。作为菜鸟级新手,DIY折腾出自己喜欢的U盘引导,需要参考各类大神的帖子,EFI引导,我推荐采用天意PE3.2版,可直接拆分合到你自己的U盘,等于直接给你U盘添加了win8pe-32-efi版,win8pe-64-efi版,顺带还有bios引导的32及64位版如: 找到了他这个PE的菜单,就可以初步判断出他的引导过程及结构,再分析他的boot目录 发现光盘引导的引导文件,03PE核心文件,bcd菜单文件都有了,所以他是整合了03pe,win8-32,win8-64等3个PE到boot目录,bcd菜单都改好了,完全可以直接套用了,直接复制整个boot里面的文件到自己u盘的boot目录,为了在efi引导时候不于自己采用的神雕grub2-winly引导冲突把efi引导改名 这样就分别表示天意PE的efi引导了。给grub2的菜单添加对应的引导,可根据他原来的菜单引导,他原来这个是采用grub4dos,看菜单上有title这个 就大概识别出来了,都是一个妈生,区别不大,格式不一样的而已。 添加前title 【01】 Win2003PE迷你维护系统echo $ Loading TYPE, Please Wait ...()/boot/grub/F6IMG || find --set-root /boot/grub/F6IMG && /boot/grub/F6IMGmap --e820cycles=3map --rehookchainloader ()/boot/SETUPLDR.BIN || find --set-root /boot/SETUPLDR.BIN && chainloader /boot/SETUPLDR.BINtitle 【02】 Native03PE极速维护系统()/boot/grub/F6IMG || find --set-root /boot/grub/F6IMG && /boot/grub/F6IMGmap --e820cycles=3map --rehookchainloader ()/boot/NVPELDR.BIN || find --set-root /boot/NVPELDR.BIN && chainloader /boot/NVPELDR.BINtitle 【03】 Win8PE精简全能版(32位)find --set-root /BOOT/bootmgrchainloader /BOOT/bootmgrtitle 【04】 Win8PE精简维护版(64位)find --set-root /BOOT/bcfmgr
添加后menuentry "启动 windows2003PE迷你维护版"{insmod part_msdos insmod fat set root='hd0,msdos1' ntldr /boot/SETUPLDR.BIN } menuentry "启动 Windows8 64位PE 维护版" {echo "正在加载 Win8 PE,请等待...."search --file /BOOT/bcfmgr --set=rootntldr /BOOT/bcfmgr} menuentry "启动 Windows8 32位PE 全能精简版" {echo "正在加载 Win8 PE,请等待...."search --file /BOOT/bootmgr --set=rootntldr /BOOT/bootmgr}menuentry "启动 windows2003PE全内置版" --class windows --class os {insmod part_msdosinsmod fatset root='(hd0,msdos1)'linux16 (hd0,msdos1)/winly/memdisk iso rawinitrd16 (hd0,msdos1)/winly/iso/2003_PE.ISO} EFI菜单添加 menuentry "启动windows8-PE-X32efi系统" --class windows --class os {insmod part_msdosinsmod fatchainloader /efi/boot/win8pex32.efi}menuentry "启动windows8-PE-X64efi系统" --class windows --class os {insmod part_msdosinsmod fatchainloader /efi/boot/win8pex64.efi}menuentry "启动EFI-shell模式" --class windows --class os {insmod part_msdosinsmod fatchainloader /efi/boot/Shell.efi}menuentry "启动MEMTEST内存条测试32位版" --class windows --class os {insmod part_msdosinsmod fatchainloader /efi/boot/neicun32.EFI}menuentry "启动MEMTEST内存条测试64位版" --class windows --class os {insmod part_msdosinsmod fatchainloader /efi/boot/neicun64.EFI} 顺便再分享2个好东西,从上面EFI菜单中可以看到新增了EFI模式下测试内存条的东西,这个可以哦,很实用,还有shell模式,这个对于新手来说用处不大,有这个总比没有好,万一要用呢,在efi模式再引导要注意,如果你的处理器是那种平板电脑啊,32版的你引导64PE是会报错误的,但你处理器支持64位去引导32位的PE是不会报错的,还有要注意在64位PE里面个别PE无法直接运行32位版的软件,它会报错提示确实dll程序。但天意PE3.2版就修复了这个问题,不会再出这样的错误了。成品中已包含了2个工具,你也可以复制下来添加到你的U盘

konglong83 发表于 2016-3-16 14:45:49

师傅 徒弟来给顶贴了。。。
祝你 科二早日挂科 永远不能毕业了{:2_125:}{:2_125:}
冒失很**感觉 我只有收藏慢慢来了。

lbw2007 发表于 2016-3-16 17:07:56

好长啊,一定很辛苦。无论如何支持一下

青青草 发表于 2016-3-16 17:09:02

精神可佳!支持一下。

rengrancunzai 发表于 2016-3-16 17:34:05

造福菜鸟,有时间学习之

2012心落尘埃 发表于 2016-3-16 23:25:04

造福菜鸟,有时间学习之

python 发表于 2016-3-17 07:52:46

但我不赞成修改原作者的标签,这种“毁尸灭迹”的剽窃是对所有致力于IT技术研究的前辈们莫大的打击,我们无偿地使用了他人的劳动成果就应该铭记和感谢他们

2011npwjm 发表于 2016-3-17 09:02:13

不错的教程,谢谢分享

电脑強 发表于 2016-3-17 12:57:15

无论如何支持一下

wjlovezzd 发表于 2016-3-17 16:45:51

无论如何支持一下

tanghe791 发表于 2016-3-18 09:15:37

支持一下哈

mougua783 发表于 2016-4-14 12:27:46

众里寻他千百度,蓦然回首在这里!

kyvi 发表于 2016-6-10 18:58:53

标记一下,回来自己也做一个,谢谢分享

zyy 发表于 2016-9-29 01:10:32

支持,学习中

fanggong 发表于 2016-9-30 08:11:41

一直用天意的,简单方便。

猴惊喜onvij 发表于 2016-11-2 14:17:24

khwzz 发表于 2016-11-3 02:01:50

在下对你的景仰之情有如滔滔长江之水

dlwfdlikuan 发表于 2016-11-29 08:42:37

好帖子,学习了!!

gl542400 发表于 2017-3-21 16:02:22

一定很辛苦。无论如何支持一下

qbz 发表于 2020-3-16 13:58:13

您好啊...您给的链接失效了呀,找不到了...

2012bc 发表于 2021-4-7 09:26:41

感谢分享!

779062985 发表于 2021-5-13 14:48:27

下载学习一下

snaca 发表于 2021-5-31 14:53:35

新手学习,感谢分享。
页: [1]
查看完整版本: 菜鸟个性化U盘之路第6篇(DIY篇)