|
希望在PE内存盘加载那个时候用上USB2.0(如果你的端口是2.0), 缩短PE启动时间。
=========================================
如何从usb 2.0硬盘启动
这是我一直很感兴趣的话题,因为实际中我有这种需求:单位有很多没有光软的机器,有usb2.0口和网卡,但经常要重装系统,因此我试图从USB启动移动硬盘,然后直接从移动硬盘上的ghost镜像恢复系统。(由于软件经常升级,把镜像保存在客户机是不现实的)
也许你要说,这还算问题,很多机器支持USB_HDD启动,BIOS里设一下,然后用个启动工具弄一下移动硬盘就得了。问题是,这样速度太慢,bios是不能直接上USB2.0的,以1.1的速度进行克隆几乎没有实用价值。
那么就加个dos下的usb2.0驱动吧,一开始我也确实是这样做的,马上就发现行不通---加载驱动时,移动硬盘被重新驱动---请注意,这时所有程序还没完全启动完呢(刚执行到config.sys的一部分),而原来的硬盘“不见了”(因为加载了新驱动),剩下的启动无法继续完成,死机。
这似乎是个矛盾,你必须加载usb2.0驱动,但是一旦加载,又无法完成启动。
后来我偶然接触到了vflopy, (大家应该知道是什么吧?,NT启动菜单下的虚拟软盘),它支持从一个保存在硬盘上的软盘镜像来启动,我又进行了另一个尝试
这个道路有些曲折
首先,vflopy只支持NT,所以,一般的dos引导是不能用了,得用NT引导,NT引导需要什么条件呢?1)NT的引导记录,2)NTLDR(如果是中文版还有一个字库文件), 3)Boot.ini, 就这三个就够了。 2)和3)可以直接从装好的系统复制,1)则通过NT系统格式化就可以获得。
在移动硬盘根目录下建一个boot目录,里面放vfloppy的几个支撑文件,准备好带有usb2。0驱动的dos启动盘镜像(还是回到dos了),放到boot目录下,设置好了(vfloppy必须这样的,镜像不能拷进去直接用)。
修改boot.ini令到从vflopy启动,大概是c:\boot\load.bin="Boot from vfloppy"
请注意,上面的操作都是在移动硬盘上做的,由于从usb hdd启动,默认的盘符是c:
就这样,我们曲线完成了以usb2.0驱动硬盘的任务:
1) 通过NT引导了Vfloppy
2) Vfloppy加载了dos启动盘,(我猜想)Vfloppy是把整个软盘镜像加载到内存再引导的,
所以绕过了一开始遇到的矛盾
3)dos启动盘完成后,移动硬盘就工作在usb2.0下了,此时再用ghost,速度快了很多。
后来我又试了用grub来代替Vfloppy,失败了,不过grub我不熟,也许是我试的不对。希望有懂的人能帮我试一下,grub对镜像的支持灵活一点。
现在似乎又流行PE了,我不知道在PE下,这个问题是怎么解决的。希望有知道的人能解释一下,还是很实用的。
=============================================
附上驱动:
[ 本帖最后由 wgykk 于 2007-2-4 09:53 PM 编辑 ] |
|