NVIDIA

From openSUSE

(Redirected from NVIDIA 驱动教程)

Image:Susemini.png 本文处于需要修订的文章的状态,欢迎您积极参与翻译与修订。 翻译人员:rodsuper ichair,修订人员:无。


Contents

NVIDIA 驱动程序由于受限许可证不能被 openSUSE 整合。但是对于新用户来说幸运的是, NVIDIA 和 openSUSE 提供了非常简便的方法来安装 NVIDIA 驱动程序:NVIDIA 为 openSUSE 制作了 RPM 并在一个软件源里提供。


较为简单的方法

在大多数时候都非常容易。

注意: openSUSE 10.2 上的NVIDIA驱动安装包并不是对应DVD上的默认内核而制作的,所以你必须通过YaST在互联网上更新到最新的内核才能正常工作。 但有时会出现问题。因为内核更新, 迫于安全原因会 破坏现有版本的兼容性。这种情况下,你需要按照操作指南The Hard Way来开启3D功能。


openSUSE 10.3

安装

在 openSUSE 10.3 里,您可以使用 1-Click-Install。

  • 使用较新 NVIDIA 显卡的用户,点击这里:

Nvidia-1click.png

  • 使用较旧 NVIDIA 显卡的用户,点击这里:

Nvidia-legacy-1click.png

在 NVIDIA 显卡上使用 Compiz

要通过 NVIDIA 驱动程序直接使用 Compiz 或者 Compiz Fusion ,运行下面的命令并且重新启动 X (登出并按下 <ctrl>-<alt>-<Backspace>).

su -
nvidia-xconfig --composite
nvidia-xconfig --render-accel
nvidia-xconfig --add-argb-glx-visuals -d 24


openSUSE 10.2

1. 导入 NVIDIA GnuPG key。 在控制台以 root 登录并且输入或者用鼠标复制粘贴:

rpm --import ftp://download.nvidia.com/opensuse/10.2/repodata/repomd.xml.key

2. 向软件包管理器添加 NVIDIA rpm-md 源: ftp://download.nvidia.com/opensuse/10.2/

  • 若要在 YaST 中完成,转到 Software -> Installation Source. 点击 Add 然后选择 Specify URL. 在那里输入上面的 URL 并点击 Next,然后点击 Finish.
  • 若要通过 Zypper 完成,使用以下命令:
zypper sa ftp://download.nvidia.com/opensuse/10.2/ nvidia

