在nvidia-current和nouveau之间切换而无需重新启动?


24

可以在Nvidia的BLOB和Nouveau视频驱动程序之间即时切换吗?

我认为我需要能够:

  1. [✓]卸载nvidia
  2. [✓]卸载nouveau
  3. [✕]卸载nouveau *后还原控制台
  4. [✓]交换xorg.conf文件
  5. [✓]列入黑名单
  6. [✓]处理libglx.so

*)与#nouveau的人员进行了一些交谈之后,使用当前的Ubuntu安装程序(内置vesafb)似乎很难甚至不可能。我正在尝试使其与uvesafb一起使用,但是到目前为止,答案中的脚本可以满足我的需求。


听起来像是一笔非常冒险的交易Oo,您确定要这样做吗?
RolandiXor

4
风险意味着乐趣。:P
htorque 2010年

以防万一,可以在脚本中添加以下几行:chvt 1 chvt 7参考:hermann-uwe.de/tips-and-tricks/chvt
ericb 2013年

我只是想指出您所拥有的结构合理的职位。很高兴见到!:)
lindhe 2015年

Answers:


12

现在,我有两个脚本来切换驱动程序xorg.conf,将它们列入黑名单和libglx,因此答案是:是的,有可能。

将黑名单与/etc/modprobe.d/包含blacklist nvidia或的一个文件一起使用blacklist nouveau。我还替换/lib/nvidia-current/modprobe.conf了一个虚拟对象,否则nvidia驱动程序将始终在/etc/modprobe.d/该黑名单nouveau中创建一个链接。

切换到新手:

 #!/bin/bash
 stop gdm

 rmmod nvidia

 sed -i "s/nouveau/nvidia/" /etc/modprobe.d/blacklist-nvidia-nouveau.conf

 update-alternatives --set gl_conf /usr/lib/mesa/ld.so.conf
 ldconfig

 modprobe nouveau

 cp /etc/X11/xorg.conf{.nouveau,}

 start gdm

执行完之后,我运行了nouveau和一个工作控制台(nouveaufb)。

切换到nvidia:

#!/bin/bash
stop gdm

echo 0 > /sys/class/vtconsole/vtcon1/bind
rmmod nouveau
rmmod ttm
rmmod drm_kms_helper
rmmod drm

sed -i "s/nvidia/nouveau/" /etc/modprobe.d/blacklist-nvidia-nouveau.conf

update-alternatives --set gl_conf /usr/lib/nvidia-current/ld.so.conf
ldconfig

modprobe nvidia-current

cp /etc/X11/xorg.conf{.nvidia,}

start gdm

→Nvidia驱动程序正在运行,唯一的问题是:卸载nouveau驱动程序后,控制台将无法使用。我需要一种重置它或加载另一个帧缓冲区的方法,但是由于vesafb已编译到内核中,所以我不知道该怎么做。


主要目标已经实现,因此我会接受这一点,直到有人能提出解决终端问题的方法为止。
htorque 2010年

似乎有一个新问题要问这个问题:askubuntu.com/questions/855451/…我在此处链接了您的答案,但是经过测试,我意识到它不再起作用了。也许您可以更新答案。
学生

0

我不相信这是有可能的,不仅nouvou驱动程序内核模式设置没有,而nvidia则没有,而且nvidia驱动程序使用了被入侵的xorg库,即使在需要intel驱动程序的机器上使用相同的安装,也是如此。(请参阅颠倒的元素错误和问题)


1
我认为这就是为什么他们添加了“ gl_conf”替代项。使用更新替代方法可以轻松地在Nvidia库和“正常”库之间切换。
htorque 2010年

0

http://nouveau.freedesktop.org/wiki/KernelModeSetting/建议在rmmoding nouevau后恢复/mode/init.d/consolefont 重新启动以恢复文本模式。请注意,在较新的系统上已将其重命名为console-font,在Ubuntu 13.10中根本无法以这种方式调用它,但是像这样:service console-font restart

另外,它并不总是有效。在某些情况下,启动X(服务lightdm start-或使用的任何DM)将启动gfx模式,并在切换到vt1(ctrl-alt-f1)时也提供工作文本模式。

(我使用它来将nvidia驱动程序安装到实时CD会话中)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.