我们有一堆在 Centos 5 上运行的计算机控制设备。我们还需要使用专有的 Nvidia 驱动程序,默认的 nv 驱动程序无法与我们需要的某些软件正常工作。
只需使用 Nvidia 主页上的安装脚本安装专有驱动程序就可以正常工作,直到发生内核更新。然后我有一些困惑的用户打电话给我,因为 X 不再启动了。
该问题的解决方案是安装启用 dkms 的 Nvidia 驱动程序。这解决了问题,并且据我所知,驱动程序已与内核一起正确更新。但这引发了一个新问题,使用启用 dkms 的驱动程序启动 Firefox 会使 X 服务器崩溃。
这两个版本都远非理想,必须照顾每个内核更新并再次安装驱动程序是非常烦人的。 Firefox X 崩溃的情况更糟。
当前推荐的在最新 Centos 5 上安装专有 NVidia 驱动程序并在内核更新后继续存在的方法是什么?
答案1
nvidia
每次内核更新时都必须重新构建内核模块,因为该模块nvidia.ko
是为每个内核构建并放置在模块目录中的。发生这种情况有几个原因(在我的脑海中):
- 该模块是二进制的。
- 每个构建都需要访问新的内核头。
- dkms 模式切换会干扰二进制模块。
Firefox X 崩溃的原因是 Firefox 尝试启动/使用 3D 加速。因此,您需要确保 OpenGL 驱动程序设置为 Nvidia,而不是默认的 XOrg OpenGL 驱动程序。如果已设置,则您使用的卡不支持 3D 和/或您需要:
- 在所有应用程序中禁用 3D 加速,或者:
- 删除 DKMS。
DKMS 与二进制 blob 不兼容。