无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 8312|回复: 38
打印 上一主题 下一主题

Grub4dos刚进入界面时,按键失灵BUG!!!!

  [复制链接]
跳转到指定楼层
1#
发表于 2014-6-29 20:25:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
每次电脑启动进入GRUB4DOS界面时,第一次按任何键的效果,都和按e键的效果一样,即进入到命令编辑模式,再按Esc,才会正常,有时候进入到Grub4dos界面时,想通过下方向键来调顺序,第一次按,总是失灵,第二次第三次就正常了,有谁遇到我这样的问题??顶起来,希望解决!!
推荐
 楼主| 发表于 2014-6-29 20:34:44 | 只看该作者
进入界面的第一次按键会失灵,这是为什么啊?
回复

使用道具 举报

推荐
 楼主| 发表于 2014-6-29 22:32:40 | 只看该作者

是这样的,刚进入grub4dos启动界面时,如果你想按方向下键,选择下面的菜单,但是你会发现,按下后,进入的是命令编辑界面,而不是向下,你重新按Esc后,返回到菜单,再按下键,才可以进行菜单的选择,好烦人啊,grub4dos怎么会这样
回复

使用道具 举报

推荐
发表于 2014-6-29 21:49:15 | 只看该作者
我是遇過好幾台,尤其是舊電腦,會卡在進不去選單中,所以乾脆設定 1 秒的時間,當遇到進不到選單的電腦時,手動輸入 commandline 來啟動自已想要的系統。

default 0
timeout 1
title Startup MultiBootMenu
fallback 1
configfile /BOOT/GRUB/MENU.LST
title Startup GRUB Command line
commandline
回复

使用道具 举报

推荐
 楼主| 发表于 2014-7-1 22:14:34 | 只看该作者
不点 发表于 2014-7-1 20:51
好的,多谢。我已经可以确定这完全是攻击 grub4dos 的行为了。

E065 完全是错误的扫描码,没有任何一个 ...

谢谢不点兄的解答,你讲的很清楚,没事,如果只是技嘉主板会这样,我还能忍受,希望不是大面积主板都发生这样的事情就好
回复

使用道具 举报

推荐
发表于 2014-7-1 20:51:45 | 只看该作者
好的,多谢。我已经可以确定这完全是攻击 grub4dos 的行为了。

E065 完全是错误的扫描码,没有任何一个按键组合会是这样一个扫描码。可以说,这是无效按键。但 grub4dos 忽略高字节的扫描码,只使用低字节的 ASCII 码,所以,就把它当成 e 键了。攻击者完全了解 grub4dos,知道这样的攻击是有效的。

这个攻击对其他 BIOS 软件不产生影响。因为其他软件通常都不采用扩展键盘 BIOS 调用。

预计这个攻击还会继续下去。我估计到最后,我们可能被迫放弃扩展键盘 BIOS 调用,回归到普通键盘 BIOS 调用。

你可以暂时使用第一个测试版来解决这个问题(它可以作为日常使用)。第一次按方向键无效,那是因为第一次按键产生了无效的扫描码。这是技嘉主板的问题,没办法解决。

点评

谢谢不点兄的解答,你讲的很清楚,没事,如果只是技嘉主板会这样,我还能忍受,希望不是大面积主板都发生这样的事情就好  详情 回复 发表于 2014-7-1 22:14
回复

使用道具 举报

推荐
 楼主| 发表于 2014-7-1 20:15:07 | 只看该作者
不点 发表于 2014-7-1 19:55
看来第一次按方向键,确实出现了错误,这个错误,又正好让 grub4dos 进入编辑状态。 E065 的低字节是 0x65 ...

又测试了
主板出厂时间:2014年1月17号(在BIOS中查询的)
测试结果:
刚进入GRUB4DOS时,4个方向键,不管哪一个,第一次按,都是显示E065,其它键,如数字键1,不是E065
回复

使用道具 举报

推荐
发表于 2014-7-1 12:00:01 | 只看该作者
谢谢辛苦测试,非常好。下一次准备测试技嘉主板键盘处理。请准备好。

主要是看它对于方向键的键盘扫描码的特殊处理,对于其他键也可以顺便提供测试结果。

测试开机后的第一次按键与后续多次按键的扫描码有何不同。

测试比较繁琐,请做好准备。

点评

恩,有什么我能帮忙的,尽管告诉我,测试扫描码的工作,也是不点兄你做吗  详情 回复 发表于 2014-7-1 12:03
回复

使用道具 举报

推荐
 楼主| 发表于 2014-7-1 10:11:15 | 只看该作者
不点 发表于 2014-7-1 00:19
测试版来了。看看键盘处理还有没有什么异常情况发生?

回不点兄,刚在技嘉主板上测试过了,不会再出现方向键进入命令编辑了,但是现在新的问题是,每次按的第一个键,都会失灵,也就是说要按2次,才能操作。技嘉主板会这样,其它的主板是正常的。
回复

使用道具 举报

推荐
发表于 2014-7-1 00:19:03 | 只看该作者
测试版来了。看看键盘处理还有没有什么异常情况发生?

grub4dos-0.4.5c-2014-06-30.7z

253.84 KB, 下载次数: 5, 下载积分: 无忧币 -2

仅仅供测试用,不可用于日常使用

点评

回不点兄,刚在技嘉主板上测试过了,不会再出现方向键进入命令编辑了,但是现在新的问题是,每次按的第一个键,都会失灵,也就是说要按2次,才能操作。技嘉主板会这样,其它的主板是正常的。  详情 回复 发表于 2014-7-1 10:11
回复

使用道具 举报

推荐
 楼主| 发表于 2014-6-30 19:51:07 | 只看该作者
xianglang 发表于 2014-6-30 19:44
楼主的菜单加载了HOTKEY,会不会是这个造成的?试试不用HOTKEY会不人会这样?

试过了,不加载HOTKEY,也会有问题,目前为止,除了技嘉主板,其它主板都不会出现问题
回复

使用道具 举报

3#
发表于 2014-6-29 21:30:01 | 只看该作者
没发现此现象。

点评

是这样的,刚进入grub4dos启动界面时,如果你想按方向下键,选择下面的菜单,但是你会发现,按下后,进入的是命令编辑界面,而不是向下,你重新按Esc后,返回到菜单,再按下键,才可以进行菜单的选择,好烦人啊,gru  详情 回复 发表于 2014-6-29 22:32
回复

使用道具 举报

6#
发表于 2014-6-29 23:00:19 | 只看该作者
看明白了。

请您试试旧版,比如 0.4.4 的,看看有没有这个毛病。如果没有毛病,你再试试新版,找出是哪一天引入的 bug。

我怀疑是键盘处理的过程引入了某个 bug。不过需要您辛苦测试一下。

点评

谢谢您的回复,不点兄,我上大学时,就一直在无忧上关注你,现在毕业多年过去后,还看见你一直活跃在无忧上。好惊喜。佩服。这个菜单选择时,出现那个问题,很烦人,我用的主板是技嘉GA-B85,测试了我办公室的8台电  详情 回复 发表于 2014-6-29 23:16
回复

使用道具 举报

7#
 楼主| 发表于 2014-6-29 23:16:27 | 只看该作者
不点 发表于 2014-6-29 23:00
看明白了。

请您试试旧版,比如 0.4.4 的,看看有没有这个毛病。如果没有毛病,你再试试新版,找出是哪 ...

谢谢您的回复,不点兄,我上大学时,就一直在无忧上关注你,现在毕业多年过去后,还看见你一直活跃在无忧上。好惊喜。佩服。这个菜单选择时,出现那个问题,很烦人,我用的主板是技嘉GA-B85,测试了我办公室的8台电脑,一直是这样,每台电脑的键盘都是不同的品牌
回复

使用道具 举报

8#
 楼主| 发表于 2014-6-29 23:21:17 | 只看该作者
多年,一直用grub4dos,也一直关注无忧,从来没出过什么问题,现在用的0.4.5c版本,有这个问题,可能是个bug,我有空再测测其它的版本,有什么情况,我反及时向无忧反映的
回复

使用道具 举报

9#
 楼主| 发表于 2014-6-29 23:46:04 | 只看该作者
