如何安装GeForce GT 630的Nvidia驱动程序?

我最近安装了14.04。
但是现在我需要一个新的驱动程序来支持我的nVidia GeForce GT 630。之前的驱动程序因为不兼容64位系统而被拒绝。我找到了另一个驱动程序,但是当我想在终端中使用sh命令安装时,我被要求先停止x服务器。它不能在运行x服务器的情况下安装。
那么我应该如何安装它们呢?

11为什么您不使用默认的附加驱动选项卡呢?http://askubuntu.com/questions/47506/how-do-i-install-extra-drivers - fossfreedom
3原因:我还没有看到那个标签。 - Horst Seeger
@HorstSeeger,如果你的问题已经解决了,你应该检查正确的答案。 - opu 웃
9个回答

你可以从这里下载适用于Ubuntu 64位的显卡驱动程序链接。假设你现在使用的是Ubuntu 64位。如果你安装的是Ubuntu 32位,那么同样的驱动程序有331版本适用于Ubuntu 32位。将驱动程序保存在一个容易访问的地方,比如你的用户主目录或者在你的用户主目录下新建一个nvidia目录内。
为了能够安装你的NVIDIA驱动程序,你需要在终端窗口中输入以下代码来删除之前的显卡驱动程序:
    sudo apt-get remove nvidia* && sudo apt-get autoremove

完成这个之后,你还应该通过编辑这个文件来将nouveau驱动程序加入黑名单。
    gksudo gedit /etc/modprobe.d/blacklist-nouveau.conf

或者

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

…并在末尾添加这些行:
    blacklist nouveau
    blacklist lbm-nouveau
    options nouveau modeset=0
    alias nouveau off
    alias lbm-nouveau off

如果碰巧在/etc/modprobe.d/中没有blacklist-nouveau.conf文件,您可以在提示时将文件保存为blacklist-nouveau.conf
您还可以通过在终端窗口中输入以下命令来禁用Kernel Nouveau:
    echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf

之后

    update-initramfs -u

现在你可以重新启动电脑,在登录提示符出现时,按下Ctrl+Alt+F1键退出到终端控制台。使用你的用户名和密码进行登录。
使用终端控制台中的命令cd进入保存NVIDIA驱动程序的目录。例如,假设你已经在登录后的用户主目录中,可以使用命令cd nvidia。你可以使用命令dir来查看确切的驱动程序名称。
要停止显示管理器或X服务器,你可以在控制台中输入以下代码:
   sudo stop lightdm   or

   sudo lightdm stop

如果您未使用 lightdm 作为默认的显示管理器(DM),请将 lightdm 替换为您的默认显示管理器,可以是 kdmgdm 或其他您的显示管理器。

您应该在终端控制台中收到一条消息 --> lightdm 停止/等待

现在,您可以使用类似于以下代码的方式最终安装 nvidia 驱动程序:

  sudo sh NVIDIA-Linux-x86_64.....run    (for Ubuntu 64bit)  

或者

  sudo sh NVIDIA-Linux-x86.....run    (for Ubuntu 32bit)

如果您没有输入准确的驱动程序名称,将会收到以下提示信息:NVIDIA-Linux... 无法找到,您需要重新输入安装驱动程序的代码。
Nvidia安装程序会自动安装驱动程序,并在最后询问您是否要保存新的X配置。请点击“是”。重启计算机并进入桌面后,根据您的需求更改NVIDIA设置,然后打开终端窗口并输入以下代码:
  sudo nvidia-xconfig

将您的新NVIDIA配置保存在/etc/X11/xorg.conf中。

注意

如果NVIDIA安装程序出现错误并提示缺少依赖项,您可能需要安装一些额外的软件包:

    sudo apt-get install dkms fakeroot build-essential linux-headers-generic

但是只有在nvidia-installer无法自行完成工作时,您才需要安装所有这些缺失的软件包。
可能会出现重新启动后系统显示黑屏或进入低图形模式的情况。要解决此问题,您应该再次退出到控制台终端,使用您的用户名和密码登录,并使用上面提供的代码sudo nvidia-xconfig,并参考以下教程。它旨在修复欢迎界面,假设他们在Ubuntu 14.04中尚未修复此错误。

