安装Linux Nvidia显卡驱动


首先说明下什么是Nouveau,为什么有些系统安装N卡驱动的时候会提示“ERROR: The Nouveau kernel driver is currently in use by your system. This
driver is incompatible with the NVIDIA driver……”之类的错误。

Nouveau是由第三方为NVIDIA显卡开发的一个开源3D驱动,也没能得到NVIDIA的认可与支持。虽然Nouveau Gallium3D在游戏速度上还远远无法和NVIDIA官方私有驱动相提并论,不过确让Linux更容易的应对各种复杂的NVIDIA显卡环境,让用户 安装完系统即可进入桌面并且有不错的显示效果,所以,很多Linux发行版默认集成了Nouveau驱动,在遇到NVIDIA显卡时默认安装。企业版的 Linux更是如此,几乎所有支持图形界面的企业Linux发行版都将Nouveau收入其中。

不过对于个人桌面用户来说,处于成长阶段的Nouveau并不完美,与企业版不一样,个人用户除了想让正常显示图形界面外很多时候还需要一些3D特 效,Nouveau多数时候并不能完成,而用户在安装NVIDIA官方私有驱动的时候Nouveau又成为了阻碍,不干掉Nouveau安装时总是报错。 报错提示见文第一段。

 一般安装Linux显卡驱动的步骤是:

(1)下载合适的驱动,无论是NVIDA还是ATI都推荐去官方下载
(2)如果下载的是源码文件则需要编译安装,不过现在官方提供的Linux显卡驱动多是以.run为后缀的,这种直接在命令行中 ./softname.run 运行即可安装。
(3)一般在操作第二步的时候会提示让你关闭X window,如下图:

进入命令行模式Kill掉gdm或kde再安装一般就无问题,而安装Nouveau的NVDIA显卡机器还多了一个步骤就是需要关闭Nouveau,这也就是本文要解决的问题。

 以下是关闭Nouveau并且安装Nvidia显卡驱动的步骤

(1)把驱动加入黑名单

编辑 /etc/modprobe.d/blacklist.conf ,在文件后面加入blacklist nouveau

(2)root用户下运行如下两条命令:

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut -v /boot/initramfs-$(uname -r).img $(uname -r)

以上两条命令分别是备份与重建initramfs,如果你的Linux是debian或ubuntu系统运行命令时需要sudo。
  (3)重启系统至init 3(文本模式),也可先进入图形桌面再运行init 3进入文本模式,再安装下载的驱动就无问题,安装命令示例:
./NVIDIA-Linux-x86-285.05.09.run
  安装过程根据提示完成即可。当然在安装之前你也可以先确认下Nouveau是已经被你干掉,使用命令: lsmod | grep nouveau
  安装完成后重启系统即可设置你的桌面效果了。并且在系统–首选项还有了NVIDIA X Server Settings的选择项。
  当 Linux 内核启动系统时,必须找到一个根文件系统,方能成功开机,而这个文件就是init,init的PID进程恒为1。启运过程中init紧随内核,用于引导其 它主程序完成开机。建议查看下有关initramfs的资料,这样便于理解为什么安装个显卡驱动还是生成(编译)initramfs。