Ubuntu 14.04和VirtualBox的屏幕分辨率问题

环境:Lenovo T530 运行 Windows 7。使用 VM Virtual Box 在虚拟机上安装了 Ubuntu 14.04,并安装了来自 Virtual Box 和 Ubuntu 的所有更新。
问题:在 Ubuntu 的桌面和其他 Ubuntu 启动的程序中,窗口被缩小到大约 3x4 英寸,显示在我的常规 Virtual Box 窗口的中间。我只能看到正常屏幕输出的右上角部分。
我已经看到了如何在 VirtualBox 虚拟机中安装 Guest Additions?,但是这些答案都不适用于 14.04 版本。

7我不认为这是一个重复的问题。在使用Ubuntu 14.04安装Guest Additions时,我收到了“警告:安装了未知版本的X Window System。不进行安装”的提示。 - mjaggard
3这绝对不是一个重复的问题(即使答案是一样的)。我是通过搜索屏幕分辨率问题才找到这个,然后在这里了解到"guest additions"就是答案。(如果我早知道要问关于"guest additions"的问题,我就不会有疑问或问题了。) - Greg Hendershott
3答案甚至都不一样。通常你会使用可以从主机挂载的客户附加ISO,但似乎对于14.04版本来说,你必须通过apt软件库安装才能正常工作。 - flungo
2可能是在VirtualBox OSX上安装14.04后无法更改屏幕大小的重复问题。 - user123444555621
2我也遇到了这个问题。虚拟机增强功能似乎已经安装成功,但全屏模式仍然显示较小的操作系统界面。kraxor,请问你在哪里看到系统设置? - user322522
1@BrianBarrick 在从VB菜单(设备->安装增强功能)安装了Guest Additions之后,我遇到了同样的问题。但是在明确运行下面第一个答案中的命令(sudo apt-get install ...)并重新启动虚拟机后,一切都正常了。 - Stefan Buynov
只需进入系统设置 -> 显示 -> 菜单和标题栏的缩放,并相应地进行调整(在安装增强功能后)。 - Peter Kelly
我也遇到了“警告:安装了未知版本的X Window System。无法安装”错误,这里提供的解决方案都没有起作用,除了将Virtualbox更新到5.0.8版本(并获取最新扩展),然后再次尝试并重新启动(虚拟机)。 - Munawwar
9个回答

你基本上需要Guest additions,登录到虚拟机中安装以下软件包:
sudo apt-get install virtualbox-guest-dkms

最后重新启动虚拟机以完成安装。

6谢谢,我之前误解了这一步骤,在看到你的回答之前以为我应该在主机上安装Guest Additions。唉,真是个错误。 - Aaron
7@symphonyblade:这些软件包确实是用于在客户操作系统上安装的。 - Sylvain Pineau
这个适用于Ubuntu 12吗? - carter
@carter 同样的软件包也适用于12.04.5版本。安装后,您应该能够手动设置更高的分辨率(例如1600x1200)。 - Sylvain Pineau
对我来说,只安装virtualbox-guest-dkms就足够了。 - AlikElzin-kilaka
那个像蝴蝶一样顺利解决了...简单得就像123一样的解决方案..谢谢 :) - user1427944
42在我的Ubuntu 14.04 LTS安装上无法工作。我得到了以下软件包存在未满足的依赖关系:virtualbox-guest-x11: 依赖于xorg-video-abi-15 依赖于xserver-xorg-core(>= 2:1.14.99.902) - THelper
@Antonio 我觉得你最好写自己的答案,而不是编辑现有的答案。目前有1个用户批准了你的编辑,但另一个用户因为偏离原始内容太多而拒绝了它。这个编辑可能会被完全拒绝。 - THelper
@THelper 我觉得你不应该安装x11部分。我建议你看一下我刚刚发布的答案 - Antonio
如果有人看到这条评论,请使用以下答案:在“设备”菜单中选择“插入增强功能”。简单而有效。 - Breedly
43@THelper 在Ubuntu 14.04上,我也遇到了“The following packages have unmet dependencies. virtualbox-guest-x11 : Depends: xorg-video-abi-15...”。根据这里的@conradk的解决方案对我有效:首先运行sudo apt-get remove libcheese-gtk23,然后运行sudo apt-get install xserver-xorg-core,最后运行sudo apt-get install -f virtualbox-guest-x11 - snark
评论中的解决方案都没有在14.04.3上起作用 - 我仍然有未满足的依赖关系。 - Elden Abob
我无法在我的Ubuntu 14.04安装上完成这个任务,因为我的网络需要使用代理。而我又无法设置代理,因为用于设置代理的图形界面工具所需的屏幕空间超过了640x480。真是一个棘手的两难问题。 - T.E.D.
...弄清楚了如何设置代理,但这仍然不起作用。看起来虚拟机的东西与14.04.3版本的X系统不兼容。我找到的唯一解决办法是改用15.10版本。分辨率仍然无法更改,但至少现在是1024x768,所以还算可用。 - T.E.D.
在Ubuntu 14.04上表现糟糕透顶。你可能应该重新修订或删除这个答案。 - Luís de Sousa
这在我重启机器后起作用了一次,然后就永远变回小尺寸了。 - rschwieb
这里的第二个答案对我在14.04.3上有效,而这一个没有起作用。 - Alexandr Kurilin
2这对我完全没用。还是一个小屏幕。 - Rafael_Espericueta