谢谢你清晰的解释。也许我应该按照你所说的去做。但是我选择了更简单的方式,就像你在上面看到的那样。现在我需要找到一种方法来重新运行Unity和Gnome。 - Horst Seeger
访问这个页面,看看是否能在里面找到任何值得探索的东西。 - Taz D.
在运行NVIDIA驱动程序之前,您还需要运行以下命令:sudo apt-get install linux-headers-generic。 - mac
1很好的指南,对我帮助很大 :) - Maarten Kieft
3有没有特别的原因使用这个答案而不是简单的“附加驱动程序选项卡”呢? - user2618142
1没有任何理由! - Taz D.
所以我按照这个指南操作,现在我的屏幕不停地闪烁单一颜色(蓝色、黑色、白色、红色、绿色)。我仍然可以进入控制台,但我的 X 会话已经完全崩溃了。 - AlexLordThorsen
2每次内核更新,你可能需要重复这个过程。 - NickTux
我运行了lightdm stop命令,然后我的屏幕变成了空白/黑屏。我真的需要执行这个步骤吗? - ericn
错误信息为“无法获取 D-Bus 连接”。 - ericn
如果在编译之前安装了dkms,你就不必再次安装了。 - mchid
这对我来说很有效,对于Nvidia GT-740和Asus 4K显示器都适用。而使用"apt-get"的答案却没有成功。在安装过程中我遇到了一些错误(无法创建某些链接),但我还是继续安装,结果还是成功了。感谢你提供的出色答案! - Mr Ed
为什么需要黑名单步骤?在卸载nvidia-*软件包后,blacklist nouveau会做什么? - user3728501
黑名单是因为运行Nvidia的文件会返回一个关于nouveau内核与Nvidia驱动不兼容的错误消息。 - Will
我遇到了“X服务器正在运行”错误。而不是停止lightdm,我不得不多次执行sudo killall Xorg直到它显示“未找到进程”。 - Xin
我不推荐这个解决方案。特别是,不要从NVIDIA官网下载驱动程序——对我来说效果不好。请按照这里的说明进行操作:https://codeyarns.com/2013/02/07/how-to-fix-nvidia-driver-failure-on-ubuntu/ - Xin

由于大多数答案都已过时... 这里是在Ubuntu上安装NVIDIA驱动程序的现代方法(适用于14.04及更高版本):
  1. 添加图形驱动 PPA

    sudo add-apt-repository ppa:graphics-drivers/ppa
    sudo apt-get update
    
  2. 安装推荐的驱动程序

    sudo ubuntu-drivers autoinstall
    
  3. 重新启动您的系统

    sudo reboot
    

选择其他驱动程序,或者如果上述方法不起作用:

  1. 添加图形驱动ppa源

    sudo add-apt-repository ppa:graphics-drivers/ppa
    sudo apt-get update
    
  2. 清除已安装的任何与Nvidia相关的软件包

    sudo apt-get purge nvidia*
    
  3. 检查系统可用的驱动程序

    ubuntu-drivers devices
    
  4. 安装推荐的驱动程序

    sudo apt-get install nvidia-361
    
  5. 重新启动系统

    sudo reboot
    

2你可以通过访问https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa来查看提供的驱动程序版本。 - Azmisov
非常感谢!这个问题让我烦透了,而这篇帖子比我的心理医生还要有用多了。 - Andre Figueiredo
这是目前最好的答案。 - Florin Andrei
在16.04上运行良好。我已经禁用了nouveau驱动程序,但是我不知道这是否对我的成功起到了影响。 - Manuel J. Diaz
请注意,autoinstallrecommended 可能使用测试版驱动程序。 - bitsoflogic
1我已经看过这个网站上的许多答案,并且我尝试过其中几个。截至2016年12月,在我看来,这是最好的答案。 - H2ONaCl

