安装Nvidia驱动而不是nouveau。

我已安装Ubuntu 14.04,但屏幕模糊/模糊,对多个屏幕的支持不佳。

我意识到Ubuntu默认安装nouveau,但我需要安装nvidia驱动程序,所以我尝试了这个:

sudo apt-add-repository ppa:ubuntu-x-swat/x-updates
apt-get update
apt-get install nvidia-current
apt-get upgrade

Now that nvidia is installed, you need to blacklist the nouveau driver so it don’t pop out when you will reboot. Create or edit the following file:

nano /etc/modprobe.d/blacklist-nouveau.conf

…and add these lines at the end:

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
我通过软件和更新检查了NVIDIA驱动程序是否成功安装,结果显示已安装的驱动程序是NVIDIA 304.117。
然后我尝试运行:
lshw -c video | grep 'configuration'

结果是驱动程序仍然是“nouveau”。
configuration: driver=nouveau latency=0

那么,我该如何安装和使用NVIDIA驱动程序呢?

已添加为答案。请点赞/接受,以便其他有同样问题的人能找到它! - Elder Geek
1感谢您指出Nouveau导致屏幕模糊的问题。我以为是我的眼睛出了问题,甚至按照谷歌的建议删除了所有缓存和历史记录,但结果却没有解决问题。将Nouveau列入黑名单(并重新启动了几次)让我的屏幕再次清晰如初。 - WinEunuuchs2Unix
这里有关于如何操作的详细说明:https://forums.lenovo.com/t5/Gaming-Laptops-Knowledge-Base/Installing-Ubuntu-on-the-Legion-Y530/tac-p/4628551/highlight/true#M223 - sam
5个回答

Ubuntu 14.04及以后版本

请注意,只有在您打算自己安装专有的NVIDIA驱动程序时,才需要手动删除nouveau驱动程序。如果不是这种情况,请直接从系统 > 管理 > 硬件驱动中安装所需的图形驱动程序。这是推荐且最方便的方法。

我们将屏蔽所有问题模块,删除所有nvidia*软件包,并额外进行一步操作,可能需要更新initramfs磁盘,因为它可能配置为在启动时加载模块。

  1. 将模块加入黑名单。打开blacklist.conf文件。

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

    按下i进入插入模式,并在文件中添加以下模块。

    # 对于x86 32位用户可能不需要此模块。
    blacklist amd76x_edac 
    
    blacklist vga16fb
    blacklist nouveau
    blacklist rivafb
    blacklist nvidiafb
    blacklist rivatv
    

    保存文件并退出。

  2. 移除所有的nvidia*软件包

    sudo apt-get remove --purge nvidia-*
    
  3. 完成上述步骤后,重新启动计算机,停止显示管理器,然后尝试安装nvidia驱动程序。

    按下Ctrl+Alt+F1。进入文本模式后,停止显示管理器。这将强制终止所有正在运行的应用程序,因此在完成此步骤之前,请确保保存您正在工作的任何内容并手动关闭它们。根据您的显示管理器运行以下命令之一(lightdm是Ubuntu原始版本的默认显示管理器,但旧版本或使用GNOME桌面的系统可能使用gdm,而在KDE/Kubuntu/Plasma上应该使用kdm):

编辑:要确定您的Ubuntu系统使用的默认显示管理器,执行以下命令:cat /etc/X11/default-display-manager 尽管这不能保证结果,在许多情况下这将是正确的选择。

    sudo service lightdm stop

    sudo /etc/init.d/gdm stop

现在,运行你从Nvidia官网下载的驱动程序包。注意:请将下面示例中的文件名替换为你实际拥有的文件名。
    sudo ./NVIDIA-Linux-x86-260.19.44.run

注意:如果您仍然遇到与nouveau驱动程序相关的错误,则可能需要更新initramfs,因为它可能配置为加载nouveau驱动程序。不要重新启动或关闭电源,请运行此命令以更新initramfs磁盘。
sudo update-initramfs -u

现在重新启动并重复第3步。这次应该会顺利进行。

