干掉Nouveau安装Linux Nvidia显卡驱动

https://blog.csdn.net/misiter/article/details/7652731

干掉Nouveau安装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。

 

如果驱动更新了, 有两个办法可以安装,一个是自行下载好NVIDIA-Linux-x86-*.run安装。 另外一个办法就是直接让驱动自己去更新,假设已经有了11版,但是没有19版,可以在安装的时候加上更新参数 --update,安装程序会自动连接到官方服务器去下载新版本然后安装。执行:

sh NVIDIA-Linux-x86-100.14.11-pkg1.run --update

 

 


13.OK!

14.如果要卸载nvidia官方驱动,执行:

sudo sh ***.run --uninstall

15.如果要安装受限驱动,首先要编辑blacklist.conf,执行:

sudo gedit /etc/modprobe.d/blacklist.conf

删除以下部分并保存:

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

然后执行:


sudo apt-get install nvidia-*
sudo apt-get install xserver-xorg-video-nouveau

重新启动后在“附加驱动”里选择相应的受限驱动,并激活。

OK!

 

Nouveau的DRM 组件将可能进入Kernel 2.6.33

  关注我们:   

Nouveau 是一个开源的 Nvidia 显卡驱动。相比之下 Nvidia 的官方驱动不是开源的,而开源的 xf86-video-nv 功能又很弱。对比官方驱动,Nouveau 的优势在于支持新内核的 Kernel Mode Setting 特性。在 Fedora 12 中,使用 Nouveau 驱动启动内核后会第一时间直接进入显示器的最佳分辨率,启动界面(不论文本还是图形)与 X、GDM 之间的切换、用 Ctrl+Alt+Fn 在 X 和终端间切换完全的"flicker free",使用体验大大增强。

但是其 DRM 模块部分一直没有进入内核的代码树。昨天在 Phoronix 网上看到一则消息,大意是说 Linus 看 Fedora 提供 Nouveau 已经很长时间了,希望 Nouveau 的 DRM 也进入内核。Nouveau 的维护者和 Fedora 的维护者则解释说主要是由于 Nouveau 是依靠反向工程来了解 NV GPU 的某些内部机制的,使用了一些 Microcode,而这些 Microcode 相关的代码进入内核可能有版权问题。Linus 回复说这些理由都是 BS(从几次 Linus 的发言来看这位还真是"牛气"啊),Fedora 是不是完全没有版权问题的发行版?是那么上述理由就是 BS,否则以后发布就别分发 Nouveau 驱动。

今天又看到上面一则消息,这件事的下文是这样:红帽公司的 David Airlie 和 Ben Skeggs 对 Nouveau 的内核部分代码进行了修改,Microcode 将使用内核的 Firmware 接口来加载。这样就避免了版权问题。

接下来引用一句原文:

In this pull request, there is the Nouveau driver that is set to go in the Linux 2.6.33 kernel under the staging area

也许 2.6.33 中,我们就能用上正式进入内核的 Nouveau 驱动,获得各种新特性了。

PS: NV 官方驱动虽然不支持 KMS,但是支持 OpenCL(G80+),视频加速方面支持 XvMC(G80-)和 Vdpau(G80+)。对于这些功能,Nouveau 并没有支持。实际上连 3D 功能 Nouveau 也不直接支持。现在的发展趋势是由 Mesa 和其中的 Gallium3D 来提供 OpenGL(也许甚至是 D3D)、OpenVG、、OpenCL 的支持。显卡驱动仅仅完成与显卡的基本交互。最近 Kernel 的图像部分发展成为了亮点,page flipping ioctl 进入 2.6.33("据说"不论对于 X 还是 Wayland 都很有用),现在 Intel/ATI/NV 的 KMS 驱动又都不断完善,Linux 用户的图形体验必将逐步增强。

  • 5
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装nvidia显卡驱动时报错可能有多种原因。根据引用\[3\]中提供的信息,错误信息可能是由于以下几种情况导致的: 1. 驱动程序与内核源代码不匹配或配置不正确。这可能是由于使用了错误或配置不正确的内核源代码版本,或者使用了与目标内核构建时使用的gcc版本不同的gcc版本。 2. 存在rivafb/nvidiafb等驱动程序,阻止了NVIDIA内核模块获取NVIDIA图形设备的所有权。 3. 安装NVIDIA GPU不受此NVIDIA Linux图形驱动程序版本的支持。 为了解决这个问题,可以尝试以下步骤: 1. 从nVidia官方网站下载最新版本的nVidia驱动程序。 2. 以管理员身份打开blacklist模块,并在/etc/modprobe.d/blacklist.conf文件中添加以下内容并保存: blacklist vga16fb blacklist nouveau blacklist rivafb blacklist nvidiafb blacklist rivatv 3. 删除之前安装的所有nVidia驱动程序。 4. 重启计算机。 5. 当出现无法加载nVidia驱动程序的错误提示时,选择进入终端选项。 6. 登录并进入下载驱动程序的文件夹。 7. 安装驱动程序:sudo sh NVIDIA-Linux-x86_64-195.36.24-pkg2.run(根据实际下载的驱动程序版本进行替换)。 8. 重启计算机。 这些步骤应该能够帮助您解决在Linux安装nvidia显卡驱动时报错的问题。请注意,确保您下载的驱动程序与您的硬件和操作系统版本兼容。 #### 引用[.reference_title] - *1* *2* [记录Manjaro Linux安装nvidia显卡驱动失败的经历&更新内核出问题如何修复](https://blog.csdn.net/weixin_44220976/article/details/127940616)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [linux英伟达显卡偶尔加载失败,Ubuntu 10.04 安装Nvidia显卡出错解决方法](https://blog.csdn.net/weixin_32002013/article/details/116962369)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值