在VirtualBox中,您需要安装“Guest Additions”。无需通过Ubuntu设置来设置分辨率。在前台打开客户机窗口后,从顶部菜单中选择:
VirtualBox -> Devices -> Insert Guest Additions CD image

在Ubuntu中打开终端,导航到cd文件夹(通常是/media/VBOXADDITIONS*),然后运行。
sh ./VBoxLinuxAdditions.run

请注意,您应该拥有一个可用的gcc/g++编译器。

3这个错误提示说似乎已经从不同的安装程序或软件包安装了客户机附加组件,导致失败。唯一的解决方案是使用apt-get安装三个软件包。 - Jistanidiot
2完全相同,在尝试在VirtualBox上安装Xubuntu 14.04 64位时遇到了问题。从挂载的CD映像安装Guest Additions无法正常工作-它会破坏X Server的安装。根据Sylvain的建议,使用apt-get从公共软件源进行安装可以解决问题。 - azec-pdx
5+1 这是唯一对我有效的解决方案。作为一个初步步骤,更新VirtualBox管理器至最新版本非常重要。我在这里发布了一个新答案,附带了一些额外的细节。 - Antonio
1虽然出现了一个错误,提示已从不同的安装程序安装了虚拟机增强功能等等。你要继续吗?回答是,请在它完成后重新启动,然后它就会正常工作。 - Ala' Alnajjar
这对我有用!使用VirtualBox 4.3.26和从osboxes.org下载的Ubuntu 14.04。 - Tim Büthe
这是唯一一个对我有效的答案,在win8上... - sed
在VirtualBox 5.0.8 r103449上,对我来说很好用,使用的是xubuntu-14.04.3-desktop-amd64.iso镜像。 - arturomp
1+1 对我有用 - Virtualbox 5.0.10 Mac - Michal Gallovic
尽管CD已经挂载在/media/{用户名}/.. Ubuntu 14.4 LTS on Windows 7 VBox下,但是+1。 - Gishu
1之前的apt-get解决方案在我使用Ubuntu 14.4时失败了,但是这个解决方案在我使用VirtualBox 5.0.16和5.0.17 Linux Guest Additions后成功了。我使用CD按钮加载iso Guest Addition镜像后,脚本本身被自动检测并运行。 - ozborn

我遇到了和你一样的问题。我按照以下步骤操作,也许对你有帮助:
  1. 进入系统设置 → 软件和更新 → 附加驱动
  2. 使用x86虚拟化解决方案...
  3. 之后重新启动你的VirtualBox
我的VirtualBox现在运行得很好。

