我有一台 Windows 7 主机和一台 Debian 8 客户机。我已经安装了
virtualbox-guest-utils virtualbox-guest-x11 virtualbox-guest-dkms
如下所述https://askubuntu.com/questions/3205/higher-screen-resolution-in-virtualbox。在安装这些软件包之前,我最多可以选择 1024*768。安装后,可以选择 1600*1200。但我只想在我的显示器上使用 1920*1080 全屏。
无法按下 Host-G。我猜想这个组合键已停用。 如何在 Linux 中将 VirtualBox 分辨率提高到 800x600 以上?
有没有办法做到这一点?
答案1
与此同时,我找到了解决方案。
有两种描述可以说明其工作原理:
第二: http://forums.debian.net/viewtopic.php?f=16&t=78330#p429581
简而言之:
$ cvt 1920 1080 60
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
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 VBOX0 "1920x1080_60.00"
$ xrandr --output VBOX0 --mode 1920x1080_60.00
执行这些命令后,新的分辨率会自动出现。此外,每次启动操作系统后都必须执行这些命令。
与此同时,我写了一篇关于该主题的博客文章:http://www.robert-franz.com/2015/06/28/adding-new-resolution-to-the-x-window-server/
答案2
实现此目的的直接方法是直接更改 grub2 引导加载程序中的特定配置:
找出你的 Debian 客户机支持的分辨率
- 重新启动 debian 并继续按
c
直到看到 grub 控制台。 - 按下
vbeinfo
并点击回车。它将为您提供支持的分辨率列表。
- 重新启动 debian 并继续按
编辑
/etc/grub.d/00_header
- 用新的分辨率替换
auto
该行。例如:if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=auto ; fi
if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=1920x1080 ; fi
- 在下面,复制已编辑的行并将其替换
MODE
为PAYLOAD
。例如:if [ "x${GRUB_GFXPAYLOAD}" = "x" ] ; then GRUB_GFXPAYLOAD=1920x1080 ; fi
- 在下面,您将看到以下行:
set gfxmode=${GRUB_GFXMODE}
。在其下方添加以下行:set gfxpayload=${GRUB_GFXPAYLOAD}
- 用新的分辨率替换
- 运行命令
update-grub2
并重新启动,重新加载 grub2 配置reboot
[注意]
我见过很多示例,其中#GRUB_GFXMODE=640x480
文件中的默认行/etc/defaul/grub
未注释。事实证明这对我来说是不必要的,但如果您需要它,请记住update-grub2
在取消注释后使用它。
答案3
我知道这个问题与不同的版本有关,但对于安装了最新版本的 VirtualBox (5.2) 的人来说可能会有用
我的设置:
- VirtualBox 5.2.0 r118431
- 主机操作系统:Windows 10
- 客户操作系统:带有 XFCE 的 Linux Debian 9.2.1
- Guest Additions ISO:VBoxGuestAdditions_5.2.1-118447(请注意,这不是您通过默认安装程序获得的 ISO,virtualbox 网站上有说明可下载较新版本)
必须在重新启动的客户操作系统上以超级用户模式运行以下命令:
mkdir -p /lib/modules/$(uname -r)/build/include/drm
touch /lib/modules/$(uname -r)/build/include/drm/drm_rect.h
必须VBoxLinuxAdditions.run
再次执行,然后客户操作系统需要重新启动
开发下载中还有一个较新的 Guest Additions ISO,应该可以解决这个问题Virtualbox 测试版本
致谢:
答案4
我在 Windows 10 下的 VirtualBox 中使用 Debian 10 映像,并使用默认 GUI 安装了 Debian。
我发现在 GUI 中,我能够直接选择分辨率(例如,在我的情况下为 1920x1440,即我的主机的最大分辨率),从而避免与 CLI 争论。
设置(应用程序)-> 设备 -> 显示器 -> 分辨率
选择分辨率会导致 VM 采用所选的屏幕尺寸,并且 VirtualBox 窗口会相应调整大小。