你可以安装Ubuntu驱动程序,对于GT 630,你可以使用以下命令:sudo apt-get install nvidia-304 或者 sudo apt-get install nvidia-304-updates,但不能同时安装两个。

现在我已经按照你的建议使用了:sudo apt-get install nvidia-304 nvidia-304-updates。 - Horst Seeger
5就像我说的那样:我按照你的建议使用了那条命令行。 结果是:Ubuntu启动到红屏,左下角显示Ubuntu 14.04 LTS,鼠标指针可以移动,但是Unity和Gnome都没有出现。之前至少Unity还能工作,只是不让我更改背景。它也只是纯红色的屏幕,但有所有的图标和启动器。Gnome完全可以正常工作。 现在只有红色的背景,没有任何可访问的内容。 接下来该怎么办? - Horst Seeger
1在这种情况下,你可以使用Ctrl+Alt+1,在文本模式下使用Ubuntu。如果它阻塞了,你可以通过Ctrl+Alt+2切换到2。数字7是桌面,数字8是登录屏幕。 - L.V.A
就像我在后续问题下面写的那样:我的问题已经解决了。Nvidia正常运行,Unity和Gnome也正常运行。 但是还是要谢谢你关于Ctrl+Alt+F1、F2、F7的建议。我之前还不知道可以通过控制台进行操作,这些建议对我帮助很大。 - Horst Seeger
8我曾经也因为运行了"sudo apt-get install nvidia-something"而彻底搞砸了我的系统。千万不要这样做。 - matteo
2你介意重新表达一下你的回答吗?nvidia-304并不是Ubuntu的开源驱动程序。 - NickTux
你是指回到NVIDIA 304而不是NVIDIA 331解决了问题吗? - doctorate
请注意,通过这种方法安装的是开源版本而不是专有版本!专有版本适用于游戏。 - Alex Jones
4你的回答有点误导人:应该选择执行sudo apt-get install nvidia-304或者sudo apt-get install nvidia-304-updates,而不是两者都安装。据我所知,它们是同一个驱动程序的不同版本,-updates版本稍微更新一些。 - user25588
@edwardtorvalds 开源是新的,这就是专有驱动程序,它与通过"软件源"安装的同一个专有驱动程序,只不过是官方维护的。 - mchid
340.96是当前最新的驱动程序版本吗? - matanster

这是我所做的(通过PPA):

首先,我添加了一个xorg-edgers PPA:

sudo add-apt-repository -y ppa:xorg-edgers/ppa

然后我要么从命令行安装,要么从附加驱动程序部分安装。
首先,更新您的软件包列表:
sudo apt-get update

附加驱动程序现在已经更新为较新的软件包。
或者,从终端安装nvidia-331(用于v331),nvidia-337(用于v337)或nvidia-current(用于最新版本)。
安装完成后,请不要忘记注销或重新启动,并重新登录。

在这一行上,还有一些有用的信息这里,根据它,您可以安装多个驱动程序版本,并在"设置 > 软件源 > 附加驱动"中使用Synaptic进行选择。 - Aquarius Power
你应该使用graphics-drivers PPA而不是xorg-edgers - Corey Goldberg
@CoreyGoldberg 这个答案已经有将近2年的历史了,这里已经有一个回答建议使用新的ppa:http://askubuntu.com/a/700613/107722 - Arda
没错,我的评论只是指出这个答案已经过时了,现在你应该使用graphics-drivers ppa。 - Corey Goldberg
1@Arda 顺便说一下,你链接的答案是我写的。 - Corey Goldberg

您可以使用ubuntu-drivers-common(以前称为jockey)为nVidia图形适配器(以及其他硬件)安装额外的驱动程序。显然,现在通过命令行界面进行硬件检测和驱动程序管理:
sudo ubuntu-drivers autoinstall

有关详细信息,请参见https://askubuntu.com/a/9465/175814


"autoinstall已被弃用,请使用"install"替代" - Alkanshel

