超级初级的Fedora 12 NVIDIA显卡驱动安装指南



声明:

1、Fedora 12安装NVIDIA显卡驱动错误会导致黑屏,大家一定要多看几篇要关帖子再进行

2、本文的编写主要是在参考了以下两篇文章的前提下完成的,并经过在自己的电脑(Thinkpad SL400 7MC/Core2 DuoT5870 2.00GHz/内存2.0GB)上实际验证可行。

http://www.linux110.com/bbs/thread-171809-1-1.html

http://bbs.fedora-zh.org/showthread....AE%89%E8%A3%85

3、文章很长,但很容易读(自己认为),大家尽量多参考一下上面两篇文章及网上的其他文章再操作。

4、编写过程的时间跨度在四天左右,其中可能有些地方写的不好,请大家指正,我会修改的。



第一步、下载官方驱动(以9300GS为例)

1.先查看显卡型号,在終端,输入命令:/sbin/lspci |grep VGA

我的显卡是GeForce9300M GS,屏幕显示为:

------------------

01:00.0 VGA compatible controller: nVidia Corporation GeForce 9300M GS (rev a1)

------------------

2.进入Nvida网站的驱动下载页面 http://www.nvidia.cn/Download/index.aspx?lang=cn (可通过 http://www.nvidia.cn/page/home.html ->驱动下载->驱动下载项,找到)

3.选择产品类型:GeForce,

