|
PE经典DIY案例2:让你的PE除了量产和U+B+高端隐藏外
PE的最迷人之处,就是DIY。通过DIY,新人才能慢慢提高水平。
上一次,通过简单的DIY,就可以让量产用的PE,也能玩U+高端和B+隐藏。但你会发现,这种内核解开的PE,一U+到zip格式的隐藏区,很多机子启动PE就卡nt5和nt6引导上,更不要说U+深度隐藏和UD了。这一次我们再来一次DIY,让你的PE,还能玩UD和U+V2-hdd深度隐藏,成为可刻盘、量产、UD、U+深度隐藏和B+隐藏的大一统ISO PE吧
UD和U+深度隐藏都是抹掉分区信息的,在windows/winPE下找不到隐藏分区,所以,相当安全可靠,可以防病毒、防误删除和误格式化。
一、PE内核打包
为了让你的PE支持部署 UD和U+深度隐藏,PE内核打包成ISO用grub4dos来进行map是必须的。因为即使grub能识别引导UD和U+深度隐藏这种抹掉分区信息的隐藏区,但nt5和nt6引导很可能不识别,就会卡在PE启动上了。内核解开到内核打包,其实也不复杂,如果你懒,建议你抄人家做得好的UD版改造吧,反正网上一大堆。
但内核打包后,又会引导兼容型问题,特别是对新型电脑特别是新型笔记本电脑的兼容,会出现内核打包map引起的非硬盘驱动的蓝屏问题,主要是nt5 PE,win7 win8 PE好像没这个问题。为解决这个问题,grub增加了一下参数来解决。我们在nt5 PE引导菜单中增加几个兼容模式就可以解决问题了。
map --e820cycles=n(不加参数默认为-1,从0-3试一下)
map --hook
二、使grub引导识别U+深度隐藏区
grub可以识别并引导UD区,但并不能识别并引导U+深度隐藏区,我们应对其内置菜单grldr作如下改进:
#由论坛P大和2011czmxbb52大提供。实测多个grub版本,均成功通过。
errorcheck off
debug off
configfile ()/menu/menu.lst || find --set-root /menu/menu.lst && configfile /menu/menu.lst
set eb=0
dd if=(hd0)96+1 of=(md)768+1 bs=1 count=8 skip=502
set /a pe=*393216 && set /a ps=*393220
write 393216 0
write 393220 0
map (hd0)%pe%+%ps% (17)
map –hook
set pe= && set ps=
set eb=17
rootnoverify (17)
ls (17)/ > nul
configfile (17)/menu/menu.lst || find --set-root /menu/menu.lst && configfile /menu/menu.lst
pause Error: menu.lst not found! && commandline
同时内核打包后,纯grub多引导的iso,U+时仍可以保留grub多引导,这点不用担心了。
三、PE内核改进
上次我们在PE内核加入了ultraiso的官方版bootpart驱动(bootpart.exe、bootaprt.sys,64位pe加bootpt64.sys)后,就原生态的支持U+V2高端隐藏区和B+隐藏区。事实上,bootpart驱动也支持U+V2-hdd深度隐藏区挂载,暂不支持U+V2-zip深度隐藏区挂载。同时,UD区文件是不能直接使用的,现在都要导出到可见区下再使用——为了增加对UD隐藏区的数据读出,我们推荐大家在%windir%\system32\下加入百草霜老大的在原版fbinst基础上改进的fbinst plus,它可以完美支持ud的uft-8文件格式。bootpart和fbinst plus这两个软件在基本PE内核下都可以运行,实测对U+和B+隐藏及UD隐藏在xp 03 win7 和win8系统下支持都非常好。
(一)fbinst plus的基本用法
改进fbinst plus采用的是命令行模式,但功能很强大,我们可以在pecmd脚本下或cmd脚本下调用下。以下是在pecmd脚本上调用的常用用法:
//1.导出UD区文件
EXEC =!%WinDir%\SYSTEM32\fbinst (ud) output tools/ico.dll %WinDir%\system32\%~nx
//2.系统自启动程序调用
/EXEC =!%WinDir%\SYSTEM32\fbinst --udload "tools/文字输入/FREEWB.exe" "%TEMP%"
//3.1建立UD区程序按需调用的快捷方式并加图标(是弹出黑窗口,,)
TEAM ENVI FBE=fbinst --link|ENVI FBU=fbinst.exe "—udload
//引用快捷图标,有时是#,是时候是,
exec =!%FBE% %Desktop%\手工运行ghost32" %FBU% petools/备份还原/ghost32.exe %TEMP%" ico.dll#22
exec =!%FBE% % Programs %\备份还原\手工运行ghost32" %FBU% petools/备份还原/ghost32.exe %TEMP%"
ico.dll#22
//3.2建立UD区程序按需调用的快捷方式(不弹出黑窗口)
TEAM ENVI SS=%windir%\system32|ENVI FBU=!%SS%\fbinst.exe --udload tools|ENVI PEC=%windir%\system32\pecmd.exe
//引用快捷图标,有时是#,是时候是,
link %Programs%\搜索自定义petools,%PEC%,exec %fbu%/文件工具/fbpetools.cmd %TEMP%,%SS%\ico.dll#2
link %Programs%\系统维护\远程编辑注册表,%PEC%,exec %fbu%/系统维护/远程编辑注册表.exe %TEMP%,%SS%\ico.dll#11
link %Desktop%\Aida64 环境检测,%PEC%,exec %fbu%/硬件检测/aida64.exe %TEMP%,%SS%\ico.dll#13
//4.搜索UD区指定文件夹并建立快捷方式
exec =!WinDir%\SYSTEM32\fbinst --onlylink "PEtools/*" %TEMP%
//5全盘搜索可见区\Petools并建立快捷方式,win8PE不完善建议用其它pecmd脚本搞定
exec =!%windir%\system32\fbinst.exe --autoptlink
(二)智能判断PE部署环境脚本
我们在PE内核加这两个程序以后,就可以在PE内核启动后,由Pecmd.ini调用load.cmd,由load.cmd智能判断PE部署环境,可见区由pecmd load加载外置,U+和B+隐藏区由bootpart只读加载隐藏区,UD由fbinst plus建立外置的按需加载快捷方式。
load.cmd智能脚本如下,请大家慢慢改进吧。
有些朋友不喜欢用cmd脚本,同时为了保持方案的通用性,这里提供pecmd脚本。也就是在内核中加入fbinst plus和bootpart(三文件,bootpart.exe、bootaprt.sys,64位pe加bootpt64.sys)后,大家把把pecmd.ini调用外置处(load winpe.ini),改成如下脚本就可以:
(三)最简单的大统一方案——支持光盘、量产、UD、U+V2-hdd深度隐藏和B+隐藏
如果大家感觉上面的大麻烦,就给大家一下最简单的统一加载外置\petool方案吧。
本方案中利用百大的fbinst plus(fbinst.exe)和ultraiso自带的bootpart驱动(bootpart.exe,bootpart.sys,bootpt64.sys)来实现可见区、UD区和U+隐藏区(低端隐藏、高端隐藏和深度隐藏-hdd格式,不支持深度隐藏U+V2-zip格式)和B+隐藏区\petools\外置的自动建立快捷方式。PE系统支持32位或64位的xp 03 win7和win8 PE。
首先要求外置软件单个打包成能单独运行,分目录放置于\petools\下。然后PE内核%windir%\system3\下内置四文件fbinst,bootpart.exe, bootpart.sys,bootpt64.sys,并编写cmd脚本在pecmd.ini的适合位置调用。cmd脚本如下,你也可以改成pecmd脚本。
@echo off
rem 以下代码可以搜索可见区、UD区、U+隐藏区和B+隐藏工petools文件夹,并建立快捷方式。
Rem U+隐藏区不支持深度隐藏U+V2-zip格式。
rem 在win8PE中可见区搜索不完善,建议大家用pecmd脚本代替
%windir%\system32\fbinst --onlylink "PEtools/* "%TEMP%
%windir%\system32\bootpart.exe -mount -readonly -driveletterT:
%windir%\system32\fbinst.exe --autoptlink
四、部署要点:
1.U+:支持ultraiso部署到U+V2-hdd深度隐藏,因bootpart所限,并不支持U+V2-zip深度隐藏外置加载。
2.B+:推荐用bootice部署到usb-hdd隐藏区,并要把隐藏区激活,以免bootpart挂载不了隐藏盘。
大家可以参加我制作的半解开统一成品PE:(在杏大PE2013元旦UD版基础上改进成统一版)
我的博客上的帖子:
http://zds1210.blog.163.com/blog/static/24481248201303001531628/无忧论坛上的帖子:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=274893
制作好以后,你会发现,这种全外置的统一PE,并不支持U+V2-zip深度隐藏下加载外置,这只能怪官方的bootpart了。难道一定要全内置PE才行吧?下次,我再出一个绝招,用很另类的方法,不用什么bootpart,也不用什么fbinst了,不要说什么U+V2-zip深度隐藏,就是以后出来很牛的隐藏区,只要grub能识别,我们就能加载实现统一部署。
预告:
PE经典DIY案例3:小样的U+V2-zip深度隐藏,我就不信搞不定你
——对付各种PE隐藏区的最后绝招
[ 本帖最后由 zds1210 于 2013-3-15 11:02 编辑 ] |
|