无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: captain_g

[求助] 优盘UD启动失败!读取文件错误 ...

[复制链接]
发表于 2015-5-14 10:57:14 | 显示全部楼层 |阅读模式
优盘UD启动失败!读取文件错误 ...

有一台I945的老电脑,在这台电脑上用过几只不同品牌的启动U盘,没有遇到问题,它们启动时都被识别成为USB-ZIP盘。

有一只USB3.0容量30G的金士顿优盘,制作成UD三分区启动盘,先后在好几台电脑上使用过,也没有遇到过什么问题。

昨天在这台老电脑上使用这只30G的金士顿优盘,选择USB-ZIP、USB-HDD为第一启动设备,均无反应吗,直接进入了硬盘系统。

一开始没怎么注意,后来发现U盘被识别成了【硬盘】,于是选择它启动,启动倒是很顺利,很快就出了UD启动菜单,以为没问题了。

可是选择具体菜单后,出错了!屏幕提示【读碟】错误,接连换了其他几个菜单项,都提示同样的错误!

所有要读的文件都存放在UD区中,难道UD区中的文件坏了?赶紧插到其他电脑上试试,可一切正常啊!

实在郁闷!不知各位是否有同样的经历。又或者可能是一个未考虑到的特例?
发表于 2015-5-14 11:12:41 | 显示全部楼层
你很幸运。抓住它,别让它随便溜掉。

成功进入 ud,就不能算是 ud 的问题了,一定是 bios 的问题。比如说,bios 只能访问 U 盘最开头的 720K 空间,后续的空间根本无法访问。

你首先确定 U 盘所在的盘号是不是 (fd0) 或 (hd0)

然后(举例来说)用 cat --hex (fd0)XXXXXX+1 的方式确定 BIOS 可以访问的最大的 USB 扇区号。

对于某个 XXXXXX 值(它是扇区号),假如 cat 导致死机,说明 BIOS 无法访问这么大的扇区号。cat 不死机但出错,也表示 BIOS 无法访问这么大的扇区号。

建议你同时使用我开发的 multimbr 来测试(如果你以前不曾了解过 multimbr,请忽略我这个建议)。

点评

不点的工作,因为是改进UD主引导,而不是另起炉灶  详情 回复 发表于 2015-5-14 11:57
回复

使用道具 举报

发表于 2015-5-14 11:57:11 | 显示全部楼层
本帖最后由 zds1210 于 2015-5-14 12:02 编辑
不点 发表于 2015-5-14 11:12
你很幸运。抓住它,别让它随便溜掉。

成功进入 ud,就不能算是 ud 的问题了,一定是 bios 的问题。比如 ...


不点的工作,是改进UD主引导,而不是另起炉灶

点评

你给我分派的这个任务,完成不了。 我既不能改进 ud,也不能另起炉灶了。所有的开发工作都干不了了。 希望你不要再追着 “讨债” 了。  详情 回复 发表于 2015-5-14 15:10
回复

使用道具 举报

发表于 2015-5-14 15:10:38 | 显示全部楼层
zds1210 发表于 2015-5-14 11:57
不点的工作,是改进UD主引导,而不是另起炉灶

你给我分派的这个任务,完成不了。

我既不能改进 ud,也不能另起炉灶了。所有的开发工作都干不了了。

希望你不要再追着 “讨债” 了。

点评

尊重。身体最重要。  详情 回复 发表于 2015-5-14 17:37
回复

使用道具 举报

发表于 2015-5-14 17:37:41 | 显示全部楼层
不点 发表于 2015-5-14 15:10
你给我分派的这个任务,完成不了。

我既不能改进 ud,也不能另起炉灶了。所有的开发工作都干不了了。
...

尊重。身体最重要。

点评

理解万岁,谢谢。  详情 回复 发表于 2015-5-14 17:42
回复

使用道具 举报

发表于 2015-5-14 17:42:07 | 显示全部楼层
zds1210 发表于 2015-5-14 17:37
尊重。身体最重要。

理解万岁,谢谢。
回复

使用道具 举报

发表于 2015-5-15 10:31:03 | 显示全部楼层
可是选择具体菜单后,出错了!屏幕提示【读碟】错误

