|
我来说说我的方法,不知道对大家有没有什么借鉴意义。
应该有很多人用过改装的清华同方(也就是软通科技)的基于HPA的一键恢复系统,用过的人都知道,这个hpa分区在用ulockhpa显示出来后它就是硬盘上的最后一个逻辑分区(FAT32格式),我自己改装的方法是:将原来用于启动linux系统的linux.img换成一个DOS启动盘,这个启动盘启动时会先反隐藏hpa分区(ulockhpa),然后再从启动盘运行grub.exe调用隐藏分区中的grubmenu.hpa(这是一个grub的菜单文件),再通过这个菜单就可以选择进入一键恢复系统或者进入PE。而我是将老九的PE放到这个hpa分区的。下面简单介绍一下相关各文件的设置:
1、grubmenu.hpa,它在hpa分区的根目录,部分内容如下:
- ...
- title 系统恢复或备份
- password ***
- find --set-root /grubmenu.hpa
- map --mem /boot/ghost.ima (fd0)
- map --hook
- chainloader (fd0)+1
- rootnoverify (fd0)
- title 启动WinPE网络版(HPA分区)
- find --set-root /setupldr.hpa
- chainloader /setupldr.hpa
- title 启动通用WinPE(setupldr.bin)
- find --set-root /setupldr.bin
- chainloader /setupldr.bin
- ...
复制代码
其中的setupldr.hpa就是一个setupldr.bin改名过来的,当然,对这个文件进行了必要的hack,例如将winnt.sif改成winnt.lxl。
2. winnt.lxl的内容
- [SetupData]
- BootDevice = "ramdisk(0)"
- BootPath = "\I386\SYSTEM32"
- ;OsLoadOptions = "/minint /fastdetect /rdexportascd /rdpath=WINPE.IS_"
- OsLoadOptions = "/minint /fastdetect /rdpath=WINPELXL.IMG"
复制代码
按照上面的启动方式,只要setupldr.bin、winnt.sif、pe.img(/iso)及ntdetect.com在同一个分区的根目录下(无论这个分区是否是主分区或者逻辑分区还是隐藏分区),只要grub能够找到这个setupldr.bin,同时你的winnt.sif设置又没有错误,那么直接用grub4dos chainloader这个setupldr.bin就可以实现正常启动PE,而且,根本不需要设置什么文件路径或者指定分区(象顶楼那样),完全可以做到通用启动任何PE。而且通过hack对应的文件,可以实现对setupldr.bin和winnt.sif任意命名的方式。 |
|