在Ubuntu安装过程中有没有办法解决这个问题?我被Nouveau驱动程序的问题困扰住了,详见http://askubuntu.com/questions/507226/cant-install-ubuntu-14-04-black-screen-w-gtx-770。 - Tyson Trautmann
在这里发布问题后,我解决了困境(并回答了自己的问题,并详细说明了问题)。谢谢关心! - Tyson Trautmann
1感谢他的配方。在Ubuntu 14.04上对我有效,只有两点需要注意:停止X需要使用sudo service lightdm stop(而不是/etc/init.d/gdm stop),并且在更新initramfs后还需要再次重启。 - tomasb
@tomasb 对于lightdm的观点很好 - 已更新答案 - Elder Geek
嘿,那个链接需要更新一下。 - jokerdino
1这个方法适用于在Ubuntu 16.04上通过nouveau驱动程序。 - Manuel J. Diaz
1这在Ubuntu 16.10上运行得非常好,答案很棒。 - Oscar Reyes
1至少在Xubuntu上,你不需要重新启动来卸载nouveau驱动程序。在停止显示管理器之后, "modprobe -r nouveau" 会从内核中卸载nouveau驱动程序。 - gerardw
@Zanna,感谢你的编辑。一如既往地,我们非常感激你的努力。 - Elder Geek
现在我只能使用一个屏幕工作。另一个屏幕没有被检测到 :( - MuntingInsekto
@vnpnlz 你可能会发现这个答案与你目前的情况相关。祝好运! - Elder Geek

手动删除nouveau不再需要。如果您在Ubuntu上从附加驱动程序安装nvidia驱动程序,安装脚本将确保将nouveau列入黑名单。
但是,在您执行任何操作之前,您必须为nvidia驱动程序添加图形存储库:
sudo apt-add-repository ppa:graphics-drivers/ppa
sudo apt-get update

我建议你去NVIDIA的网站查看你的显卡支持的驱动程序,并从Ubuntu的“附加驱动”工具中安装它们。

1在此之后,你如何安装cuda? - saurabheights
2@saurabheights http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html - Monku

16.04 如何操作
插入
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

into

etc/modprobe.d/blacklist.conf

在安装NVidia驱动程序之前,先重启电脑。 这在Ubuntu 16.04 LTS上对我有效。


很好有16.04的指南,因为问题和答案都是关于14.04的。你能把“16.04如何做”放在标题格式的开头吗?+1 - WinEunuuchs2Unix
这对我在16.04上起作用,但在重新启动和再次尝试.run文件安装之前,我必须运行sudo update-initramfs -u。我不得不这样做是因为Ubuntu损坏了他们的apt软件包 - jchook

在Nvidia的文档中提到的将nouveau列入黑名单的方法并不起作用。我们不需要将其列入黑名单。只需使用apt安装Nvidia驱动程序即可。您只需要按下Ctrl+Alt+F1登录到tty,并停止lightdm服务,然后输入以下命令:
sudo apt-add-repository ppa:graphics-drivers/ppa 
sudo apt install nvidia-384  # or whatever version compatible with your GPU

然后重新启动。

只要ppa正常工作(目前我的内核版本和ppa的dkms存在问题,但这个问题在nvidia最新的驱动程序中已经修复),这是真实的。 - Patrick J. S.

Xubuntu 20.04.1(桌面版,显然)

对于急躁的人来说,请直接跳到最后。但是如果你决定直接安装NVidia代码,你应该阅读其他答案(以及NVidia的README)。

识别我的显卡。

root@...:/lib/modules/5.4.0-62-generic# dmesg | grep -i nvidia
[   10.448241] nouveau 0000:01:00.0: NVIDIA GK208B (b06070b1)
[   12.059748] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input16
[   12.059815] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input17
[   12.059874] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input18
[   12.059936] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input19
[   12.059993] input: HDA NVidia HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1/input20

只是再确认一下(这是我需要继续的信息)。
root@...:/lib/modules/5.4.0-62-generic# lspci | grep -i nvidia
01:00.0 VGA compatible controller: NVIDIA Corporation GK208B [GeForce GT 730] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GK208 HDMI/DP Audio Controller (rev a1)

去这个页面下载NVidia显卡驱动程序 https://www.nvidia.com/en-us/geforce/drivers/ 然后选择要包含在上述卡中的参数...
结果(选择最新的几个) https://www.nvidia.com/en-us/drivers/results/168347/ 不要使用此页面,只供参考。
下载我想要的驱动程序包。
在网站上查看附加信息(在软件包详细信息页面底部)。那里有一个方便的链接到自述文件,值得阅读。 附加信息 已知问题: 在Quadro显卡上启用翻转功能可能会导致图形损坏。如果您认为遇到了这个问题,可以尝试以下解决方法之一: - 在nvidia-settings中禁用翻转(在“OpenGL设置”面板中取消选中“允许翻转”) - 禁用UBB(运行'nvidia-xconfig --no-ubb'命令) - 使用合成桌面
请注意,许多Linux发行版都以其本地软件包管理格式提供NVIDIA Linux图形驱动程序。这可能与您的发行版框架更好地交互,您可能希望使用这种方式而不是NVIDIA官方软件包。
另请注意,SuSE用户在下载驱动程序之前应阅读SuSE NVIDIA Installer HOWTO。
[NOT INCLUDED in the quoted section] 
must first stop the Xserver 
-- for xubuntu 20.04,
log off your session
switch to tty1 (ctrl+alt+f1)
log on as root
systemctl stop lightdm
systemctl status lightdm 
[back to instuctions]

安装说明:一旦您下载了驱动程序,请切换到包含驱动程序包的目录,并以root身份运行sh ./NVIDIA-Linux-x86_64-460.32.03.run来安装驱动程序。
安装的最后一步将提供更新X配置文件的选项。要么接受该选项,手动编辑X配置文件以使用NVIDIA X驱动程序,要么运行nvidia-xconfig。
请注意,支持的GPU产品列表是为了指示哪些GPU由特定驱动程序版本支持。某些采用支持的GPU的设计可能与NVIDIA Linux驱动程序不兼容:特别是具有切换(混合)或Optimus图形的笔记本电脑和一体式台式机设计如果没有可用于禁用硬件集成图形的方法,则无法正常工作。硬件设计因制造商而异,请咨询系统制造商以确定该特定系统是否兼容。
更详细的说明,请参阅README
如需进一步了解,请访问我们的论坛https://forums.developer.nvidia.com/c/gpu-unix-graphics/linux/148

对于急躁的人的注意事项: 当我启动安装时,它提醒我可能有更好集成的驱动程序可用于: 软件和更新 --> 附加驱动

瞧,果然有,而且元包与我刚刚下载的那个版本号相同(460.32)。 (请参见末尾的屏幕截图)。

所以,我安装了最新的驱动程序,一天过去了,再也没有被奇怪的视频和xserver卡住困扰,这些问题曾经每天多次困扰我。

向NVIDIA和Ubuntu致敬,他们保持驱动程序如此完美地更新。

Screen Shot of NVidia Additional Drivers