问题描述
我最近安装了14.04。
但是现在我的nVidia GeForce GT 630需要一个新的驱动程序。前驱动程序被拒绝,因为它与64位不兼容。我发现其他驱动程序,当我想用sh
在终端中安装它时,我首先被叫到停止x-server。它不能与运行x-server一起安装。
那么我该如何安装呢?
最佳解决思路
您可以安装Ubuntu驱动程序,对于GT 630,您可以使用:sudo apt-get install nvidia-304
或sudo apt-get install nvidia-304-updates
,而不是两者。
次佳解决思路
您可以为Ubuntu 64bit from here下载视频卡的驱动程序。假设你现在正在使用Ubuntu 64bit。如果你安装了Ubuntu 32位,那么Ubuntu 32bit的驱动程序有331个版本。将驱动程序保存在可以轻松访问的位置,例如用户主目录或用户主目录中新创建的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。
您还可以通过在终端窗口中键入以下行来禁用内核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替换为默认显示管理器,可以是kdm或gdm,也可以是显示管理器。
您应该在终端控制台中收到一条消息说 – > 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
在/etc/X11/xorg.conf中保存新的nvidia配置。
注意
如果nvidia安装程序发出错误并提示缺少依赖项,则可能需要安装一些额外的软件包:
sudo apt-get install dkms fakeroot build-essential linux-headers-generic
但是,只有当nvidia-installer无法自行完成工作时,才需要安装所有这些缺失的软件包。
重启后系统会显示黑屏或进入低图形模式。要解决此问题,您应该再次退出到控制台终端,使用您的用户名和密码登录,并使用上面提供的代码sudo nvidia-xconfig并使用以下教程。这意味着fix the greeter假设他们没有修复Ubuntu 14.04中的这个错误。
第三种解决思路
由于大多数答案都已过时……以下是为Ubuntu安装nvidia驱动程序的现代方法(适用于14.04及更新版本):
-
添加graphics-drivers ppa
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update
-
安装推荐的驱动程序
sudo ubuntu-drivers autoinstall
-
重启系统
sudo reboot
要选择其他驱动程序,或者以上操作不起作用:
-
添加graphics-drivers ppa
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update
-
清除已安装的任何现有nvidia相关软件包
sudo apt-get purge nvidia*
-
检查哪些驱动程序适用于您的系统
ubuntu-drivers devices
-
安装推荐的驱动程序
sudo apt-get install nvidia-361
-
重启系统
sudo reboot
第四种思路
这是我的工作(通过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
(适用于最新版本)。
安装后,请不要忘记注销或重新启动,然后重新登录。
第五种思路
我正在使用geforce gt820m。
我已经尝试了上面几乎所有的建议,但没有一个适合我。然而,将我从上面学到的知识与其他许多在线资源(如here)相结合,这就是我的意思。
如果你按照这些步骤,你最终会得到这样的东西。
首先,将所有内容重置为默认值。怎么样?
卸载任何nvidia的东西
sudo apt-get --purge remove nvidia*
吹xorg Edgers ppa
在”Other Softwares”选项卡中,取消选中Xorg Edgers PPA,如下图所示。这个ppa给我带来了太多痛苦而不是好事。
然后在提示或允许时允许更新包…
sudo apt-get update
……做其余的事。
是时候了
回到其他驱动程序,您应该看到只列出了一个Nvidia二进制文件(至少对于我的卡,这是列出的内容,而不是xorg edge ppa处于活动状态时显示的两个)
差异是什么? xorg edgers ppa显示的驱动程序是开源的。现在显示的那个具有专有的指示。在这种情况下,专有的岩石,所以请与它一起去,除非你想在接下来的几个小时里弄乱你的头,但没有成功。
从x.org x服务器切换到nvidia二进制文件并应用。它应该花费一些时间来应用(我在这里花了一点时间,我意识到它在这个过程中下载了一些包)。完成后重新启动计算机。
故障排除
如果您在/etc /default /grub中添加了与默认值不同的任何内容,或者对/etc/X11/xorg.conf进行了更改,请将其重置为默认值。你应该聪明地知道你添加了什么并把它带走。
将所有更改还原到这两个区域后,请更新以下内容:
sudo update-initramfs -u
sudo update-grub
以上两个命令将确保您对上述文件所做的更改,尤其是下次重新引导时应用/etc /default /grub中的一个。未能应用更新命令使我无法对grub文件所做的任何更改,即使重新启动后也是如此。
对于xorg.conf文件,您可以从该文件夹中删除它(您可以自由备份它)
如果你没有看到好的分辨率,一定要做到
sudo nvidia-xconfig
然后重启你的电脑。
如果您感到兴奋,可以通过简单的方式从PC中删除nouveau
sudo apt-get remove xserver-xorg-video-nouveau
我不会建议你删除新手,但我做了但是:P
经过几个小时的尝试和错误后,执行上述步骤让我再次使用nvidia驱动程序。
有问题吗?
是。由于某些原因我还不知道,运行许多应用程序会导致PC冻结。 Ctrl + Alt + F1让我有机会获得lightdm re-spawn,但为什么冻结发生对我来说是一个谜。非常感谢任何帮助。
第六种思路
您可以使用ubuntu-drivers-common(以前称为jockey
)为nVidia图形适配器(以及其他硬件)安装其他驱动程序。显然,硬件检测和驱动程序管理现在通过命令行接口完成:
sudo ubuntu-drivers autoinstall
有关详细信息,请参阅https://askubuntu.com/a/9465/175814。
第七种思路
我在NVIDIA和Ubuntu 14.04上遇到了很多问题。但最终,我设法安装它。我有配备Nvidia GeForce 820M的Acer Aspire笔记本电脑。
它是怎么回事:
-
安装nvidia-331。我是通过Synaptic Package Manager完成的。但我想
$ 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: