这几天在新购置的笔记本上部署工作环境,在安装NVIDIA驱动的时候遇到了不少坑,重装了很多次,在Ubuntu论坛以及其他资料源看了很多大牛的分析,最终终于解决了一个又一个问题,过程比较艰辛,所以决定写一篇博客总结一下,温故知新,如果正好能解答一些后来者的问题,那就再好不过了。
首先介绍一下我的安装流程,我所采用的是PPA的安装方式:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-378 nvidia-prime
我遇到的几个坑:
一、循环登录
主要表现为在登录界面输入密码后依然跳转回登陆界面,无限循环,这是我在使用.run文件安装时遇到的问题,这里有一个亲测有效的解决方案:
当输入安装指令时,不要简单地输入 sudo ./....run,而是输入:
sudo ./NVIDIA.run -no-x-check -no-nouveau-check -no-opengl-files
-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
这样再reboot,就不会出现循环登录的问题。
二、重启黑屏
主要表现为reboot后开机无法进入图形界面,而是直接黑屏,但是还可以进入命令行界面。亲测有效的解决方案:
sudo cp ~/tmp/xorg.conf.nvidia-xconfig-original /etc/X11/xorg.conf
sudo gedit /etc/X11/xorg.conf
确保xorg.conf.nvidia-xconfig-original(也可能在etc/X11路径中)与xorg.conf的内容为:
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "intel"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "SNA"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1@0:0:0"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection
然后reboot,就可以解决黑屏问题。
三、驱动不工作 主要表现为可以进入图形界面,但是驱动不工作,无论是nvidia-smi还是nvidia-prime都是无效的。 出现这个问题的可能原因是没有Disable掉Secure Boot(就是安装驱动时提示你Disable的东西),解决方法也很简单,在安装完驱动后,reboot时,在开机出现一个全蓝界面 时按任意键,选择第二项,也就是改变Secure Boot的状态,然后依据提示将它Disable掉,然后boot就好。 如果之后要Enable这个东西的话,输入指令: sudo mokutil --enable-validation 然后reboot,在开机的时候就会再次出现那个全蓝的界面,依然选择第二项,根据提示Enable,然后boot即可。 总的来说Ubuntu和NVIDIA之间还是挺不对付的,上面三个问题也是比较常见的三个问题,因此将问题及解决方案记录下来,希望能帮助到各位。
Ubuntu14.04 64 位系统 安装 Cuda 6.5
blacklist nouveau
options nouveau modeset=0
3、为了能够编译CUDA提供的例子,还需要再安装如下包:sudo apt-get install freeglut3安装好后建立软链接sudo ln -s /usr/lib/x86_64-linux-gnu/libglut.so.3 /usr/lib/libglut.so
4、之后可以安装CUDA6.5的RUN文件下载地址:https://developer.nvidia.com/cuda-downloads,选择RUN文件下载。./*.run 安装提示一步步运行即可
【深度学习】 Ubuntu16.04 caffe Opencv2.4.13 GPU环境配置
如果出现找不到nvidia.ko的问题,参照前面,安装一次受限制驱动列表(源)便可。
直接移除这个驱动(备份出来)
# mv /lib/modules/3.0.0-12-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko /lib/modules/3.0.0-12-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko.org重新加载一下
# update-initramfs -u
重启发现字体已经变大了,卸载成功。
用官方驱动安装,将驱动拷到主文件夹,然后按Ctrl+Alt+F1退到终端并登录
sudo /etc/init.d/gdm stop 停止界面服务
然后运行sudo sh ./Nv.......(驱动软件名)
依次按照提示进行
成功
问题背景,debian系统,xfce 桌面手残装nvidia驱动,没看仔细,执行了几遍nvidia-xconfig,重启进不去图形..但是可以ctrl+alt+f2切换多任务..
问题分析,把xorg配置文件弄残了,恢复如下..
问题解决,不算解决,算是恢复,接着继续解决nvidia..
1.sudo Xorg -configure (生成文件 ~/xorg.conf.new)
2. mv ~/xorg.conf.new /etc/X11/xorg.conf
3.reboot#安装一个依赖文件,并更新系统
sudo apt-get install linux-headers-generic
sudo apt-get update
sudo apt-get upgrade
#查询NVIDIA显卡驱动,并安装
sudo apt-cache search nvidia*
#选择一个你需要的,如nvidia 367 375
sudo apt-get install nvidia-367
sudo nvidia-xconfig
sudo reboot
sudo apt-get remove --purge nvidia-*
sudo apt-get install ubuntu-desktop
sudo rm /etc/X11/xorg.conf
echo 'nouveau' | sudo tee -a /etc/modules
#重启系统
sudo reboot
sudo
ubuntu-drivers devices
在安装cuda的时候,由于涉及到NVIDIA驱动的安装,使得nouveau驱动与NVIDIA驱动冲突,为了能够继续安装,必须禁用此驱动。禁用步骤如下:
1)把nouveau驱动加入黑名单,即在/etc/modprobe.d/blacklist.conf的后面加入:
blacklist nouveau
2)备份initramfs文件
sudo mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bat
3)重新建立initramfs文件
sudo dracut -v /boot/initramfs-$(uname -r).img $(uname -r)
4)检查nouveau驱动,确保没有被加载
lsmod | grep nouveau
5)运行相应的cuda安装文件(例如:cuda-*.run)
在禁用nouveau驱动后,重启系统,如果无法进入,这时可以采用如下方法——
该方法有两个前提:
1.你的电脑中拥有多个Linux系统,这里简称为Linux1和Linux2;
2.在禁用nouveau驱动的时候,备份了initramfs文件。
Linux1由于禁用nouveau驱动,导致开机无法进入系统。此时,先进入Linux2,然后运行如下命令:
注意:这里的$(uname -r)指的是Linux1中的内核名称,需要手动输入,不然结果就是Linux2的内核名称
1)sudo cp /boot/initramfs-$(uname -r).img.bat /boot/initramfs-$(uname -r).img
2)sudo dracut -v /boot/initramfs-$(uname -r).img $(uname -r)
最后重新启动,就可以成功进入Linux1系统了。