刚测试过了,测过了0.4.4和0.4.6a,再启动时,还是有那个问题,我怀疑是不是我的菜单写的有问题哦?我用的是内置grldr菜单,没有写到外面的单独菜单文件中,是内置的,下面,我放出我的菜单文件,大家看看是不是菜单问题,才导致这样的,谢谢大家了!!
default 0
timeout 30
color normal=0x1F highlight=0xE1 helptext=0x1D heading=0x0A standard=0x0F border=0x1F
graphicsmode -1 100:1000 100:1000
font (ud)/source/font/unifont.hex.gz
write 0x8274 0x2001
insmod /command/hotkey
hotkey

title DiskGenius
map (ud)/boot/img/DGDOS_IMG462.img (fd0) || map --mem (ud)/boot/img/DGDOS_IMG462.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title ^B Acronis2013
map (ud)/boot/iso/Acronis2013.iso (0xff) || map --mem (ud)/boot/iso/Acronis2013.iso (0xff)
map --hook
chainloader (0xff)

title Acronis2013_PlusPack
map (ud)/boot/iso/Acronis2013_PlusPack.iso (0xff) || map --mem (ud)/boot/iso/Acronis2013_PlusPack.iso (0xff)
map --hook
chainloader (0xff)

title 命令行
commandline

title Reboot
reboot

title [H] Halt
halt
回复

使用道具 举报

10#
发表于 2014-6-30 09:05:11 | 只看该作者
本帖最后由 sratlf 于 2014-6-30 09:06 编辑
2011after 发表于 2014-6-29 23:46
刚测试过了,测过了0.4.4和0.4.6a,再启动时,还是有那个问题,我怀疑是不是我的菜单写的有问题哦?我用的 ...


如果是用grldr默认内置菜单会出现这种问题吗

点评

是的  详情 回复 发表于 2014-6-30 09:09
回复

使用道具 举报

11#
 楼主| 发表于 2014-6-30 09:09:07 | 只看该作者
sratlf 发表于 2014-6-30 09:05
如果是用grldr默认内置菜单会出现这种问题吗

是的
回复

使用道具 举报

12#
发表于 2014-6-30 12:08:02 | 只看该作者
请 2011after 兄再做个试验,这次启动到菜单界面以后,记住先按几下 ESC 键,然后再按向下的箭头,看看这是否正常。

点评

回不点兄,我一直都是通过按ESC来防止这个问题发生的,也就是说,我每次启动到GRUB4DOS菜单界面时,第一件事,都会按ESC,来防止方向键和其它键失灵,但我认为不该这样,什么时候,能不按ESC就好了,好麻烦  详情 回复 发表于 2014-6-30 12:36
回复

使用道具 举报

13#
发表于 2014-6-30 12:29:31 | 只看该作者
楼主还内置中文支持,有问题太正常了(当然不是所有电脑都有问题),我的外置中文都有小毛病,能不用就不用。

点评

内置中文就不会出问题了吗?我估计不一定吧,应该不是中文的问题  详情 回复 发表于 2014-6-30 12:36
回复

使用道具 举报

14#
 楼主| 发表于 2014-6-30 12:36:17 | 只看该作者
不点 发表于 2014-6-30 12:08
请 2011after 兄再做个试验,这次启动到菜单界面以后,记住先按几下 ESC 键,然后再按向下的箭头,看看这是 ...

回不点兄,我一直都是通过按ESC来防止这个问题发生的,也就是说,我每次启动到GRUB4DOS菜单界面时,第一件事,都会按ESC,来防止方向键和其它键失灵,但我认为不该这样,什么时候,能不按ESC就好了,好麻烦
回复

使用道具 举报

15#
 楼主| 发表于 2014-6-30 12:36:50 | 只看该作者
2011902 发表于 2014-6-30 12:29
楼主还内置中文支持,有问题太正常了(当然不是所有电脑都有问题),我的外置中文都有小毛病,能不用就不用 ...

内置中文就不会出问题了吗?我估计不一定吧,应该不是中文的问题
回复

使用道具 举报

16#
 楼主| 发表于 2014-6-30 12:41:29 | 只看该作者
刚才还真按2011902的方法试验了,全部改为英文,也不加载中文字体,还是有那个问题,问题依旧!!!不点大师,希望你能解决此问题,重重感激!!
回复

使用道具 举报