告知启动时的盘符,把菜单贴出来。
回复

使用道具 举报

发表于 2015-5-15 10:31:04 | 显示全部楼层
可是选择具体菜单后,出错了!屏幕提示【读碟】错误

告知启动时的盘符,把菜单贴出来。

点评

一篇小贴,没想到会引起 不点、zds1210、2011yaya2007777 诸位的关注!多谢了! 金士顿的Datatraveler G4/32G/USB3.0优盘,使用所谓的“UD三分区”方法制作 小弟菜鸟初学,且仅为自用目的,所以只知依样画葫芦  详情 回复 发表于 2015-5-15 14:40
回复

使用道具 举报

 楼主| 发表于 2015-5-15 14:40:58 | 显示全部楼层
2011yaya2007777 发表于 2015-5-15 10:31
告知启动时的盘符,把菜单贴出来。

一篇小贴,没想到会引起 不点、zds1210、2011yaya2007777 诸位的关注!多谢了!

金士顿的Datatraveler G4/32G/USB3.0优盘,使用所谓的“UD三分区”方法制作

小弟菜鸟初学,且仅为自用目的,所以只知依样画葫芦,只要顺手好用则一切从简

U盘:前(左,低)端为UD区,中段为exFAT格式的数据区,后(右,高)端存放UEFI启动文件(FAT格式),在WIN下使用的为中段

UD(主、扩)区大约450M,使用的grldr为2014-11-11的0.46a版,文件全部存放于UD区中

grldr中内置菜单的内容如下(同时还在根下放置了一个内容相同的menu.lst文件):

- - - - - - -

debug off
timeout 6
default 4

graphicsmode -1 640:800 480:600 24:32 || graphicsmode -1 -1 -1 24:32
font /boot/myfont.hex.gz
color normal=0xcccccc highlight=0xff0000 helptext=0x0a heading=0x0a standard=0x0a border=0x02
terminal --font-spacing=1:8

menuset m 72 15 4

title [00] >>>>> 我心如水2003PE[新电脑]
map --mem /boot/WXRSFULL.ISO (0xff) || map --mem /boot/WXRSFULL.ISO (0xff)
map --hook
chainloader (0xff)
boot

title [01] >>>>> 进入U盘上的886PE[新机]
kernel /boot/wimboot
initrd @bcd=/boot/bbb @boot.sdi=/boot/boot.sdi @bootmgr=/boot/bootmgx @boot.wim=/boot/WIN886PE.WIM
boot

title [02] >>>>> 我心如水2003PE[旧电脑]
usb --init
map /boot/WXRSFULL.ISO (0xff) || map --mem /boot/WXRSFULL.ISO (0xff)
map --hook
chainloader (0xff)
boot

title [03] >>>>> 进入U盘上的886PE[旧机]
usb --init
kernel /boot/wimboot
initrd @bcd=/boot/bbb @boot.sdi=/boot/boot.sdi @bootmgr=/boot/bootmgx @boot.wim=/boot/WIN886PE.WIM
boot

title [04] >>>>> 进入硬盘中的操作系统
if "%@root%"=="(ud)" && calc *0x82a0=*0x82b9&0xff
if "%@root:~1,1%"=="h" && map (hd0) (hd1) && map (hd1) (hd0)
map --rehook
chainloader (hd0)+1

title [05] >>>>> 我心如水仅50兆[古董机]
usb --init
map /boot/WXRSMINI.ISO (0xff) || map --mem /boot/WXRSMINI.ISO (0xff)
map --hook
chainloader (0xff)
boot

