LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3235|回复: 0

在LINUX下安装NVIDIA 显卡最新驱动

[复制链接]
发表于 2005-8-13 10:06:22 | 显示全部楼层 |阅读模式
让你的显卡跑起来
在LINUX下安装NVIDIA 显卡最新驱动



本文为辽宁科技学院机械系机电052曹君原创,可以自由复制传播,转贴请注明出处。联系Email:daomima163@163.com


长期以来,在LINUX下安装显卡驱动无疑是一件让新手头痛的事情,LINUX下安装驱动可不是像WINDOWS下来几个NEXT就可以搞定的事情,通常情况下需要编译内核、手工修改X-WINDOW的配置文件(/etc/X11/XF86config-4或者/etc/X11/xorg.conf),除非安装RPM的安装包,但是RPM的安装包总是存在很多问题,比如以前NVIDIA的4336和4496的RPM驱动装了字体变形或者普通用户无法登录X-WINDOW,RPM包一般都是LINUX发行商自己做好附带在自己的LINUX发行版本中,以此做为一个该发行版的亮点,所以版本的通用性一般都不好。


本文以最简单的方法安装NVIDIA的最新LINUX驱动------NVIDIA-Linux-x86-1.0-6111-pkg1.run ,写这篇文章的时候我想象读者是不懂vi,emacs等文字编辑器的新手(尽管这些编辑器功能很强大,好处一箩筐),同时丝毫不懂得什么是X-WINDOW的客户端、服务端,也从来没有手工修改过任何配置文件。同时我想象本文的阅读者已经拥有一块支持3D加速的NVIDIA显卡,一个可以进入 X 环境的 LINUX,只不过显卡使用的是默认的驱动,无法玩LINUX下的 3D游戏(比如QUAKE 3、RUNE、HERETIC 等),笔者的思路为先在 X-WINDOW 下提前修改好配置文件,然后转换到命令行模式安装驱动,这样可以避免使用任何文本界面的编辑软件来修改X-WINDOW的配置文件。

首先确保你的系统已经安装了一份内核源代码,版本必须高于2.2.12,一般两年内发行的 LINUX内核版本都能达到这个要求。以下是安装驱动的需求,每行“#”后边是用于检测你的各项工具版本的相关命令。

linux kernel 2.2.12
XFree86 4.0.1
Xorg 6.7
Kernel modutils 2.1.121
binutils 2.9.5
GNU make 3.77
gcc 2.91.66
glibc 2.0

# cat /proc/version
# XFree86 -version
# Xorg -version
# insmod -V
# size --version
# make --version
# gcc --version
# /lib/libc.so.6



如果你不知道该怎么做的话,只要你的LINUX是这个世纪的发行版,完全可以不必理会这些,根据我的安装测试,该驱动在RED FLAG LINUX 4.0 、RED HAT 9.0 、 THIZ LINUX 6.1、Mandrake Linux10.2 、Fedora Core 2 上可以正常安装使用。但是千万记住,系统中必须已经安装一份内核源代码,因为NVIDIA的驱动需要内核来构建模块,如果你不知道你的系统中有没有源代码,输入
        [root@caojun myst]# rpm  -qa | grep kernel              

(读者不必理会这条命令的含义),命令执行后的输出结果在我自己的电脑上(Fedora Core 2)输出结果为以下,需要确认三行中一行都不能少,数字不一样没关系。


        [root@caojun myst]# rpm -qa | grep kernel                                               
        kernel-2.6.5-1.358
        kernel-utils-2.4-9.1.131
        kernel-source-2.6.5-1.358



用你喜欢的下载工具(比如kget等)到NVIDIA的网站下载N卡的最新LINUX驱动,文件名为:NVIDIA-Linux-x86-1.0-6111-pkg1.run,该驱动支持从TNT到GeForce PCX 4300(这个东西我都没听过)共106种显卡,下载完成后保存到一个你自己创建的目录,如果对LINUX 下的目录记不住,那么请拿笔记下来。本文以下载的显卡驱动放在/usr/myst目录为例说明。