17#
发表于 2014-6-30 13:34:45 | 只看该作者
这个问题还需要调查、摸索一段时间,看看究竟是什么原因造成的。目前我怀疑技嘉的主板,在执行扩展键盘 bios 服务的时候,第一次按键自动按下了 e 键(但 ESC 键碰巧正常)。以后按键就正常了。这应该属于主板的 bug 了。

只要找到原因,那就有 n 多办法可以解决。关键是找原因。请 2011after 继续观察、试验,提供更多细节供分析、研究。

点评

会的,我重启了好多次电脑去试验这个启动界面的按键问题,只要电脑不坏就好了。另外,在中国,无数人用GRUB4DOS,怎么都没发现这个问题,偏偏整个中国,目前就我发现了,好奇怪哦  详情 回复 发表于 2014-6-30 13:48
回复

使用道具 举报

18#
 楼主| 发表于 2014-6-30 13:48:36 | 只看该作者
不点 发表于 2014-6-30 13:34
这个问题还需要调查、摸索一段时间,看看究竟是什么原因造成的。目前我怀疑技嘉的主板,在执行扩展键盘 bio ...

会的,我重启了好多次电脑去试验这个启动界面的按键问题,只要电脑不坏就好了。另外,在中国,无数人用GRUB4DOS,怎么都没发现这个问题,偏偏整个中国,目前就我发现了,好奇怪哦
回复

使用道具 举报

19#
 楼主| 发表于 2014-6-30 14:09:34 | 只看该作者
又测试过了,目前为止,只发现在技嘉主板上有这个问题,我测试我的小黑thinkpad t410和thinkpad t430,以及我的华硕f8se和宏基上网本AOD270,都没有出现这个启动按键的问题。按这个来说,真是跟主板有关,那么如何能修复在技嘉主板上出现的这个BUG呢?
回复

使用道具 举报

20#
发表于 2014-6-30 19:44:04 | 只看该作者
楼主的菜单加载了HOTKEY,会不会是这个造成的?试试不用HOTKEY会不人会这样?

点评

试过了,不加载HOTKEY,也会有问题,目前为止,除了技嘉主板,其它主板都不会出现问题  详情 回复 发表于 2014-6-30 19:51
回复

使用道具 举报

25#
 楼主| 发表于 2014-7-1 12:03:44 | 只看该作者
不点 发表于 2014-7-1 12:00
谢谢辛苦测试,非常好。下一次准备测试技嘉主板键盘处理。请准备好。

主要是看它对于方向键的键盘扫描码 ...

恩,有什么我能帮忙的,尽管告诉我,测试扫描码的工作,也是不点兄你做吗
回复

使用道具 举报

26#
发表于 2014-7-1 12:12:00 | 只看该作者
本帖最后由 不点 于 2014-7-1 12:30 编辑

是的,这个工作不难,这部分代码是我编写的,我比较熟悉,又不太消耗体力,所以由我来做。其实 chenall 和 yaya 都能做。在我能做的情况下,我给他们减负,让他们能够有时间做别的工作。至于说其他的,像 NTFS、exFAT、ISO9660 文件系统等等方面出了问题,那我就不管了,因为我不熟悉。请等待一下,也许是今天晚上吧。

借此话题顺便说点相关的看法。这个问题的实质是由扩展键的支持引起的。键盘有基本键和扩展键。基本键包括普通的按键以及 F1,F2,... F10,而扩展键包括 F11,F12 以及其他一些键。基本键盘的 BIOS 是各个硬件厂家都支持的,但扩展键的 BIOS 会出现五花八门的问题。

如果我们一直采用基本的键盘 BIOS,不去支持那些扩展键,则一切都会风平浪静,不会有问题。但是,chenall 想要支持扩展键,所以,才出现了这些与键盘有关的问题。我个人觉得,支持 F11、F12 所带来的麻烦,是得不偿失的。

其实我不怕主板有 bug,因为 bug 是可以设法绕过的。我怕的是主板制造商专门针对 grub4dos 故意制造 bug,目的是让 grub4dos 不能正常使用。

扩展键盘的支持,就是这样一个方面,这方面容易遭到主板 bios 的攻击。其他基于 bios 的软件通常都是使用基本的键盘 bios,而不是使用扩展的键盘 bios。所以,假如主板制造商真的想要攻击 grub4dos 的话,他们是很容易发动攻击的,只需攻击扩展键盘的 bios 调用便可。