3. 辨别您需要哪一种 'nvidia' 驱动程序包。这决定于您的显卡型号。对于较新的显卡您可能需要 x11-video-nvidiaG01nvidia-gfxG01-kmp-default 包。如果您的显卡属于 NVIDIA Legacy 那么您需要 x11-video-nvidianvidia-gfx-kmp-default. (The list is taken from http://www.suse.de/~sndirsch/nvidia-installer-HOWTO.html)

如果您在使用一个非默认的 Kernel,用 nvidia-gfxG0-kmp-bigsmp 代替 nvidia-gfxG0-kmp-default (或者用 nvidia-gfx-kmp-bigsmp 代替 nvidia-gfx-kmp-default)。这里的 "bigsmp" 代表您的 Kernel 的种类。您可以通过 uname -r 查看。

4. 安装选定的软件包,例如 x11-video-nvidiaG0nvidia-gfxG0-kmp-default.

  • 要通过 Zypper 完成。作为例子,执行:
zypper install x11-video-nvidiaG0 nvidia-gfxG0-kmp-default

5. 重新启动 X (登出并按下 <ctrl>-<alt>-<Backspace>).

6. Enjoy!

6. 内核更新会触发新的 NVIDIA 内核驱动的安装。旧的版本仍会被保留,您可以手动删除,执行:

rpm -qa |grep nvidia-gfx 

如果列表中含有 "nvidia-gfxG01-...",您可以删除余下的 nvidia-gfx-... 包。


SUSE Linux 10.1 与 SLED 10

    • 向软件包管理器 (YAST 或者 ZEN) 添加 YUM 源 ftp://download.nvidia.com/novell/sle10sp1
    • 安装这些包 x11-video-nvidia and nvidia-gfx-kmp-default
    • 重新启动 X (登出并按下 CTRL-ALT-Backspace)。
    • 完成。

You will also get updated packages when NVIDIA publishes them on this site.


较为复杂的方法

这是为想要使用最新的 NVIDIA 驱动程序,并且愿意每次内核升级后都重新编译驱动程序,或者已将默认 DVD 版本的内核升级的人准备的。

预备工作

  • 编译器 gcc,
  • 程序 make
  • kernel-source

如果您还没有安装它们,可以在 YaST 中安装。

--关于安装 kernel-source 的特别说明-- 登入到控制台并输入: "su",输入您的 root 密码,然后输入 "yast"。 在这里面转到 Software Management。按 F2 (Search)键。搜索 "kernel-source"。 选择所需模块并按 Enter 键。 它前面将出现符号 "+"。按 F10 键,它将会被安装。按若干次 F9 键以退出 Yast。

下载 NVIDIA 驱动程序

首先,如果您曾用脚本安装,那么您可以在 /usr/share/doc/nvidia 找到 NVIDIA 安装包。 如果没有,则去 NVIDIA Download Page,取得适用于您的计算机的驱动程序。

安装驱动程序

如果您在 runlevel 5,则可以通过以 root 在某一控制台 (可通过按 ctrl-alt-f1 [f1 到 f6] 进入) 输入以下命令来进入 runlevel 3。

init 3

进入含有驱动程序的目录。

cd /usr/share/doc/nvidia

或者

cd /the/path/where/you/saved/the/drivers/from/nvidia/website

执行以下命令并按照提示操作。

sh NVIDIA-Linux-<arch>-<version>-<build>-<pkg#>.run -q


配置 X.org

下一步工作将是配置 X.org 以使用新的 NVIDIA 驱动程序。执行以下命令

sax2 -r -m 0=nvidia

Sax2 会在 X 中启动它的配置程序。您可以按照您的意愿做更多的配置。 在 10.0 版本中您无需指定 -m 0=nvidia ,如果您激活了 3D加速, Sax2 将会自动检测。


对于旧显卡的支持

SUSE 10.0,10.1和openSUSE 10.2 支持所有的NVIDIA 芯片组,这些芯片组的驱动都是开源的“nv”驱动,很不幸的是它们由于不支持3D加速而在性能上很不理想。如果想要启动3D加速,就需要安装由NVIDIA发布的官方驱动。

为了方便起见,这里给出了一个旧芯片组的列表,上面的驱动对应着三组旧芯片组(new unified,legacy 1.0-96xx 和 old legacy 1.0-71xx):

上面的列表可以帮助你找出你的芯片组或显卡对应的驱动程序。

注意: Nvidia 一直在维护驱动,并会不断发布集成了修复补丁的更新版本的驱动。所以这里不可能给出一个长期有效的链接。下载最新版本的驱动程序请访问这里:

结合上面的列表List of supported chips by driver来选择适合你的芯片组。

在正式安装NVIDIA驱动之前,你必须关闭 X server。最简单的方法就是通过快捷键 Ctrl+Alt+F1 切换到Linux 控制台并以root身份登录。然后键入

init 3

执行下载文件来安装驱动,例如:

sh NVIDIA-Linux-x86-1.0-7185-pkg0.run

成功安装完驱动之后,查看/etc/X11/xorg.conf 确保“nvidia”驱动已经替换掉开源的“nv”驱动。在控制台键入 X 然后回车,可以检查 X server 是否能够启动。你应该会看到白屏上的 NVIDIA 标志。按快捷键Ctrl+Alt+Backspace,可以退出 X server。然后,键入下面的命令行就可以安全的切换到 runlevel 5了。

init 5; exit


故障诊断


在安装完NVIDIA驱动后,openSUSE 10.2的X-server不能启动

可以在这里查看解决方法Cool Solutions article

出现这个问题是由于nvidia的驱动模块被安装在了错误的目录下面。当应用xorg 7.2的时候,原本的目录/usr/X11R6变更为 /usr/lib/xorg/modules或者/usr/lib64/xorg/modules 。


关于某些AGP显卡的问题

采用AGP显卡搭配某些主板,可能需要你像下面所示的那样手动加入[Option "NvAGP" "2"] 。这个例子是针对技嘉的GA-K8NS AMD64主板和AGP Nvidia 显卡。缺少了这个命令 X 就不会启动。

Section "Device"
 BoardName    "GeForce FX 5200 (0x0322)"
 BusID        "1:0:0"
 Driver       "nvidia"
 Identifier   "Device[0]"
 VendorName   "NVidia"
 Option       "NvAGP" "2"
EndSection

Compilation on FACTORY

在FACTORY运行NVIDIA installer时由于未定义符号问题失败,您可能需要按照[1]来解决驱动源问题。

Running the NVIDIA installer on FACTORY fails with undefined symbols problems, so you might need to follow the instructions this page to patch the driver sources.

启用”复合/3D“效果时应用程序冻结或崩溃

您已经在/etc/X11/xorg.conf中设置选项为”复合“”启用“("Composite" "Enable")来养眼或体验三维桌面,但您却看到一些应用程序崩溃或者冻结了,怎么办?

  • 尝试用选项 复合 禁用(Option "Composite" "Disable" 暂时禁用复合,并重启X服务。

做这些之后,现在应用程序不再崩溃或冻结了吗?如果是,那么您的复合程序是不稳定的。

  • 解决办法:在169.xx版以后的NVIDIA驱动加入了一个新选项,名为使用复合包(Use Composite Wrapper)。

把它放在xorg.conf的设备(device)部分 : Option "UseCompositeWrapper" "true" ,使复合重新启用。重新启动X服务。现在您的应用程序应该不再冻结或崩溃。

You have set Option "Composite" "Enable" in /etc/X11/xorg.conf to enjoy your eye candy or 3D desktop, but you see some applications crash or freeze?

Try to temporarily disable compositing with Option "Composite" "Disable" and restart your X server.

Do these applications now not crash or freeze any longer? If the answer is yes, your compositing is unstable.

There is a solution. nVidia drivers after 169.xx introduced a new option named UseCompositeWrapper. Put it in the device section of your xorg.conf: Option "UseCompositeWrapper" "true" and enable compositing again. Restart your X server. Your applications should now not freeze or crash any longer.

一键安装问题 Problems with 1-Click install

如果您在一键安装方面有疑问,请咨询opensuse@opensuse.org中的邮件列表,帮您解决问题。更详尽的订阅方法参阅Communicate页。

纠正方法:

一键安装会因为某种原因指向旧版NVIDIA驱动,旧版驱动与kernel-source-2.6.22.13-0.3不兼容
获得最新版驱动以兼容kernel-source-2.6.22.17-0.1,请从ftp://download.nvidia.com/opensuse/10.3/ 手动下载。

对解决问题没有很大帮助。它能够给出好的思路,但是并不能指出错误是如何发生的,并且无法校正。像这样的情况则挫败了一键安装的目的——简单。 If you have problems with 1-Click install please consult people on opensuse@opensuse.org mail list, that will help you in troubleshooting. For details how to subscribe please see Communicate page.

"Corrections" like this:

These 1-Click-Installs still somehow point to the old NVIDIA drivers compile against kernel-source-2.6.22.13-0.3
To get the latest NVIDIA drivers compiled agains kernel-source-2.6.22.17-0.1, manually download the appropriate files from ftp://download.nvidia.com/opensuse/10.3/

doesn't help much to resolve problems. It can be given with good intentions, but it doesn't give a hint how error happened and there is no way to correct it. Workarounds like this defeat the purpose of 1-Click install, ie. simple installation.

Quick check of 1-Click files showed that they point to the proper repository http://download.nvidia.com/opensuse/10.3/ which is the same that correction notice points to, and there is no pointer to specific files, so error is not in the link, but elsewhere.

其他


外部链接