在组合双启动/ Virtualbox设置中切换图形驱动程序

我已经建立了一个组合的双启动/ Virtualbox系统,Windows 8作为我的主操作系统和Ubuntu 14.04 LTS硬盘驱动器,也可以通过VirtualBox使用本指南作为虚拟机访问。

即使我不是一个非常有经验的Linux-,更不用说Ubuntu用户,我设法让它运行起来,除了一个问题:

当我实际启动到Ubuntu时,我想使用专有的fglrx驱动程序用于我的ATI Radeon R9 285x,因为我期望更好的性能,甚至更多的原因是我的VGA的风扇在使用开源时运行得更响亮驱动程序。 但是当我选择它们时,我不再能够通过VirtualBox访问我的Ubuntu桌面并陷入Login-loop,很可能是因为它无法加载正确的驱动程序。

另一方面,我还安装了guest添加项,它为我提供了全分辨率无缝虚拟机的所有便利。 但是当我激活它们时,它们也会替换图形驱动程序,以便定期启动Ubuntu。

所以现在我可以选择具有完全图形支持的虚拟机,但是具有大声图形风扇和不完整图形支持的真正Ubuntu环境,或者除了function齐全的Ubuntu系统之外没有图形支持的虚拟机。 切换需要每次重新安装或卸载fglrx。

所以我的问题是:

是否可以让系统在fglrx驱动程序和Virtualbox-guest-addition-driver之间切换,具体取决于它是定期启动还是在虚拟机中启动?

我成功地努力使这个无疑具有异国情调的设置工作,因为我也想要它。

重新安装Ubuntu后,本机启动系统的已安装guest虚拟机添加的问题消失了。

唯一剩下的问题是无法登录到安装了fglrx驱动程序的虚拟机桌面。 虽然内核模块总是正确地采用到相应的环境(vbox模块只在虚拟机内部运行而fglrx模块仅在本机启动时运行),但似乎仍然存在阻止虚拟机内部桌面环境启动的问题。

原来这是AMD libglx库,它们仍在用于虚拟机。

幸运的是,fglrx驱动程序软件提供了从amd到intel的简单切换命令,因此所有需要完成的工作就是执行

sudo /usr/lib/fglrx/switchlibglx intel 

并重新启动lightdm。

为了在引导期间自动执行此操作,我在/ etc / init / reading中创建了一个名为“checkvga.conf”的文件

 # Checks if VGA belongs to virtual machine description "Checks if VGA belongs to virtual machine" start on starting lightdm script if test -f /proc/modules && grep -q vboxguest /proc/modules 2>/dev/null; then /usr/lib/fglrx/switchlibglx intel restart lightdm fi end script 

我不得不放入“restart lightdm”命令以使其工作可靠,尽管我最初假设“启动lightdm启动”已足以在lightdm第一次启动之前执行此命令。 原因可能是实际上,需要重新启动X,因为在启动过程中可能已经有一个实例来显示启动画面。 如果有人知道,请赐教。