首先打开终端,转到下载的显卡目录校验下载驱动的完整性。单机屏幕左下脚那个大脚丫子(gnome桌面环境)或者字母K(KDE桌面环境)选择运行,输入 rxvt 或者 xterm(注意大小写),打开终端后输入以下命令:


        [root@caojun root]# cd /usr/myst/
        [root@caojun myst]# ./NVIDIA-Linux-x86-1.0-6111-pkg1.run   --check                     
        check sums and md5 sums are ok


如所示,如果显示“ check sums and md5 sums are ok ”则下载的驱动程序可以放心使用,否则请重新下载。转换当前用户为root (root 是 LINUX 下的超级用户,只有它才拥有对系统不受限制的访问),先注销当前的普通用户,然后再用root登录。

用root登录到系统后,用你喜欢的文件管理器在/etc/X11目录下找 XF86config-4 或者 xorg.conf 这两个文件之中的任何一个,找到两者中到任何一个后,先复制一份到其他的目录中,然后用任何一个你熟悉的文本编辑器(比如gedit或者kedit)编辑它,改动如下:
找到 Section "Module" 项,注销掉 load "dri" 和 Load "GLcore" (如果有的话),然后添加 load "glx" 注意:要注销某行,只需要在前边添加一个“#”,在 Fedora Core 2 中,完成后应该类似下面这样(汉字部分是笔者加的注解,修改时候请去掉):

Section "Module"
        Load "dbe"
        Load "extmod"
        Load "fbdevhw"
        Load "glx"              //如果系统没有这行的话,请手工添加,该行加载N卡的GL模块。
        Load "record"
        Load "freetype"
        Load "type1"
#       Load "dri"              //注销掉这一行。
EndSection



找到 Section "Device" 项,修改 nv 为 nvidia 同时添加 Option "NoLogo" 完成后应该是类似下面这样如:

Section "Device"
        Identifier "Videocard0"
        Driver "nvidia"  //此处修改 nv 为 nvidia 即加载的显卡模块名由默认的 nv 改成新编译的 nvidia
        VendorName "Videocard vendor"
        BoardName "RIVA TNT2"
        Option "NoLogo"  //该行为手工添加,去掉NVIDIA的全屏LOGO。
EndSection



修改完成后,先检查一遍,该注释的一定要注释,该修改的一定要修改,确保无误后保存文件并退出编辑器,关闭任何打开的程序。接下来,我们需要转换到文字界面来安装驱动,这一步必须到字符界面操作,新手朋友别怕,只要我们用好TAB键来快速匹配,其实只需要敲入不多的几个字符而已。

转到字符界面,在终端输入:
        [root@caojun root]# init 3                                                              

输入以上命令后,稍等几秒,等显示器变成黑底白字的时候,用root登录安装显卡驱动(从来没用过字符界面的朋友要知道LINUX 登录时输入密码是不回显的)。登录后输入以下命令开始安装驱动程序,先转换到显卡驱动所在目录(这里是以/usr/myst为例)。


        [root@caojun root]# cd /usr/myst
        [root@caojun root]# ./NVIDIA-Linux-x86-1.0-6111-pkg1.run -a                     



NVIDIA的驱动程序是一个可执行文件,运行NVIDIA的驱动安装包,参数“-a”表示接受NVIDIA的安装协议,建议新手在输入命令的时候用好 TAB 键,具体到这个命令,你只要输入“./N”(输入的时候没有引号)之后按下 TAB 键。

