Answers:
注意:这篇文章是花了很多天时间阅读网络上的各种内容的结果,所以风险自负。它已在具有nVidia GT650M图形卡的Ubuntu 12.04 / 12.10 / 13.04 / 13.10 / 14.04(全部64位)上进行了测试。随时添加评论和建议
1.首先,我们必须删除计算机上的所有视频驱动程序:
sudo apt-get remove --purge nvidia*
然后,如果您以前已经安装过大黄蜂,请执行以下操作:
sudo apt-get remove --purge bumblebee*
我们还必须使用以下命令删除所有nouveau驱动程序:
sudo apt-get --purge remove xserver-xorg-video-nouveau
为确保已删除全部内容,请尝试键入dpkg -l | grep nvidia
and dpkg -l | grep bumblebee
:它不应返回任何内容。对于dpkg -l | grep nouveau
很可能返回一些行说libdrm-nouveauXXXXX
; 现在,请忽略它们。
2.然后,我们必须确保键入所有标题:
sudo apt-get install linux-source && sudo apt-get install linux-headers-$(uname -r)
3.接下来要做的是将剩余的nouveau驱动程序和一些其他的可能会引起问题的软件包列入黑名单:
sudo cp /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf.bak
sudo gedit /etc/modprobe.d/blacklist.conf
在文件末尾添加以下行:
# Necessary to install nvidia drivers
blacklist nouveau
blacklist lbm-nouveau
blacklist nvidia-173
blacklist nvidia-96
blacklist nvidia-current
blacklist nvidia-173-updates
blacklist nvidia-96-updates
alias nvidia nvidia_current_updates
alias nouveau off
alias lbm-nouveau off
options nouveau modeset=0
只需保存并退出。
4.现在,运行最了解的ubuntu命令
sudo apt-get update && sudo apt-get dist-upgrade -y
5.从现在开始,我们研究tty。使用CTRL + ALT + F1打开tty1控制台,然后使用您的用户名和密码登录。然后执行:
sudo service lightdm stop
现在,我们将安装驱动程序。执行:
sudo apt-get install nvidia-XXX-updates nvidia-settings
其中XXX是最新的稳定驱动程序。我正在使用331驱动程序,但是我读过某个地方可以下载343(不知道它们是否稳定)。
注意:对于最新的驱动程序版本,nvidia-prime
默认情况下也会安装。该技术旨在自动在Intel和nVidia图形卡之间切换,而无需用户干预。为此,两个卡都保持打开状态。另一方面,Optimus仅在明确的用户请求下打开nVidia图形卡。相对于质数,它的功耗大大降低。
我个人更喜欢擎天柱而不是黄金,但如果您不担心能源的巨大浪费,请停在这里。否则,您有两个选择:
完全删除质数(sudo apt-get remove --purge nvidia-prime
);
留下质素;在“带有擎天柱的Prime”部分中,我们将看到如何在安装有Prime的情况下使optirun工作
6.现在,我们必须使用以下命令安装bumblebee和virtualgl软件包:
sudo apt-get install bumblebee bumblebee-nvidia virtualgl virtualgl-libs virtualgl-libs-ia32:i386 virtualgl-libs:i386
然后,我们必须使用以下命令将用户添加到bumblebee组中:
sudo usermod -a -G bumblebee $USER
然后重启电脑。
7.登录您的用户帐户,打开一个新的终端窗口,然后键入:
cd /etc/bumblebee
ls -Al
在列出的各种文件中,特别应该有两个:bumblebee.conf
和xorg.nvidia.conf
。让我们用以下两者制作一个备份副本:
sudo cp FILE_NAME FILE_NAME.bak
您应将FILE_NAME替换为文件的实际名称。然后,让我们使用修改第一个文件sudo gedit bumblebee.conf
,并添加(全部不带引号)
确保[nvidia-driver]下的“ XorgConfFile”等于“ /etc/bumblebee/xorg.conf.nvidia”(同样,不带引号),然后保存并关闭gedit。
现在,我们必须使用编辑另一个文件sudo gedit xorg.conf.nvidia
(在这种情况下,我们还必须插入引号!!)。替换
Option "ConnectedMonitor" "DFP"
为 Option "UseDisplayDevice" "none"
,保存并退出。
8.运行gedit /etc/modprobe.d/bumblebee.conf
并确保所有包含的行blacklist <something>
均未注释(即,它们不以开头#
)。
9.此时,运行以下命令
sudo service bumblebeed start
如果返回错误,请尝试使用重新启动而不是启动再次运行命令。如果仍然有错误,则类似:
restart: Unknown job: bumblebeed
bumblebee.conf文件中可能有错误;因此,请重新检查步骤7。
如果相反,结果类似于:
bumblebeed start/running, process XXXXX
您即将完成设置大黄蜂的工作!
10.现在我们可以简单地运行optirun glxspheres
或optirun glxspheres64
。如果所有工作都按预期进行,那么您将获得以下输出:
$ optirun glxspheres64
Polygons in scene: 62464
Visual ID of window: 0x20
Context is Direct
OpenGL Renderer: GeForce GT 650M/PCIe/SSE2
182.253407 frames/sec - 203.394802 Mpixels/sec
182.940725 frames/sec - 204.161849 Mpixels/sec
....
要仔细检查我们是否实际上正在使用nvidia驱动程序,请在optirun <application>
运行时打开另一个终端,然后键入sudo lshw -c display | grep driver
。结果应该是这样的。
configuration: driver=nvidia latency=0
configuration: driver=i915 latency=0
另一方面,如果关闭所有以optirun
它启动的应用程序,则应仅显示intel驱动程序。而已!!
感谢Pavak Paul的回答,这是在Ubuntu 14.04上添加bumblebee用户界面以管理要使用nVidia打开的应用程序的说明。
1.安装Python App Indicator:
sudo apt-get install python-appindicator
2.安装Git:
sudo apt-get install git
3.为git创建目录:
mkdir git && cd git
4.签出存储库:
git clone https://github.com/Bumblebee-Project/bumblebee-ui.git
cd bumblebee-ui
sudo ./INSTALL
5.转到启动应用程序并添加bumblebee-indicator [单击“添加”,然后插入所需的名称和注释;插入bumblebee-indicator
命令框中,然后单击添加)。
6.重新启动。
如果您想选择nvidia-prime
有时也使用,请尝试按照以下说明进行操作。
1.为防止bumblebeed
启动时启动,请执行以下操作:
echo "manual" | sudo tee /etc/init/bumblebeed.override
2.这是最成问题的;它可以防止大黄蜂将nVidia驱动程序列入黑名单,并应导致图形会话冻结。试试看,后果自负!跑:
sudo gedit /etc/modprobe.d/bumblebee.conf
并注释包含您的nVidia XXX驱动程序的行。它应该导致类似的结果。
# XXX
#blacklist nvidia-XXX
#blacklist nvidia-XXX-updates
blacklist nvidia-experimental-XXX
3.重新启动系统并启动nvidia-settings
。最终的情况是这样的:
如果您在nvidia设置中选择“英特尔(省电)”,则默认情况下仅打开了英特尔图形卡。您仍然必须运行一个应用程序optirun
才能使用nVidia图形卡
sudo service bumblebeed start
optirun <application>
相反,如果您要使用“ Nvidia(Performance)”配置文件,请从nvidia设置中选择它,然后登录/注销,所有设置都应自动运行。唯一的事情是您不必在bumblebeed
选择此配置文件的情况下启动守护程序,因为它可能会引起麻烦。
1.如果只想使用nvidia-prime
:
sudo apt-get --purge remove bumblebee*
然后重新启动。
2.如果只想使用擎天柱而不删除nvidia-prime,请再次编辑上一个文件:
sudo gedit /etc/modprobe.d/bumblebee.conf
从先前修改的行中取消注释(删除#字符):
# XXX
blacklist nvidia-XXX
blacklist nvidia-XXX-updates
blacklist nvidia-experimental-XXX
并重新启动。在这种情况下,您可以在引导时让bumblebeed运行:
sudo rm /etc/init/bumbebeed.override
vblank_mode=0 primusrun ./glxgears
可以通过使用来解决问题,也可以使用vblank_mode=0 optirun -b primus ./glxgears
。谢谢:)