You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

QEMU虚拟机中多客户机系统键盘按键失效问题咨询

解决QEMU中老客户机系统键盘按键失效的问题

这种QEMU下老客户机(比如MS-DOS 6.22、OS/2 Warp 4.52、Windows 98 SE)键盘按键失效的情况,我之前碰到过不少,结合你描述的宿主机和真实硬件都正常的情况,问题肯定出在QEMU的键盘模拟配置或者宿主机权限上,给你几个针对性的解决方案:

  • 强制指定键盘设备类型
    老系统对PS/2或USB键盘的兼容性不同,尝试在启动QEMU时添加键盘相关参数:

    • 强制使用USB键盘:qemu-system-i386 -hda win98.img -device usb-kbd
    • 强制使用PS/2键盘:qemu-system-i386 -hda dos.img -device ps2-kbd
    • 同时指定键盘布局(比如美式英文):qemu-system-i386 -hda os2.img -k en-us
  • 修复宿主机输入设备权限
    有时候QEMU没有权限访问宿主机的输入设备,导致按键无法传递到客户机。执行以下命令把当前用户加入input组,然后注销重新登录:

    sudo usermod -aG input $USER
    
  • 升级QEMU版本
    Ubuntu 17.10自带的QEMU版本比较老旧,可能存在老系统的键盘模拟bug。你可以尝试添加第三方PPA或者编译新版本的QEMU,新版本通常会修复这类兼容性问题。

  • 针对超老系统的特殊参数
    对于MS-DOS这类非常老的系统,试试用旧版QEMU的USB键盘参数:
    qemu-system-i386 -hda dos.img -usbdevice keyboard

另外,你还可以快速检查下QEMU窗口是否获得了焦点——有时候按键失效只是因为窗口没激活,但你说所有按键都不行,这个可能性应该不大,但还是可以确认下。

内容的提问来源于stack exchange,提问作者James

火山引擎 最新活动