接下来一路 “OK”下去就可以了。该驱动需要借助内核来构造N卡的驱动模块,所以确保你已经安装了内核源文件。其实整个过程是:首先提醒你到NVIDIA的FTP去看看有没有新的版本,如果已经是最新的驱动,或者你选择不去它的网站查询的话,就会构造一个模块,当系统启动的时候驱动以模块的形式加载。安装包同时会复制一个N卡的驱动安装升级程序nvidia-installer到系统的/usr/bin/目录,以后可以很方便的使用这个程序升级、卸载、查询驱动,同时也安装N卡的显示调节程序nvidia-settings>到/usr/bin目录,用户可以以后使用它来调节显卡的相关参数,无须再手工修改配置文件。

现在,驱动的安装工作已经完成,接下来,进入图形界面,终端输入以下命令。
[root@caojun myst]# init 5                                                              

测试:

其实只要前面的步骤操作真确,安装驱动后能进入图形界面,一般显卡的GL模块会自动加载,如果你系统中没有任何 3D 游戏可以测试,那么使用以下命令来查看加载的驱动是不是刚编译的:


                        [root@caojun myst]#  lsmod |grep nv                                             
        nvidia 4810604 12
               


如果这个地方显示的是“nvidia”的话,驱动已经正确安装了。如果显示的是“nv”的话,那么就需要按照本文结束的方法来排除故障了。



安装完成后,系统中已经多了一个NVIDIA的显卡调节软件 nvidia-settings ,调节显卡属性以后都不用编辑 X 配置文件只需要执行命令,nvidia-settings运行界面如图。
[root@caojun myst]# init 5

测试:

其实只要前面的步骤操作真确,安装驱动后能进入图形界面,一般显卡的GL模块会自动加载,如果你系统中没有任何 3D 游戏可以测试,那么使用以下命令来查看加载的驱动是不是刚编译的:
        [root@caojun myst]#  nvidia-settings                                            

NVIDIA显卡安装包中,其他有用的几条命令:

# ./NVIDIA-Linux-x86-1.0-6111-pkg1.run -e

参数“-e”只解包,不执行安装程序。可以解开原代码和驱动的说明文档,英文的README说的特别详细。

# nvidia-installer --latest

该命令查询最新的驱动,到NVIDIA的FTP查看最新的驱动,并报告最新驱动的版本和下载地址。

# nvidia-installer --update

该命令连接NVIDIA的FTP站点,下载安装最新的驱动程序。

# nvidia-installer --uninstall

该命令卸载当前的驱动程序,备份当前的配置文件,并记录最新安装的驱动程序。

常见错误排除:
1.进入不了图形界面,屏幕不停闪烁:

请使用(CTRL+ALT+Fn,n=1-7)转到命令行模式,把备份的配置文件(XF86config-4或者xorg.con)还原,然后再修改尝试。
2.能进入图形界面,但是无法运行 3d 游戏:

详细检测 X 配置文件,详细查看Section "Module"项,看是否有 load "glx" 行,没有请手工添加,并确认Section "Device" 项是否正确,即把 nv 改成 nvidia 。
4.其他问题:

查看/var/log/目录下的X-WINDOW启动记录文件Xorg.0.log或者XF86config.0.log ,查看的时候注意各行开头标记为(WW)和(EE)的行,(WW)表示警告,(EE)表示错误,通过查看X启动记录,错误一般都可以很快找出来,找到错误后适当修改配置文件,再继续尝试进入X环境。

读者朋友如果在尝试了以上步骤后还无法正确安装驱动,有条件的话可以到网上寻求帮助,电脑报的论坛上整机与外设版有 LINUX 问题专题贴,可以在那里贴出你的问题,论坛中热心的网友会帮你解决,当然你也可以在论坛上找到本文相关的一些图片和可以参考的配置文件。  免费 开放 强大 稳定--GUN/LINUX
本站正在建设中,请将您的意见反馈给daomima163@163.com,或者到我的BLOG发表您的高见
请到我的留言本留言,我将十分感谢您的指导
CopyLeft©2002-2004 All Left Reservd.
本网页源代码遵循GPL协议您可以自由使用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表