1天啊,试了这么多其他方法,浪费了这么多时间,最后这个简单的解决方案起了作用。 - Adrian Carr
简单如一、二、三-有效。 - acme
已验证在Ubuntu Mate 14.04.1系统上。 - Elder Geek
4设置这个选项在我的Ubuntu 14.04 LTS安装上似乎没问题(没有错误信息),但是重启后我仍然保持640x480的分辨率,并且没有更改的选项。 - THelper
2在从osboxes.org获取的14.04.2桌面新镜像上,当我启动时,分辨率是640x480。然后我打开系统设置 -> 软件和更新 -> 附加驱动程序。没有选择“使用x86虚拟化解决方案”的选项。这是因为分辨率的原因被隐藏了吗?我需要先安装Guest Additions吗? - Ezward
2对我没有帮助 - Daniel
2在我的Ubuntu 14.04 LTS安装中,系统设置下没有"软件和更新"选项。我看到那里有两个类别的内容,"个人"和"硬件"。也许还有第三个类别,只是我没有看到,可能是因为... 我的屏幕太小 - T.E.D.
1确实,由于您的分辨率太小,您在底部看不到它,但您可以向下滚动。 - Aurélien
1在我的附加驱动程序中,InnoTek的两个选项都显示“此设备无法工作”。 - David Doria
在这里无法工作(Ubuntu 14.04 VB 5.0.14) - rschwieb
@T.E.D. 尝试启用工作区来虚拟扩大您的屏幕:系统设置 -> 外观 -> 行为 -> 启用工作区。您可以使用 Ctrl+Alt+光标键切换工作区,这样您就可以看到所有内容(稍微移动窗口一下)。 - Tino

在尝试安装客户机增强功能失败后,我在其他地方找到了另一个解决方案:linuxbsdos.com

从仪表板中使用Xdiagnose。搜索并启动Xdiagnose,然后在调试部分下启用所有选项。点击应用按钮,然后关闭窗口并重新启动系统。

这就是最终的解决办法!现在我可以获得1024 x 768的分辨率,而不是640 x 480。

我从未卸载过客户机增强功能,所以可能需要同时采取这两个措施。

enter image description here

---------- 编辑 ---------

我已经意识到上述描述的解决方案只是一种备选方案,以防安装访客附加组件失败。我终于成功地安装了它们,并且现在可以在显示设置中选择更多的分辨率。以下是我在尝试了上述所有方法后成功安装它们的步骤。

One thing I had already tried earlier was


sudo apt-get install virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11
This is not enough in itself, but might be a necessary prerequisite for the following steps (of which some might not be necessary...).

更新Virtualbox到最新版本(目前为4.3.24)。 在客户系统的终端中输入:

    sudo apt-get install dkms
    sudo apt-get install build-essential module-assistant
    sudo m-a prepare

如果在Guest系统中没有顶部菜单,那是因为你处于缩放模式,导致其隐藏。在这种情况下,请按Host + C 来切换缩放模式(其中Host默认是右Ctrl)。
  1. 在Guest系统中,转到顶部菜单,点击设备->插入Guest Additions CD镜像。这将挂载CD镜像。
  2. 在我的情况下,自动启动起作用,并且安装开始有一个提示。如果没有自动启动,您可以执行以下操作。

    cd /media/<username>/VBOXADDITIONS_4.3.10_93012
    sudo ./VBoxLinuxAdditions.run

请确保将<username>替换为已登录用户的用户名。
然后重新启动,正如JTIM所指出的那样......

3嗯,它确实为我启用了1024x768的分辨率,至少有点进展。 尽管我尝试了所有其他解决方案,但它仍然不允许我设置更高的分辨率。 - sp00n
+1你的解决方案对我也起作用了! - THelper
我在登陆时得到了一个瞬间的1024x768分辨率,然后一个相当宽的损坏窗口...但这无论如何是我能够接近解决方案的最佳选择。 - Antonio
1我按照这些步骤成功地使其在任何分辨率下工作。 - Antonio
2太棒了!我不确定所有的步骤是否都是必要的(如果你首先安装virtual-guest-dkms,那么dkms已经是最新的),但对我来说肯定有效!现在,Ubuntu中的虚拟机窗口可以自动适应所有分辨率。哦,还有,在你的第一步中,我需要排除virtualbox-guest-x11。 - THelper
1然后重新启动 :) - JTIM
我个人强烈推荐这个解决方案! - Afzaal Ahmad Zeeshan

