什么是nouveau驱动?
nouveau,是一个自由及开放源代码显卡驱动程序,是为Nvidia的显示卡所编写,也可用于属于系统芯片的NVIDIA Tegra系列,此驱动程序是由一群独立的软件工程师所编写,Nvidia的员工也提供了少许帮助。
该项目的目标为利用逆向工程Nvidia的专有Linux驱动程序来创造一个开放源代码的驱动程序。
所以nouveau开源驱动基本上是不能正常使用的,性能极低
**集显与独显的切换
1.使用nvidia-setting切换
2.命令行切换
NVIDIA提供了一个切换显卡的命令:
sudo prime-select nvidia # 切换nvidia显卡
sudo prime-select intel # 切换intel显卡
sudo prime-select query # 查看当前使用的显卡
1.使用标准仓库进行自动化安装
在安装的发行版中,如 ubuntu, Linux Mint等,找到附加驱动管理软件,下面是Linux Mint界面:
选择推荐的驱动安装,点击应用更改,等待下载然后重启即可。
系统设置->软件更新->附加驱动->选择nvidia最新驱动(361)->应用更改
这种安装方式有如下缺点:
如果你的显卡比较新可能会出现安装低版本的NVIDIA驱动而造成即可安装完成,但是并没有真正安装成功,可能会出现循环登录,关机死机等等原因。
当你更换驱动的时候可能原有的NVIDIA驱动删除不干净。
当然这种方式也是有优点的:
不需要手动禁止nouveau
操作方便
还可使用过命令行的方式安装:
#apt-get install nvidia
然后就可以使用下面一条命令安装所有推荐的驱动程序:
#ubuntu-drivers autoinstall
安装完成后重启就可以了,这里要注意,这种安装方式和驱动管理器软件安装的效果是一样的
使用PPA仓库进行自动化安装
使用图形驱动程序PPA存储库允许我们安装NVIDIA beta驱动程序,这有可能会出现兼容性的问题,但是有些时候必须使用这种方式,比如显卡比较新,使用上面所讲的方式检测驱动的安装情况,如果不正常那么只能使用这种方式安装最新的NVIDIA驱动。
添加PPA到我们的系统:
sudo add-apt-repository ppa:graphics-drivers/ppa
更新系统源:
sudo apt update
此时我们就可以下载最新的NVIDIA驱动了:
安装的方式有以下三种,其实前面已经讲过,这里总结一下:
附加驱动管理软件
sudo apt-get install nvidia-xxx
ubuntu-drivers方式
这三种都可以,选择一个版本安装,然后重启即可。
2.使用官方的NVIDIA驱动进行手动安装
这种安装方式我认为是比较野蛮的,也是最正规,最原始的的方式,当然难度是最高的。你可以来挑战一下!!!!
查看当前电脑的显卡型号
#lshw -numeric -C display
下载NVIDIA官方驱动
到NVIDIA的官方驱动网站下载对应显卡的驱动程序,下载后的文件格式为run。
下载好之后放到用户目录下,等下后面会用到。
删除原有的NVIDIA驱动程序
如果你没有安装过,或者已经卸载,可以忽略:
sudo apt-get remove –purge nvidia*
bios禁用禁用secure boot,也就是设置为disable
如果没有禁用secure boot,会导致NVIDIA驱动安装失败,或者不正常。
禁用nouveau
打开编辑配置文件:
sudo gedit /etc/modprobe.d/blacklist.conf
在最后一行添加:
blacklist nouveau
这一条的含义是禁用nouveau第三方驱动,之后也不需要改回来。
由于nouveau是构建在内核中的,所以要执行下面命令生效:
sudo update-initramfs -u
重启
reboot
重启之后,可以查看nouveau有没有运行:
lsmod | grep nouveau # 没输出代表禁用生效
停止可视化桌面:
为了安装新的Nvidia驱动程序,我们需要停止当前的显示服务器。最简单的方法是使用telinit命令更改为运行级别3。执行以下linux命令后,显示服务器将停止,因此请确保在继续之前保存所有当前工作(如果有):
sudo telinit 3
之后会进入一个新的命令行会话,使用当前的用户名密码登录
安装驱动
给驱动文件增加可执行权限:
sudo chmod a+x NVIDIA-Linux-x86_64-390.48.run
然后执行安装:
sudo sh ./NVIDIA-Linux-x86_64-390.48.run --no-opengl-files
安装完成后重启即可,记得验证是否安装成功,参考前面所讲。
–no-opengl-files 参数必须加否则会循环登录,也就是loop login
参数介绍:
–no-opengl-files 只安装驱动文件,不安装OpenGL文件。这个参数最重要
–no-x-check 安装驱动时不检查X服务
–no-nouveau-check 安装驱动时不检查nouveau
后面两个参数可不加。
检测NVIDIA驱动是否成功安装
#nvidia-setting
终端执行这个命令会调出NVIDIA的驱动管理程序,
如果出现这个界面可以看到 NVIDIA Driver Version:390.48,这就代表nvidia-setting安装正常。
使用nvidia-smi命令测试
英伟达系统管理接口(NVIDIA System Management Interface, 简称 nvidia-smi)是基于NVIDIA Management Library (NVML) 的命令行管理组件,旨在(intened to )帮助管理和监控NVIDIA GPU设备。
#nvidia-smi
执行这条命令将会打印出当前系统安装的NVIDIA驱动信息,如下:
我们可以看到我们显卡的型号,我的是GTX 960M,包括显存大小都可以看见。
这一步不重要,因为有时候系统信息里面显示的可能会有误,只显示集显不显示独显的情况。
这里面不显示没有关系,可以略过。
命令行搜索集显和独显
打开终端执行以下命令:
lspci | grep VGA # 查看集成显卡
lspci | grep NVIDIA # 查看NVIDIA显卡
如果都能搜索到说明正常。
查看nouveau是否启动运行可以执行下面命令:
lsmod | grep nouveau
安装操作
1、安装系统插件
[root@localhost ~]# yum -y install gcc kernel-devel kernel-headers
2、禁止开源驱动
#修改/usr/lib/modprobe.d/dist-blacklist.conf文件,做如下操作:
添加blacklist nouveau
注释blacklist nvidiafb
3、重新建立文件
[root@localhost ~]# mv /boot/initramfs- ( u n a m e − r ) . i m g / b o o t / i n i t r a m f s − (uname -r).img /boot/initramfs- (uname−r).img/boot/initramfs−(uname -r).img.bak
[root@localhost ~]# dracut /boot/initramfs-$(uname -r).img $(uname -r)
[root@localhost ~]# reboot
4、安装驱动
[root@localhost]# init 3 #相当于关闭了x windows 这样才能安装驱动
#进入下载的显卡驱动所在的文件夹
[root@localhost ~]# chmod +x NVIDIA-Linux-x86_64-340.65.run
[root@localhost ~]# ./NVIDIA-Linux-x86_64-340.65.run
#一路确定,结束后reboot
5、验证安装
[root@host-1 ~]# nvidia-smi
1)到ati的官网(http://support.amd.com/us/gpudownload/Pages/index.aspx)下载相应的驱动,一定要注意 radeon系列和mobility radeon系列的区别。笔记本当然是Mobility Radeon。
2)备份原配置文件。
cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bk
3) 必须在命令行模式下安装驱动。
修改/etc/inittab文件,把init 5 修改成init 3,然后重启系统;或者以root身份登录系统后,输入命令:init 3,直接切换直命令行。
4)编译驱动。
cd到显卡驱动目录下。修改ati-XXXXXX.run的权限===> chmod 777 ati-XXXXXX.run
解压驱动文件到ati目录下–》 sh ati-XXXXXXXXXX.run --extract ati
编译相对应的驱动===》cd ati
=>sh /packages/RedHat/ati-packager.sh --buildpkg RHEL5
会生成一个RPM包。
这边要说明一下:编译驱动的时候要看自己的系统,命令"sh /packages/RedHat/ati-packager.sh --buildpkg RHEL5“,中的RedHat和RHEL5要根据自己的系统设置。我是centos,是redhat的再编译版,所以是这个参数。这一步要仔细研究研 究。
5) 卸载旧驱动,这步我没有做,我想试试不卸载能不能顺利安装,
6)安装第四步编译成的rpm包,=》 rpm -ivh fglrXXXXXXXX.rpm
7) aticonfig --initial --input=/etc/X11/xorg.conf 这步好像不是必须的。
8)重启,或者 》 init 5
9) 测试,》fglrxinfo
=====>glxgears
http://support.amd.com/en-us/download/desktop?os=Linux+x86
驱动解压后为.run文件,将此文件放在主目录下:
安装一些必要工具:
sudo apt-get install module-assistant build-essential dh-make libstdc++6 linux-headers-$(uname -r)
sudo apt-get remove fglrx*
sudo chmod +x amd*.run
(1)su 切换到root用户
(2)./amd*.run --keep 并开始安装显卡80驱动:
(3)在弹出的选项中,一直选择OK,如协议及安装方式保持默认,安装成功:
(4)安装完成后,输入:aticonfig --initial 命令,如能够正常运行,则安装成功
重新启动debian7系统,查看系统菜单项,可以看到增加了AMD控制选项:
打开AMD显卡控制设置程序,系统源中版本旧版本8.9与安装后的新驱动面板对比信息如下:
通过系统详细信息,可以看到,驱动已经很好识别显卡(作者的是双显卡):
最后可以通过glxgears,测试信驱动的性能;之前,安装的开源驱动后,测试集显HD6520G,在不锁定垂直扫描的情况下,只有200多fps;安装闭源驱动后,可看到系统达700fps以上,如下:
从某种意义上来说,Debian7比较适合安装闭源显卡驱动,因为它本身足够稳定,之前在ubuntu上尝试安装驱动,均以失败而告终,而Debian却成功了;如果你的显卡是AMD(ATI)的,且系统是Debian,那么值得一试。
如果安装驱动失败了,可以卸载掉错误驱动
cd /usr/share/ati/
sudo sh amd-uninstall.sh
并使用命令拨号上网,然后卸载:
sudo pppoeconf
sudo apt-get install fglrx*
来安装较旧版本的闭源驱动或者其它开源驱动,当然安装官方测试过的稳定闭源驱动前,你确定已经配置好non-free源以及电脑能够正常联网。