我目前使用 Ubuntu 12.04 LTS 作为主机,并且虚拟化了三台机器:
- Xubuntu 12.04 访客
- Windows 7 客户端
- Ubuntu 12.10 客户端
所有客户机都有相同的 VirtualBox 默认设置,但 Ubuntu 12.10 速度较慢!
安装耗时1小时40分钟!(正常情况下需要40分钟)现在根本没法用,所有操作都非常非常慢。
我正在使用 VirtualBox 版本 4.2.4。
有任何想法吗?
为什么它这么慢?我怎样才能让它更快?
答案1
Ubuntu 12.10 不再包含 Unity 2D,这是针对无法提供 3D 加速的平台实现的。相反,Ubuntu 12.10 让 Unity 在 LLVM 下运行,让原本为 GPU 编写的代码在 CPU 上运行。这比使用 GPU 慢得多。
要检查你的 Ubuntu 12.10 客户机是否正在使用 3D 加速,请运行以下命令:
$ /usr/lib/nux/unity_support_test -p
Not software rendered: no
Not blacklisted: yes
GLX fbconfig: yes
GLX texture from pixmap: yes
GL npot or rect textures: yes
GL vertex program: yes
GL fragment program: yes
GL vertex buffer object: yes
GL framebuffer object: yes
GL version is 1.4+: yes
Unity 3D supported: no
如您所见,在此示例中,“非软件渲染”和“支持 Unity 3D”都返回“否”,这意味着 Unity 正在使用慢速 LLVMpipe。
如何启用 3D 加速(仅限 VirtualBox 4.2.x)
这些说明适用于从 VirtualBox 网站安装的 VirtualBox 4.2.4 或 4.2.6,而不是从 Ubuntu 的 repo 安装。VirtualBox 的未来版本可能会自动修复此问题,或者可能需要不同的解决方法。
- 安装 VirtualBox Oracle VM VirtualBox 扩展包。
- 创建一个 VirtualBox 实例并在其上安装 Ubuntu 12.10。
安装一些客户附加所需的软件包:
sudo apt-get install linux-headers-$(uname -r) build-essential
通过单击“设备”、“安装客户机添加项”并从 CD-ROM 目录运行此命令来安装客户机添加项:
sudo ./VBoxLinuxAdditions.run
通过运行以下命令将驱动程序添加
vboxvideo
到实例:sudo bash -c 'echo vboxvideo >> /etc/modules'
- 关闭 VirtualBox 实例。
- 打开Virtualbox实例的设置,导航到“显示”,然后勾选“启用3D加速”。
启动你的 Ubuntu 12.10 客户机,并通过运行以下命令检查 3D 加速是否正常工作:
/usr/lib/nux/unity_support_test -p
如果窗户似乎消失,安装 CompizConfig 设置管理器并在 OpenGL 部分禁用帧缓冲区对象 (FBO):
安装 CompizConfig 设置管理器:
sudo apt-get install compizconfig-settings-manager
运行 CompizConfig 设置管理器:
ccsm
- 选择 OpenGL 部分,然后取消勾选 Framebuffer Object 选项。如果此操作能解决问题,则应该会立即显示出来。无需重启。
答案2
我听说这与他们删除了Unity 2D或者说,切换到 3D Unity 只会降低 VM 性能,因为它比以前更加依赖 CPU 处理。Linux Outlaws 播客谈论了一点,但我忘记了那一集。
更新:问题在于 Virtualbox Guest Additions 在 12.10 中不提供 3D 加速。请参阅Ubuntu 12.10 无法使用 3D 加速。无法构建 DRM。
答案3
VirtualBox 软件开发人员似乎正在研究解决方案,但尚未准备好 - 请参阅论坛帖子讨论 4.2.4 版本。
有一个帖子在讨论这个问题Ubuntu 12.10“实际上”无法使用
答案4
我从 Unity 迁移回备用 GNOME 后取得了不错的效果。您只需从软件中心安装 GNOME-session-fallback,然后在登录屏幕上选择它即可。