这个回答中进行开发,实际上在这篇其他帖子中也有很好的解释。(我真的尝试了这里发布的所有其他方法,但对于我的Windows 7系统似乎都不起作用)

初步步骤:

确保您已安装了最新版本的Virtual Box(*). 请注意,如果您要求Virtual Box更新到最新版本,即使存在更新版本,它也很可能声明已经更新!
从一个干净的发行版开始可能是个好主意,创建一个新的虚拟机,在那里安装Ubuntu(我允许在安装过程中从网络下载更新的软件包),然后在继续之前进行克隆,这样如果遇到问题,您可以避免从头开始重新启动。
安装build-essentiallinux-headers-generic软件包。显然,还建议安装dkms, 因为"在客户操作系统中运行DKMS将在客户内核更新后保持Guest Additions已安装"如何操作:
  1. 启动您的虚拟机

  2. 在Virtualbox菜单中 -> 设备 -> 插入Guest Additions CD镜像...

  3. 从Ubuntu中,您应该会看到一个弹出窗口,请允许CD自动运行以安装程序。对我来说,就像以前很多次一样,它说找不到Linux头文件,但是这次最终一切都顺利进行。
    如果自动运行不起作用,请打开终端(Ctrl+Alt+T),导航到文件夹(通常是/media/VBOXADDITIONS*)并运行

    sh ./VBoxLinuxAdditions.run

  4. 关闭然后再次启动您的虚拟机


(*) 如果像我一样,使用新版本的Virtual Box时遇到网络问题,请查看this video(简而言之:使用桥接网络,并选择“允许VM”)


太棒了!在所有的答案中,这是唯一一个对我有效的答案,使用的是Ubuntu 14.04.2 64位客户机和Windows 7主机。 - Jon Bentley
太棒了,这个解决方案在尝试了许多其他方法之后实际上完美地起作用了!谢谢你! - jaseeey
这次在经历了多次失败尝试之后成功了。 - Jdbaba
在我的Windows 7 / Ubuntu 14.04 64位设置上运行得非常好。谢谢。 - michael
终于有个真正有效的东西!:-) 在 Ubuntu 14.04 主机上安装了 Ubuntu 14.04。 - Rafael_Espericueta
我在使用VBox时落后了一个完整的版本(而且它显示是最新的...)!感谢这个提示,我会更加重视它!!! - Nearoo
我尝试了一些帖子中的解决方案,这个是对我有效的。主机:Windows 10,Virtualbox 6.1,客户机 lubuntu 18 64位。现在一切都正常工作。谢谢 - AN For

我遇到了同样的问题。我按照其他答案中所解释的方法安装了客户端附加组件,并在设置中增加了视频内存的大小,问题得以解决。

1在尝试了几个小时的其他选项(安装客户增强工具、更新等)后,我意识到这就是问题所在。 - endo64
1非常感谢!这应该是用户必须检查的第一件事!我浪费了半天时间试图弄清楚如何修复它,尝试了1000种方法...最终,你救了我的一天,谢谢! - Sirop4ik
@AlekseyTimoshchenko 我很高兴它对你也起作用了! - Elder Geek

有时候,简单的解决方案可能就是这样:

enter image description here


哈哈,完美地解决了问题!没有安装客户机附加组件,也没有像其他答案建议的那样进行任何特殊操作。 - WinEunuuchs2Unix

我在Debian Wheezy上运行的VirtualBox 4.1中的Ubuntu 14.04虚拟机中,屏幕分辨率低的问题困扰了我好几天。常见的解决方法(例如安装virtualbox-guest-dkms、安装增强功能)都没起作用。但是从官方下载页面安装VirtualBox就解决了这个问题!

要进一步说明Sylvain Pineau所说的,输入以下命令会更容易(通配符可以与apt-get一起使用):

sudo apt-get install virtualbox*

3但它将根据您的ppa设置安装诸如virtualbox-sourcevirtualbox-dbg和旧版本(如virtualbox-2.2)的软件包。 - Sylvain Pineau