title [06] >>>>> 运行DOS版DiskGen v4.62
map --mem /boot/DISGEN462.GZ (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title [07] >>>>> 重启电脑
reboot

title [08] >>>>> 进入PSEUDO 0PE[旧电脑]
usb --init
map /boot/0PELITE.ISO (0xff) || map --mem /boot/0PELITE.ISO (0xff)
map --hook
chainloader (0xff)
boot

title [09] >>>>> 使用WIN8164RAMOS[新机]
kernel /boot/wimboot
initrd @bcd=/boot/bbb @boot.sdi=/boot/boot.sdi @bootmgr=/boot/bootmgx @boot.wim=/boot/8164ROS.WIM
boot

title [10] >>>>> KonBoot2.4绕过登录密码
map --mem ()/boot/konboot.img (fd0)
if "%@root%"=="(ud)" && calc *0x82a0=*0x82b9&0xff
if "%@root:~1,1%"=="h" && map (hd0) (hd1) && map (hd1) (hd0)
map --rehook
chainloader (fd0)+1
rootnoverify (fd0)

title [11] >>>>> 进入【GRUB】命令行环境
commandline

title [12] >>>>> 使用硬盘上的PE镜像[如有]
find --set-root --ignore-floppies --ignore-cd /mzspdzm.iso
map /mzspdzm.iso (0xff) || map --mem /mzspdzm.iso (0xff)
map --hook
chainloader (0xff)

- - - - - - -

0. U启出菜单后,选择子工具菜单项后,均提示“读碟”错误,但可退回主菜单

1. 如选第[11]项进入命令环境,用find查看,可看到:

(ud)
(hd0)
(hd0,0)
(hd0,4)
(hd1,0)
(hd1,4)
(hd1,5)

注:唯一1只固定硬盘共3个分区

1.1 如尝试:root (hd0,4),然后用configfile,则能成功调用里面的菜单文件,而且可以使用,未见提示“读碟”错误!(因机器旧且没加载USB驱动,读碟太慢,

故没有等到进PE!)

或者

1.2 如接着用configfile加载UD中的menu.lst,也可成功,但如果再次进入命令环境中用find查看,这次看到的却是:

(ud)
(hd1,0)
(hd1,4)
(hd1,5)

少了,不见了(hd0)和(hd0,0)!如再用configfile加载UD中的menu.lst,则失败!

+ + + +

如果启动过程中按“C”键,直接进入命令环境,用find查看,看到的是:

(ud)
(hd1,0)
(hd1,4)
(hd1,5)


Excellence, I can reach for; perfection is God's business.

回复

使用道具 举报

发表于 2015-5-15 17:17:04 | 显示全部楼层
U盘:前(左,低)端为UD区,中段为exFAT格式的数据区,后(右,高)端存放UEFI启动文件(FAT格式),在WIN下使用的为中段

是否可以这样理解:
(ud),(hd0) 是 ud区;  (hd0,0) 是exFAT格式的数据区;  (hd0,4) 是存放UEFI启动文件(FAT格式)。

启动后,直接选第[11]项进入命令环境,执行 root,它是(ud)?再执行 find ,是上述“ 1.”显示的?

文件全部存放于UD区中

/boot/DISGEN462.GZ 是在ud区?
(同时还在根下放置了一个内容相同的menu.lst文件):

menu.lst文件在ud区?且只在ud区?

点评

我想原因似乎找到了:应该是加载 USB 驱动失败导致的! 我主观上一直认为这台电脑比较老旧,UD启动后首先选择的菜单项都是先加载 USB 驱动的,恰恰 USB 驱动失败了,导致无法 读碟!接着再选择哪怕是不加载 USB  详情 回复 发表于 2015-5-15 21:10
AA 是否可以这样理解: (ud),(hd0) 是 ud区; (hd0,0) 是exFAT格式的数据区; (hd0,4) 是存放UEFI启动文件(FAT格式)。 答:确实如此。 BB 启动后,直接选第[11]项进入命令环境,执行 root,它是(ud)?再  详情 回复 发表于 2015-5-15 20:19
回复

使用道具 举报

 楼主| 发表于 2015-5-15 20:19:59 | 显示全部楼层
2011yaya2007777 发表于 2015-5-15 17:17
是否可以这样理解:
(ud),(hd0) 是 ud区;  (hd0,0) 是exFAT格式的数据区;  (hd0,4) 是存放UEFI启动文 ...

AA
是否可以这样理解: (ud),(hd0) 是 ud区;  (hd0,0) 是exFAT格式的数据区;  (hd0,4) 是存放UEFI启动文件(FAT格式)。

答:确实如此。

BB
启动后,直接选第[11]项进入命令环境,执行 root,它是(ud)?再执行 find ,是上述“ 1.”显示的?

答:1)选第[11]项进入命令环境后,通过 ls 查看,通过文件清单可以清楚判断 root 是 (ud);
      2)选第[11]项进入命令环境后,先执行 find 或 执行完 ls 以后再执行 find 结果一样,看到的都是:
(ud)
(hd0)
(hd0,0)
(hd0,4)
(hd1,0)
(hd1,4)
(hd1,5)

CC
menu.lst文件在ud区?且只在ud区?

答:是的。menu.lst文件在ud区且只在ud区。U盘中其他地方及硬盘中均无 grldr 和 menu.lst 文件。
前面提过”能调用“ UEFI 分区中的菜单,那个菜单名与 menu.lst 完全不相似!
回复

使用道具 举报

 楼主| 发表于 2015-5-15 21:10:27 | 显示全部楼层
2011yaya2007777 发表于 2015-5-15 17:17
是否可以这样理解:
(ud),(hd0) 是 ud区;  (hd0,0) 是exFAT格式的数据区;  (hd0,4) 是存放UEFI启动文 ...

我想原因似乎找到了:应该是加载 USB 驱动失败导致的!

我主观上一直认为这台电脑比较老旧,UD启动后首先选择的菜单项都是先加载 USB 驱动的,恰恰 USB 驱动失败了,导致无法 读碟!接着再选择哪怕是不加载 USB 驱动的菜单项,其结果肯定也是失败。加载 USB 驱动失败后,如果再用 find 命令,就只能 看到 (ud) 一项了(少了两项)。

刚刚换了一只 U 盘,这只 U 盘启被识别为 USB-ZIP 盘,加载 USB 驱动确时成功的,因此没出现问题。加载与不加载 USB 驱动的区别只是 快慢的区别!

出问题的 U 盘被识别为 USB-HDD 盘,如不加载 USB 驱动,则没有问题,只是依旧很慢而已!

刚刚有用一只 U 盘试验了一下,它也是被识别为 USB-HDD,只要加载 USB 驱动就失败。

回想一下,在这台电脑上没遇到问题的启动 U 盘都是被识别为 USB-ZIP 类型的。


实在不好意思,再次感谢各位!
回复

使用道具 举报

发表于 2015-5-16 08:17:04 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2015-5-17 11:29 编辑
加载 USB 驱动失败

失败后显示什么信息?请使用以下 grldr 反馈一下屏幕信息:
加载 usb 驱动失败,反馈失败信息专用 grldr 下载地址
http://bbs.wuyou.net/forum.php?m ... jZ8NDIzMjYyfA%3D%3D

点评

手机拍的,不太清楚。  详情 回复 发表于 2015-5-16 10:51
回复

使用道具 举报

 楼主| 发表于 2015-5-16 10:51:02 | 显示全部楼层
2011yaya2007777 发表于 2015-5-16 08:17
失败后显示什么信息?请使用以下 grldr 反馈一下屏幕信息:
加载 usb 驱动失败,反馈失败信息专用 grldr ...

手机拍的,不太清楚。e:\err.jpg
回复

使用道具 举报

 楼主| 发表于 2015-5-16 10:52:33 | 显示全部楼层
不好意思,不知道怎么发图片。
err.jpg
回复

使用道具 举报

 楼主| 发表于 2015-5-16 11:22:05 | 显示全部楼层
这台电脑的BIOS有点怪异!

插上遇到问题的U盘,开机进入BIOS设置,设置启动设备顺序为USB-ZIP(1st)、USB-HDD(2nd)、Hard Disk(3rd),保存。

1)重启,不干预,电脑直接进入硬盘系统;

2)重启后,按F12,选择启动设备,选择USB-ZIP或USB-HDD,电脑直接进入硬盘系统;

3)重启后,按F12,选择硬盘,在列出的硬盘设备中选择USB-HDD0(对应U盘,而且排在固定硬盘之前),UD启动成功出菜单,选择预

加载USB驱动的菜单后遭遇“读碟”错误。

BIOS好像并不是“真的”或“完全”将U盘设别为USB-HDD设备?否则,选 1)或 2)应该进的是U盘啊!