我正在使用Geforce GT820M。
我已经尝试了上面几乎所有的建议,但都没有对我起作用。然而,结合我从上面学到的知识和其他许多在线资源,比如这里,这是我处理的方法。
如果你按照这些步骤进行,最终会得到类似这样的结果。

What I had

首先,将所有设置恢复为默认值。如何操作呢?
卸载任何NVIDIA相关的软件。
sudo apt-get --purge remove nvidia*

摒弃 Xorg Edgers PPA

在你的“其他软件”选项卡中,取消选中 Xorg Edgers PPA,使其看起来像下面的图片一样。那个 PPA 给我带来了更多的痛苦而不是好处。

Uncheck xorg edges ppa in

然后在提示时允许更新软件包,或者让其自动更新...
sudo apt-get update

...做剩下的事情。

是时候了

返回到附加驱动程序,你应该只能看到一个Nvidia二进制文件(至少对于我的显卡来说,当xorg edges ppa处于活动状态时,显示的是两个)。

有什么区别?由xorg edgers ppa显示的驱动程序是开源的。现在显示的那个有专有的标识。在这种情况下,专有的更好,所以请使用它,除非你想在接下来的几个小时里一直折腾而没有成功。

x.org x server切换到nvidia binary并应用。应用可能需要一些时间(在我这里花了一些时间,并且我意识到它在过程中下载了一些软件包)。完成后重新启动计算机。

故障排除

如果你在/etc/default/grub或/etc/X11/xorg.conf中添加了与默认设置不同的内容,或者对其进行了更改,请将它们恢复为默认值。你应该聪明地知道你添加了什么并将其删除。

在恢复这两个区域的所有更改后,请更新以下内容:

sudo update-initramfs -u
sudo update-grub

上述两个命令将确保您对上述文件所做的更改,尤其是在/etc/default/grub中的更改,在下次重启时生效。如果未能应用更新命令,我将被困在对grub文件所做的任何更改之中,即使重新启动后也是如此。
对于xorg.conf文件,您可以从该文件夹中删除它(您可以备份它)。
如果您没有看到良好的分辨率,请确保执行以下操作:
sudo nvidia-xconfig

重新启动你的电脑。
如果你感到兴奋,你可以通过简单地删除nouveau来从你的电脑上删除它。
sudo apt-get remove xserver-xorg-video-nouveau

我不会建议你移除nouveau驱动,但是我自己却这么做了 :P

按照上述步骤后,经过几个小时的尝试和错误,我的电脑终于能够正常运行NVIDIA驱动程序了。

有任何问题吗?

是的。由于某些原因,我还不清楚,运行多个应用程序会导致电脑冻结。Ctrl + Alt + F1可以让我重新启动lightdm,但为什么会发生冻结对我来说仍然是个谜。非常感谢任何帮助。


1@karel 謝謝。沒注意到那個。 - KhoPhi
Ubuntu冻结问题是由于我的笔记本电脑触摸板引起的。使用外部鼠标时,从不出现冻结现象。 - KhoPhi

我在NVIDIA和Ubuntu 14.04上遇到了很多问题。但最终,我成功安装了它。我有一台搭载Nvidia GeForce 820M的Acer Aspire笔记本电脑。

以下是具体步骤:

  • 安装nvidia-331。我通过Synaptic软件包管理器进行了安装。但我猜

$ sudo apt-get install nvidia-331

也可以。我没有执行sudo apt-get install nvidia-331-updates。我没有执行任何额外的禁用nouveau驱动程序的操作。