等测试完成之后,我会根据测试结果,给出我的分析判断,确定这次是不是有意攻击 grub4dos。目前看来很像是攻击,我觉得大约有 50% 的可能性是在攻击。



点评

行。麻烦你了,不点兄,弄出来后,给我下载,我第一时间给出测试结果给你,我办公室的电脑主板是拔嘉的,家里用的电脑也是技嘉主板,能随时测试  详情 回复 发表于 2014-7-1 12:14
回复

使用道具 举报

27#
 楼主| 发表于 2014-7-1 12:14:51 | 只看该作者
本帖最后由 2011after 于 2014-7-1 12:21 编辑
不点 发表于 2014-7-1 12:12
是的,这个工作不难,这部分代码是我编写的,我比较熟悉,又不太消耗体力,所以由我来做。其实 chenall 和  ...


行。麻烦你了,不点兄,弄出来后,给我下载,我第一时间给出测试结果给你,我办公室的电脑主板是技嘉的,家里用的电脑也是技嘉主板,能随时测试
回复

使用道具 举报

28#
发表于 2014-7-1 15:05:44 | 只看该作者
好的,测试键盘扫描码。

注意,有些按键会产生多个扫描码。每个扫描码占用一行。有些按键会产生多个扫描码,将会占用多行,请留意。

请用笔记录你按了什么键,以及这个键产生了什么扫描码。

Shift,Ctrl,Alt 与不同的键组合,会产生不同的扫描码。有兴趣的话,可以多多测试这些扫描码,没兴趣就不用过多测试了。


注意:当你开始按键后,就无法停止测试了。只能按 Ctrl+Alt+Del 重启电脑。

grub4dos-0.4.5c-2014-07-01.7z

253.84 KB, 下载次数: 7, 下载积分: 无忧币 -2

测试键盘扫描码,会死机,请仅仅用于测试

点评

测试环境:技嘉主板台式 测试过程: 1、打开电脑,从U盘启动进入GRUB4DOS界面,什么也不操作 2、开始按键过程 第一次按键,“方向键下”,扫描码:E065 第二次按键,依然是“方向键下”,扫描码:50E0 第三次  详情 回复 发表于 2014-7-1 18:27
回复

使用道具 举报

29#
 楼主| 发表于 2014-7-1 18:27:04 | 只看该作者
不点 发表于 2014-7-1 15:05
好的,测试键盘扫描码。

注意,有些按键会产生多个扫描码。每个扫描码占用一行。有些按键会产生多个扫描 ...

测试环境:技嘉主板台式
测试过程:
1、打开电脑,从U盘启动进入GRUB4DOS界面,什么也不操作
2、开始按键过程
第一次按键,“方向键下”,扫描码:E065
第二次按键,依然是“方向键下”,扫描码:50E0
第三次按键,依然是“方向键下”,扫描码:50E0(保持不变了,不管再按多少次,也不变,一直是50E0)
第四次按键:“方向键上”,扫描码:48E0
以下不说明第几次按键了,按个什么,对应个什么
“方向键左”——4BE0
“方向键右”——4DE0
"ESC"——011B
“1”——0231
“2”——0332
“3”——0433
“a”(小写的,未按shift,以下字母都是小写)——1E61
‘b’——3062
“空格键”——3920
“Enter”——0E08
以上出现的扫描码,也不知道是字母O,还是阿拉伯数字0,我都当阿拉伯数字0记录了
好了,不点兄,就先测试这些
回复

使用道具 举报

30#
发表于 2014-7-1 19:55:41 | 只看该作者
看来第一次按方向键,确实出现了错误,这个错误,又正好让 grub4dos 进入编辑状态。 E065 的低字节是 0x65,恰好是 e 键的 ASCII 码。

需要确定,其他方向键第一次按下时,是否也是 E065,如果是的,那就没办法区分这几个(首次按下的)方向键。

如果你能确定电脑出厂时间,就可了解这是不是攻击了。

点评

又测试了 主板出厂时间:2014年1月17号(在BIOS中查询的) 测试结果: 刚进入GRUB4DOS时,4个方向键,不管哪一个,第一次按,都是显示E065,其它键,如数字键1,不是E065  详情 回复 发表于 2014-7-1 20:15
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-9-22 10:24

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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