难道是“硬盘”?也不对啊,否则选 1)进的也应是U盘啊!
回复

使用道具 举报

 楼主| 发表于 2015-5-16 12:12:52 | 显示全部楼层
这一张图清楚一些。
err.jpg
回复

使用道具 举报

发表于 2015-5-16 22:55:18 | 显示全部楼层
请测试.进入命令行,执行  usb --init .
如果仍然有问题,再使用前一 grldr 截图.
无忧论坛怎么不能上传文件了?

http://yaya20077777.ys168.com/

点评

使用你在#13楼提供的测试grldr,未内置自己的菜单,直接放置于UD中,UD中也没有menu.lst,启动后进入 命令环境,输入命令: usb --init 后,屏幕提示如下图所示:  详情 回复 发表于 2015-5-17 11:20
使用2015-05-14的0.46a的grldr(2015年5月16日22:41:12修改MD5=535B5054F738045C596220AF26F9BCB6,从 http://yaya20077777.ys168.com/下载得到) grldr未内置菜单,直接放置于UD中,UD中也没有menu.lst,启动后  详情 回复 发表于 2015-5-17 10:58
回复

使用道具 举报

 楼主| 发表于 2015-5-17 10:58:25 | 显示全部楼层
2011yaya2007777 发表于 2015-5-16 22:55
请测试.进入命令行,执行  usb --init .
如果仍然有问题,再使用前一 grldr 截图.
无忧论坛怎么不能上传文 ...

使用2015-05-14的0.46a的grldr(2015年5月16日22:41:12修改MD5=535B5054F738045C596220AF26F9BCB6,从

http://yaya20077777.ys168.com/下载得到)

grldr未内置菜单,直接放置于UD中,UD中也没有menu.lst,启动后进入命令环境,输入命令:

usb --init

后,屏幕提示:

Error 82. No USB device found. USB device is not ready.
回复

使用道具 举报

 楼主| 发表于 2015-5-17 11:20:27 | 显示全部楼层
2011yaya2007777 发表于 2015-5-16 22:55
请测试.进入命令行,执行  usb --init .
如果仍然有问题,再使用前一 grldr 截图.
无忧论坛怎么不能上传文 ...


使用你在#13楼提供的测试grldr,未内置自己的菜单,直接放置于UD中,UD中也没有menu.lst,启动后进入

命令环境,输入命令:

usb --init

后,屏幕提示如下图所示:


截图

截图
回复

使用道具 举报

发表于 2015-5-17 11:24:46 | 显示全部楼层
i845我还在用。你机子新,不加载USB 驱动未必就很慢。
可以做个测试:
1、从我帖子中下载0pe三八打包的版本(或者签名处下载),用批处理生成两文件。
事先可删除efi、imgs、petools文件夹以减少体积,不过体积大也不影响速度。
这些文件夹也可以移到高端分区放置。
2、用fbinsttool将ud里原有grldr暂时改名为g,然后把上述两文件不加修改拖入ud。
     如果拖不了,可在fbinsttool里右键导入(其中grldr导入ud主区,iso导入ud扩展区)。

点评

谢谢P大! 确实,在我这台I945的机器上用0PE时并不需要加载USB驱动,而且速度确实够快,1分钟可以进到PE桌面。 但如用的是非0PE家族的其他PE就很慢了,等4-5分钟有时也够呛。 你提到845的机器,碰巧我办公  详情 回复 发表于 2015-5-17 12:59
回复

使用道具 举报

发表于 2015-5-17 11:30:04 | 显示全部楼层
本帖最后由 2011yaya2007777 于 2015-5-17 11:31 编辑

不好意思。请按13#地址重新下载,然后测试截图。图像静止后,再等上1分钟。

点评

刚刚去#13楼重新下载了一个测试用的grldr,并按照要求做了测试,截了屏幕。  详情 回复 发表于 2015-5-17 13:02
回复

使用道具 举报

 楼主| 发表于 2015-5-17 12:59:37 | 显示全部楼层
pseudo 发表于 2015-5-17 11:24
i845我还在用。你机子新,不加载USB 驱动未必就很慢。
可以做个测试:
1、从我帖子中下载0pe三八打包的版 ...

谢谢P大!

确实,在我这台I945的机器上用0PE时并不需要加载USB驱动,而且速度确实够快,1分钟可以进到PE桌面。

但如用的是非0PE家族的其他PE就很慢了,等4-5分钟有时也够呛。

你提到845的机器,碰巧我办公室还有一台在用,5-60M大小的非0PE家族的PE,如不加载USB驱动,没有10分钟恐怕也看不到桌面。
回复

使用道具 举报

 楼主| 发表于 2015-5-17 13:02:25 | 显示全部楼层
2011yaya2007777 发表于 2015-5-17 11:30
不好意思。请按13#地址重新下载,然后测试截图。图像静止后,再等上1分钟。

刚刚去#13楼重新下载了一个测试用的grldr,并按照要求做了测试,截了屏幕。

截图

截图
回复

使用道具 举报

发表于 2015-5-18 13:23:33 | 显示全部楼层
请使用18#的grldr,在命令行执行:
usb --delay=3 --init

点评

刚刚测试了一下,执行 usb --delay=3 --init 后,没有出现错误提示,也没有卡死。 比较了一下,发现加载文件的速度没有改善,在加载与不加载驱动的情况下,读取32M大小的文件耗时基本上接近,都约为1分钟。  详情 回复 发表于 2015-5-18 19:19
回复

使用道具 举报

 楼主| 发表于 2015-5-18 19:19:28 | 显示全部楼层
2011yaya2007777 发表于 2015-5-18 13:23
请使用18#的grldr,在命令行执行:
usb --delay=3 --init

刚刚测试了一下,执行

usb --delay=3 --init

后,没有出现错误提示,也没有卡死。

比较了一下,发现加载文件的速度没有改善,在加载与不加载驱动的情况下,读取32M大小的文件耗时基本上接近,都约为1分钟。
回复

使用道具 举报

发表于 2015-5-18 19:26:50 | 显示全部楼层
可以试一试 --delay=1 或 --delay=2

点评

刚刚用 #18 楼下载的 grldr 在办公室的 845 机器上测试了一下(UD 启动后 root 为 hd0): 1、在命令环境下直接 usb --delay=3 --init 或 usb --delay=2 --init 或 usb --delay=1 --init 均无错误提示也未卡死,但  详情 回复 发表于 2015-5-19 16:05
回复

使用道具 举报

发表于 2015-5-18 21:34:16 | 显示全部楼层
谢谢反馈。
在M大要求下grub4dos不久前曾经有过一次某方面的大提速,现在看来还有可以提速的其它方面。
回复

使用道具 举报

 楼主| 发表于 2015-5-19 16:05:39 | 显示全部楼层
2011yaya2007777 发表于 2015-5-18 19:26
可以试一试 --delay=1 或 --delay=2

刚刚用 #18 楼下载的 grldr 在办公室的 845 机器上测试了一下(UD 启动后 root 为 hd0):

1、在命令环境下直接 usb --delay=3 --init 或 usb --delay=2 --init 或 usb --delay=1 --init 均无错误提示也未卡死,但速度

很慢,心读估计读取8M大小需时起码在30秒以上;

2、在命令环境下直接 usb --init 显示 Error 81: No USB device found. USB enumeration failed. Try to restart.

3、放在菜单中加载 usb --init 显示 Error 25: (http://grub4dos.chenall.net/e/25) Disk read error;


然而,另一只U盘,只有UD区和一个可见区,启动后 root 也为 hd0,同样是#18楼的grldr,同样的机器,却没有遇到问题。

记得 zds1210 曾经在某帖子中说过类似问题,加载 USB 驱动失败的起因会不会与 UD 三分区(配老机器)有关联呢?
回复

使用道具 举报

发表于 2015-5-19 16:28:40 | 显示全部楼层
加载 USB 驱动失败的起因会不会与 UD 三分区(配老机器)有关联呢

与 BIOS 及 U 盘有关,应该不会与 UD 三分区有关。
在 2. 情况,可以热/冷重启试一试。我的一个U盘就是这样。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 19:09

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表