产品系列:选显卡对应的型号(如:9300 GS选 GeForce 9M series(Notebooks),以下是从Nvidia网上下来的对应表

3.操作系统:linux 32-bit(这是默认项——看来找驱动的都是用Linux的)

4.语言:中文(默认)

5.点 “搜索”。跳到下一页面。在这一页中有“下载”按钮,在页面下方是“发布重点、产品支持列表、其他信息”,点“产品支持列表”可看到如下 驱动选择代号 与 产品型号 对应列表。(真不知Nvidia网站怎么做的,这个列表应该在选择产品系列时出现的。)

6.点 “下载”。跳到下一页面。

7.点“同意并开始下载”按钮。如果是用火狐,要用右击“链接另存为...”下载,不然会直接打开驱动文件。

8.我的显卡是9300GS,所以就会下载得到NVIDIA-Linux-x86-190.53-pkg1.run文件,这个文件不能直接安装。

-----------------------------------------------

GeForce 200 series: GTX 260, GTX 295, GTX 280, GTX 285, GTS 250

GeForce 100 series: GT 140, GT 150, G 100, GT 120, GT 130

GeForce 9 series: 9400 GT, 9300 GS, 9500 GS, 9400, 9800 GX2, 9600 GSO 512, 9800 GT, 9200, 9600 GT, 9600 GSO, 9300 SE, 9300 GE, 9600 GS, 9500 GT, 9800 GTX/GTX+, 9300

GeForce 9M series: 9700M GTS, 9200M GS, 9650M GS, 9700M GT, 9300M GS, 9650M GT, 9600M GS, 9600M GT, 9500M GS, 9800M GT, 9800M GTS, 9800M GS, 9300M G, 9500M G, 9800M GTX

GeForce 8 series: 8200, 8800 GT, 8800 GTX, 8600 GS, 8200 / nForce 730a, 8400 GS, 8400 SE, 8800 Ultra, 8600 GT, 8600 GTS, 8300, 8800 GS, 8400, 8300 GS, 8100 / nForce 720a, 8800 GTS, 8500 GT, 8800 GTS 512

GeForce 8M series: 8800M GS, 8800M GTX, 8400M GS, 8600M GT, 8400M G, 8700M GT, 8400M GT

GeForce 7 series: 7900 GTX, 7800 GS, 7900 GS, 7500 LE, 7150 / NVIDIA nForce 630i, 7950 GT, 7650 GS, 7600 GT, 7100 GS, 7600 LE, 7800 GTX, 7050 / NVIDIA nForce 610i, 7300 GT, 7050 / NVIDIA nForce 630i, 7800 SLI, 7025 / NVIDIA nForce 630a, 7050 PV / NVIDIA nForce 630a, 7350 LE, 7100 / NVIDIA nForce 630i, 7300 GS, 7600 GS, 7100 / NVIDIA nForce 620i, 7550 LE, 7950 GX2, 7300 SE / 7200 GS, 7300 LE, 7900 GT/GTO

GeForce Go 7 series: Go 7800 GTX, Go 7950 GTX, Go 7900 GS, Go 7900 GTX

GeForce 6 series: 6200 LE, 6600, 6500, 6700 XL, 6200SE TurboCache, 6150 LE, 6150, 6800 XT, 6200 A-LE, 6800, 6100 nForce 400, 6600 VE, 6200, 6600 GT, 6800 GS/XT, 6600 LE, 6200 TurboCache, 6100, 6800 GS, 6100 nForce 405, 6800 LE, 6610 XL, 6800 XE, 6150LE / Quadro NVS 210S, 6150SE nForce 430, 6100 nForce 420, 6800 GT, 6250, 6800 Ultra

Quadro FX series: FX 5800, FX 550, CX, FX 3500, FX 1500, FX 350, FX 1800, FX 3400/4400, FX 4500 X2, FX 4500, FX 370, FX 5500, FX 570, FX 370 Low Profile, FX 3800, FX 4600, FX 1700, FX 580, FX 5600, FX 3700, FX 4000, FX 560, FX 4700 X2, FX 1400, FX 540, FX 4800, FX 3450, FX 380

Quadro FX Notebook series: FX 2700M, FX 570M, FX 370M, FX 3600M, FX 360M, FX 1700M, FX 1600M

Quadro NVS series: NVS 285, NVS 210, NVS 450, NVS 290, NVS 420, NVS 295, NVS 280, NVS 440

Quadro Plex series: Model II, Model IV, D Series

Quadro G-Sync series: G-Sync II, G-Sync I

Quadro SDI series: Quadro SDI

ION series: ION

GPU Computing Processor series: Tesla C1060

---------------------------



第二步、必需安装的4个数据包:(注意:在用默认的DVD安装状态下,这几个包是都没有安装。)

(1)gcc (用于编译驱动,安装gcc时,就会自动把(4)kernel-headers给安装了)

(2)kernel-PAE

(3)kernel-PAE-devel

(4)kernel-headers(这个没有没有PAE版的,关于什么是PAE,在下面有介绍)



安装方法有2种:(对于新手——比如我这样的,只能选其中一种进行,最好选网络安装。)

a.“完全”通过DVD安装、

b.“完全”通过网络安装。

!!!记住——“只能选其中一种”

****下面这一大段,不看也行,直接翻到 安装方法 继续看*****

下面是说明为什么只能选一种安装的原因

原因是:安装显卡驱动时要对内核文件进行编译,要求上面4个包关于kernel的文件版本必须一致。如果不一致,就会导致在后面的安装时出现问题——是绝对的会出问题,会提示错误。

(比如:先用yum install gcc上网安装了gcc,再从DVD中找到其它3个包安装就会出现版本不相同的情况,无法完成安装。)



*注:用2010/1/15日下载的Fedora 12 DVD安装 内核 的默认版本是kernel-PAE,不是kernel.DVD安装完成时的内核版本为:kernel-PAE- 2.6.31.5-127.fc12.i686。而截止2010/1/18日PAE版的内核版本为:PAE- 2.6.31.9-174.fc12.i686,可以看出是不同的。



至于什么是PAE,下面的网上关于kernel-PAE和kernel的简单介绍。

---------------------------

http://www.xanadu.org.cn/bbs/index.php?showtopic=576

(kernel-PAE,用于拥有超过 4GB RAM 的 32-bit x86 系统中,或者 CPU 带有 "NX (No eXecute)" 特性的系统中。它同时支持单/多处理器系统。

PAE:Physical Address Extension (PAE 是 Intel 提供的内存地址扩展机制,它通过在宿主操作系统中使用 Address Windowing Extensions API 为应用程序提供支持,从而让处理器将可以用来寻址物理内存的位数从 32 位扩展为 36 位。)

在 32 位的架构上使用超过 16 GB 的内存是不明智的,即使启用了 PAE 也是如此。)

----------

——不知以上解释的是否完全对,反正能理解PAE是针对那些有4G内存的计算机有好处就行,如果你没有,却用刚下的DVD安装,那么,不管有几个G内存,默认都安装为PAE版本。

*************************

-------安装方法------

1、用DVD安装。

在DVD的packages目录里找到以下4个包,双击->安装

(1)gcc-4.4.2-7.fc12.i686.rpm(会把自动kernel-headers安装上)

(2)kernel-PAE-2.6.31.5-127.fc12.i686.rpm

(3)kernel-PAE-devel-2.6.31.5-127.fc12.i686.rpm

(4)kernel-headers-2.6.31.5-127.fc12.i686.rpm(因为前面安装了gcc,这一步有可能报错吧——忘记了,如果报错,跳过就行了)



2、网络安装。

在终端输入以下命令:

>Su

>输入root的密码

>yum install gcc

>yum install kernel-PAE

>yum install Kernel-PAE-devel

>yum install kernel-headers



安装完成后,输入以下命令,显示当前用的内核版本,以及安装的那4个数据开发包的版本

1、显示系统当前用的内核版本:

uname -a

2、显示已安装好的数据开发包中kernel版本:

rpm -qa | grep ^kernel | sort

结果如下图:

--------------

[an@an ~]$ uname -a

Linux an 2.6.31.9-174.fc12.i686.PAE #1 SMP Mon Dec 21 06:04:56 UTC 2009 i686 i686 i386 GNU/Linux (这是我已更新内核后的结果,如果未更新,其中9-174应该是5-127)



[an@an ~]$ rpm -qa |grep ^kernel |sort

kernel-2.6.31.9-174.fc12.i686

kernel-devel-2.6.31.9-174.fc12.i686

kernel-firmware-2.6.31.9-174.fc12.noarch

kernel-headers-2.6.31.9-174.fc12.i686 **

kernel-PAE-2.6.31.5-127.fc12.i686

kernel-PAE-2.6.31.9-174.fc12.i686 **

kernel-PAE-devel-2.6.31.9-174.fc12.i686 **

-----------

注意后面加**的那三行版本号是否一致,如果一致,安装内核数据包的工作就成功结束了,可以重新启动电脑,让系统自动更新当前使用的旧内核。如果不一致,重新安装除gcc以外的那三个包。

在重启后,启动选项中会多出一项,可以看到,其中一项是旧的内核版本,另一项是新的内核版本,如:

-------------

2.6.31.9-174.fc12.i686.PAE (新内核版本,这是我们要选择启动的)

2.6.31.5-127.fc12.i686.PAE (旧内核版本)

Other (*这是windows双系统或多系统启动项)

-------------------

*注意:在后面我们操作的都是174这一启动项下的内容。



********下面的 不看也行,直接跳到 第三步******

(1)以上所显示的是我电脑上的信息,因为已通过网络安装升级了上面4个包中的内核文件,所以在重启动电脑后,系统用的是新的内核版本 2.6.31.9-174.fc12.i686.PAE。(uname -a命令所得到的显示结果)

未安装前,显示的版本是应该是2.6.31.5-127.fc12.i686.PAE。

(2)用rpm -qa |grep ^kernel |sort命令所得到的显示的结果,可以看到很多kernel 版本,这主要是因为我之前运行命令yum install kernel和yum install devel 而不是用yum install kernel-PAE和yum install kernel-PAE-devel的结果,导致出两个非PAE的内核文件。

(3)kernel-PAE-2.6.31.5-127.fc12.i686这一行显示了我之前的内核版本

(4)kernel-firmware-2.6.31.9-174.fc12.noarch是自动关联安装上去的,不用管

(5)下面是至顶帖--Fedora 12中NVIDIA显卡的安装-中的相关显示数据引用,

http://bbs.fedora-zh.org/showthread....AE%89%E8%A3%85

可以看到,他曾安装过三个内核的内核文件。

kernel-2.6.31.5-127.fc12.i686

kernel-2.6.31.6-145.fc12.i686

kernel-2.6.31.6-162.fc12.i686

--------------------------------------------------

[liuhongdan@dan ~]$ uname -a

Linux dan 2.6.31.6-162.fc12.i686 #1 SMP Fri Dec 4 01:09:09 EST 2009 i686 i686 i386 GNU/Linux



[liuhongdan@dan ~]$ rpm -qa | grep ^kernel | sort

kernel-2.6.31.5-127.fc12.i686

kernel-2.6.31.6-145.fc12.i686

kernel-2.6.31.6-162.fc12.i686

kernel-devel-2.6.31.6-145.fc12.i686

kernel-devel-2.6.31.6-162.fc12.i686

kernel-firmware-2.6.31.6-162.fc12.noarch

kernel-headers-2.6.31.6-162.fc12.i686

--------------------------------------------------

*************************