|
原帖由 zhaohj 于 2010-5-25 11:34 发表 ![](http://bbs.wuyou.net/images/common/back.gif)
USB-CDROM又是一种特例,与BIOS有关。
在GRLDR转IO.SYS后,USB-CDROM就不能访问了。没办法啊!
有办法。
USB-CDROM 和 CDROM 是一样的。只要光盘的格式是 no-emulation,并且从光盘启动,那么 BIOS 都要给光盘一个盘号。在 GRUB 下可以检测到这个盘号,用 (cd) 来访问它。
注意,这个盘号不需要用 cdrom --init 来产生。这个 (cd) 就代表由 BIOS 提供的 no-emulation 模式的 cdrom 设备。
cdrom --init 所产生的是 (cd0), (cd1) ... 这些。
(cd) 这个光盘,在 DOS 下也可以识别,需要 eltorito.sys 这个驱动。
但是,eltorito.sys 有个问题,当碰到(很多)恶意的 BIOS 的时候,它被这些恶意的 BIOS 欺骗,停止在 0xff 处,无法搜索到真正的光盘。
此时,可以试试
map (cd) (0xff)
map --rehook
然后再把控制权交给 io.sys,如此,DOS 下的 eltorito.sys 和 mscdex 就可以成功访问 (cd) 了。看看 grub4dos 的 readme,再搜索网络找到相关的信息。
--------
进一步补充说明,eltorito.sys 已经开源了,现在归 syslinux 管辖。非常好的消息。但是,究竟开源后是否解决了以前 0xff 的问题,还不清楚。如果解决了恶意 BIOS 攻击的问题,那么就不再需要 map (cd) (0xff) 这个步骤了。 |
|