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

Hyper-V中带RemoteFX视频适配器的Ubuntu虚拟机屏幕分辨率问题

解决Hyper-V中Ubuntu 18.04桌面版屏幕分辨率问题(含RemoteFX适配)

刚上手Windows 10上的Hyper-V跑Ubuntu 18.04桌面版时,我也踩过屏幕分辨率的坑——原来改grub的方法确实能解决普通情况,但启用RemoteFX 3D视频适配器后就完全不管用了,给你整理了两种场景下的解决方案:

一、未启用RemoteFX 3D Video Adapter时的配置方法

这是最常用的标准配置方式,步骤清晰:

  • 打开终端,编辑grub配置文件:
    sudo nano /etc/default/grub
    
  • 找到GRUB_CMDLINE_LINUX_DEFAULT这一行,在quiet splash后追加分辨率参数,修改后内容如下:
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=hyperv_fb:1920x1080"
    
    你可以把1920x1080替换成任意你需要的分辨率,比如2560x14401600x900
  • 保存并退出nano编辑器:按Ctrl+O确认保存,再按Ctrl+X退出
  • 更新grub使配置生效:
    sudo update-grub
    
  • 重启虚拟机,分辨率就会自动切换到你设置的参数了

二、启用RemoteFX 3D Video Adapter后失效的解决办法

开启RemoteFX后,Hyper-V会加载专门的3D图形驱动,原来的hyperv_fb帧缓冲驱动就不再生效了,这时候需要用Ubuntu原生的显示设置或自定义分辨率来解决:

方法1:通过系统显示设置调整

  1. 确保Ubuntu已经预装了Hyper-V Linux集成服务(Ubuntu 18.04默认已经集成,无需额外安装)
  2. 打开Ubuntu的设置应用,找到显示选项
  3. 在分辨率下拉菜单中,直接选择你需要的分辨率(比如1920x1080)
  4. 点击应用,系统会弹出确认窗口,选择保留更改即可完成设置

方法2:自定义添加缺失的分辨率

如果下拉菜单里没有你想要的分辨率,可以手动添加:

  • 打开终端,先查看当前显示输出设备名称:
    xrandr
    
    通常输出结果中会显示类似Virtual-1的设备名称
  • 生成自定义分辨率的模式参数(以1920x1080@60Hz为例):
    cvt 1920 1080 60
    
    终端会返回一串模式信息,比如:

    Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync

  • 将这个模式添加到显示设备:
    xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
    xrandr --addmode Virtual-1 1920x1080_60.00
    
    注意把命令中的Virtual-1替换成你刚才查到的实际显示设备名称
  • 回到显示设置,就能看到刚才自定义的分辨率了,选择应用即可

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

火山引擎 最新活动