然后我重新启动了系统。 我从NVidia网页上下载了cuda_5.5.22_linux_64.run,并将其解压到单独的文件中: $ chmod 755 cuda_5.5.22_linux_64.run $ ./cuda_5.5.22_linux_64.run -extract=/home/user/Downloads/cuda-5.5 $ ls cuda-linux64-rel-5.5.22-16488124.run NVIDIA-Linux-x86_64-319.37.run cuda-samples-linux-5.5.22-16488124.run $ sudo sh cuda-linux64-rel-5.5.22-16488124.run $ sudo sh cuda-samples-linux-5.5.22-16488124.run
然后我编译了1_Utilities/deviceQuery,它成功运行了。然后我编译了0_Simple/matrixMul,也成功运行了。请确保设置好$PATH和$LD_LIBRARY_PATH。
我尝试使用cuda 6.0沿着同样的路径进行。虽然deviceQuery编译成功,但执行失败。
$ ./deviceQuery 
./deviceQuery Starting...
CUDA Device Query (Runtime API) version (CUDART static linking)
cudaGetDeviceCount returned 3
-> initialization error
Result = FAIL

$ echo $PATH
/opt/cuda-6.0/bin:/opt/cuda-5.5/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

$ echo $LD_LIBRARY_PATH
/opt/cuda-6.0/lib64:/opt/cuda-6.0/lib:/opt/cuda-5.5/lib64:/opt/cuda-5.5/lib:

如果你无法上网,但可以访问第三方互联网,你可以从Nvidia官网下载你的驱动程序,保存为.run文件。
安装之前,你需要停止lightdm,这并不难:
- 使用Ctrl + Alt + F1进入终端环境并登录 - 运行命令:sudo service lightdm stop - 进入.run文件所在目录:cd *驱动文件目录* - 运行命令:*驱动文件名*.run 按照设置过程完成后,你将返回到桌面: - 运行命令:sudo service lightdm start
虽然可能不需要重新启动,但建议重新启动一下。
我还建议使用专有驱动而不是nouveau。 根据我的经验,nouveau无法在1600x1200的多显示器模式下工作, 对于我的Galaxy Nvidia GeForce GT430,最大只能支持1280x1024的单显示器模式。 更不用说游戏帧率非常低了。

你应该尝试使用bumblebee的nouveau驱动程序。我遇到了困难,因为在ubuntu gnome 14.04.1 amd64中安装任何nvidia专有驱动程序都会导致gnome shell无法成功加载。虽然,如果你使用optirun glxspheres64或primusrun glxspheres64,帧率非常低,在游戏中表现得非常稳定。我玩NFS World和WOT,性能比使用nvidia 331与bumblebee要好得多。

1请问你能解释一下如何做吗? - David Foerster
在 Vivid 上使用了一段时间,但多年来一直在运行专有的 Nvidia 驱动。相当确定它们通常与包括 Gnome 在内的任何桌面环境兼容且工作良好。 - Nephente
我在这里待了很长时间,多年来一直与Ubuntu有许多糟糕的问题。现在我使用的是Fedora 23,并且他们在文档中提到bumblebee+nouveau+gnome-shell与gdm不兼容。这是两年前的问题,我也遇到过。这也与硬件有关(我的笔记本存在一些问题)。关于安装nouveau,你应该卸载:<pre> sudo apt-get purge bumblebee* nvidia* primus*<code> 然后以以下方式安装:<pre> sudo apt-get install bumblebee nouveau primus virtualgl <code> - cyberalex4life
有两件事我可以确认:nouveau 是稳定的,但在硬件加速方面表现不佳。所以你可能会发现自己处于想要使用类似我的配置(Intel Core I7 3610 QM 2.30GHz、Nvidia 610m)来玩 Steam 游戏,但与 Intel GPU 相同性能的局面。如果你想要稳定,如果你想要免费,nouveau 就可以。如果你想要性能,你应该选择 Nvidia。 - cyberalex4life
关于在Ubuntu上安装NVIDIA显卡,有两个选项:nvidia-prime可以在注销->登录的代价下切换显卡,而bumblebee + nvidia在理论上性能较差。我更喜欢bumblebee,因为我不需要注销。在我的情况下,使用nvidia-prime会导致严重的撕裂问题,而bumblebee则没有这个问题。使用带有primus和VGLTransport=proxy的bumblebee似乎是性能最佳的选择。我已经有一段时间没有使用Ubuntu了,我想提一下这是我的个人选择,不做评论。 - cyberalex4life