![bbswitch 无法关闭独立显卡](https://linux22.com/image/1382129/bbswitch%20%E6%97%A0%E6%B3%95%E5%85%B3%E9%97%AD%E7%8B%AC%E7%AB%8B%E6%98%BE%E5%8D%A1.png)
由于一些问题,我不得不重新安装 fedora。我目前有 fedora-19 和内核版本3.11.4-201
。
我尚未安装 NVIDIA 驱动程序,而是使用默认的 nouveau 图形驱动程序。Bumblebee 和 bbswitch 已正确安装,但 bbswitch 无法关闭独立显卡。我这样做了,tee /proc/acpi/bbswitch<<<OFF
但当我检查状态时,它报告已打开。
dmesg|grep bbswitch
给出以下内容:
[ 25.192983] bbswitch: module verification failed: signature and/or required key missing - tainting kernel
[ 25.193158] bbswitch: version 0.7
[ 25.193165] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.GFX0
[ 25.193172] bbswitch: Found discrete VGA device 0000:01:00.0: \_SB_.PCI0.PEG0.PEGP
[ 25.193316] bbswitch: detected an Optimus _DSM function
[ 25.193325] bbswitch: Succesfully loaded. Discrete card 0000:01:00.0 is on
[ 1383.773601] bbswitch: device 0000:01:00.0 is in use by driver 'nouveau', refusing OFF
Bumblebee-daemon 正在运行,但optirun glxgears -info
出现以下情况:
[ 2441.794492] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) Failed to load module "mouse" (module does not exist, 0)
[ 2441.794545] [ERROR]Aborting because fallback start is disabled.
目前没有文件调用bbswitch.conf
或/etc/modprobe.d/
。/etc/modules-load.d/
手动创建文件并添加bbswitch load_state=0
到其中是否明智?
如何关闭独立显卡?在我之前的 fedora-17 上,关闭过程非常顺利,厌烦到 fedora-19。bumblebeed 不是应该在没有人工干预的情况下将其关闭吗?我如何知道 bbswitch 是否与内核兼容?
编辑
在一次启动过程中,图形被关闭,但当我尝试时它又打开了optirun glxgears -info
(顺便说一下,出现了同样的错误)。我重新安装了 bbswitch 和 bumblebee,但问题并没有解决。
答案1
这bbswitch 自述文件对此非常清楚:
的用户
kmod
应创建/etc/modprobe.d/bbswitch.conf
包含options bbswitch load_state=0
来设置默认选项。要加载模块,systemd 用户应创建/etc/modules-load.d/bbswitch.conf
包含bbswitch
。
为了让 bbswitch 关闭显卡,您还必须阻止 nvidia 模块加载(在您的情况下为 nouveau)。在我的系统上,我创建了/etc/modprobe.d/nvidia.conf
以下内容:
blacklist nvidia
blacklist nouveau
options bbswitch load_state=0
接下来,应该使用以下方法更新 initrddracut --force
使用 Bumblebee 时,上述操作完全没有必要(守护进程将在启动时卸载模块并使用 bbswitch)。但是由于竞争条件,bumblebee 守护进程可能会在加载 nouveau 驱动程序的同时启动。因此,将模块列入黑名单仍然是明智之举。
请注意,在optirun foo
某些情况下发生故障时,nvidia 卡不会被禁用。这就是为什么您观察到 nvidia 图形仍然处于启用状态。
答案2
我遇到了类似的问题,报告的输出与您的第一篇文章相同。回答您的问题,为了实现切换,我最终完全删除了 Bumblebee。清除了它。相反,我使用了 nvidia-340 驱动程序的 ppa 安装,这是目前专有驱动程序中最新的。这顺利地成功将 nouveau 列入黑名单并处理 X 服务器,执行了所需的内核和配置更改。它具有 prime 和 bbswitch 作为依赖项,从那里开始一切都运行良好。然后运行“sudo prime-select intel”让 intel 与 prime 一起工作并为其更新最新的驱动程序。当我打开 NVIDIA X 服务器设置时,我能够顺利切换。为了在 Blender 下使用 CUDA,我还必须添加 nvidia-modprobe。有关更详细的描述请参阅此主题