ubuntu Debian deepin 显卡安装和黑屏 卡死解决办法

 

硬件型号

命令查询,终端执行:

lspci |grep -i 'VGA'    #查看默认集成显卡型号
lspci |grep -i nvidia  #查看NVIDIA类型的显卡型号
sudo dmesg | grep -i 'VGA'  #通过查看开机信息获取显卡信息

硬件温度

ATI显卡

需要安装闭源显卡驱动,然后终端执行:

sudo aticonfig --odgt

NVIDIA显卡

需要安装闭源显卡驱动,然后终端执行:

sudo nvidia-settings -q GPUCoreTemp -t

安装闭源驱动

注意:

1、Linux系统安装完成后,就会默认启用内核自带的开源驱动,开源驱动虽然性能不如闭源驱动,但是兼容性和稳定性较为优秀。

2、如果系统没有问题,不建议安装闭源驱动。

ATI显卡

安装

由于ATI显卡的闭源驱动更新较慢,建议安装源内的版本,不建议安装ATI官方提供的版本。

命令自动安装

安装源内版本,终端执行:

sudo apt-get install fglrx-driver  #安装驱动包

卸载

命令卸载,终端执行(如果开机无法进入X,就进入TTY执行命令):

sudo apt-get purge fglrx* glx-alternative-fglrx libgl1-fglrx* #删除驱动包

NVIDIA显卡

安装

1) 命令自动安装

安装源内版本,终端执行:

sudo apt-get install nvidia-driver #安装驱动包

如果以上命令不能正常安装驱动,请终端执行:

ubuntu-drivers list  #检测合适的驱动包

然后使用如下命令安装对应的驱动包,例如检测的结果为nvidia-legacy-340xx-driver

sudo apt-get install  nvidia-legacy-340xx-driver #安装驱动包

2) 手动安装

注意:安装英伟达官方.run驱动很有可能出现问题,建议使用源内版本,请斟酌。

浏览器访问NVIDIA官网,下载与你硬件相符合的闭源驱动安装文件,并且把驱动安装文件放到你的家目录下(例如驱动文件为“NVIDIA-Linux-x86_64-352.55.run”)。

然后按下快捷键“Ctrl+Alt+F2”,进入tty2,然后登录系统,执行如下命令:

先停止lightdm服务

sudo systemctl stop lightdm #关闭登录管理器服务

如果安装有驱动建议先卸载掉旧版驱动

sudo apt-get remove --purge nvidia* 

如果之前使用的是nouveau就禁用nouveau

echo 'blacklist nouveau'|sudo tee -a /etc/modprobe.d/nvidia-blacklists-nouveau.conf
sudo update-initramfs -u 

然后安装英伟达官方驱动

chmod u+x NVIDIA-Linux-x86_64-352.55.run #赋予可执行权限
sudo ./NVIDIA-Linux-x86_64-352.55.run #安装驱动文件

安装过程中可能出现假死情况,请耐心等待。 安装完成后重启 如果没有出现图形界面请尝试

sudo systemctl start lightdm

卸载

如果为命令自动安装,终端执行如下命令可卸载:

sudo apt-get remove nvidia-driver nvidia-kernel-dkms glx-alternative-nvidia

如果为手动安装,终端执行如下命令可卸载:

sudo nvidia-uninstall
sudo nvidia-installer --uninstall

双显卡

目前显卡厂商对Linux平台支持不力,双显卡一直是Linux下难题。

但最新信息,NVIDIA开始支持Linux平台的双显卡技术!

Intel & ATI

关闭独显

方法一:

开机时,依据屏幕提示进主板设置,将独显设置为不启用。

方法二:

在linux3.06下切换显卡的模块仍然处于调试状态,首先就要加载这些模块

sudo mount -t debugfs debugfs /sys/kernel/debug

然后

sudo cat /sys/kernel/debug/vgaswitcheroo/switch

查看是否可以进行显卡切换,正常的输出类似于:

0:DIS: : Pwr:0000:01:00.0
1:IGD:+:Pwr:0000:00:02.0

这里Off表示电源已经关闭,Pwr表示正在运转。

如果没有任何输出,那就很抱歉,这种方法不管用了,可能是linux内核过旧 切换命令

echo DDIS > sudo /sys/kernel/debug/vgaswitcheroo/switch       #用来切换到独立显卡
echo DIGD > sudo /sys/kernel/debug/vgaswitcheroo/switch       #用来切换到集成显卡
echo OFF > sudo /sys/kernel/debug/vgaswitcheroo/switch        #这个命令是用来关闭不用的显卡电源
echo ON > sudo /sys/kernel/debug/vgaswitcheroo/switch         #这个是用来重新开启关闭的显卡电源

一般情况下,如果要禁用独立显卡,我们就执行第三条命令

echo OFF > sudo /sys/kernel/debug/vgaswitcheroo/switch

可以再看一下/sys/kernel/debug/vgaswitcheroo/switch这个文件的状态

sudo cat /sys/kernel/debug/vgaswitcheroo/switch

如果输出结果是

0:DIS: :Off:0000:01:00.0
1:IGD:+:Pwr:0000:00:02.0

那就表明成功了。(这里Off表示电源已经关闭,Pwr表示正在运转。)

至此大功告成,可以在rc.local里面加上( sudo gedit /etc/rc.local #编辑rc.local文件)

sudo mount -t debugfs debugfs /sys/kernel/debug
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch

注意:rc.local文件中的exit 0必须在文件最后。

以后每次开机就自动关闭不用的显卡和关闭不用显卡的电源了。

方法三

获取权限;终端执行:

sudo -s

(1)切换到集成显卡;

echo IGD > /sys/kernel/debug/vgaswitcheroo/switch

(2)关闭没有连接的显卡;

echo OFF > /sys/kernel/debug/vgaswitcheroo/switch

验证一下

cat /sys/kernel/debug/vgaswitcheroo/switch

输出:

1:IGD:+:Pwr:0000:00:02.0
0:DIS: :Off:0000:01:00.0

off表示独立显卡关闭

可以添加(1)(2)两句代码进/etc/rc.local里的exit 0之前,保存。可以在开机时自动禁用独立显卡。

Intel & NVIDIA

关闭独显

开机时,依据屏幕提示进主板设置,将独显设置为不启用。

独显切换

安装第三方的Bumblebee程序,可实现NVIDIA Optimus,终端中执行:

sudo apt-get install bumblebee-nvidia primus #安装Bumblebee-nvidia(适用于闭源驱动),其中primus可选,用于提升性能
sudo apt-get install bumblebee primus #安装Bumblebee(适用于开源驱动)
sudo update-glx --config glx #切换显卡的工作模式 选择的配置


注意 16年以后的新笔记本可能存在重新启用独显以后,造成系统冻结。

可以查看bumblebee的讨论linux bug讨论

解决方法是在grub中给内核添加参数来防止系统出现冻结。

acpi_osi=! acpi_osi="Windows 2009"

安装完毕后重启电脑使Bumblebee生效,但是Bumblebee并不能做到集显(Intel显卡)和独显(NVIDIA显卡)之间的自动切换。系统运行时会默认使用集成显卡(Intel显卡),当你需要使用独显(NVIDIA显卡)运行某个程序或游戏时候,终端执行如下命令即可:

optirun command #使用独显运行command程序

optirun -b primus command #使用独显运行command程序,提升性能

Linux使用GRUB增添内核参数的方法

如果你在使用GRUB引导装载程序,想修改或添加内核参数,你可以编辑GRUB配置文件。下面是针对特定发行版在GRUB的配置文件中添加内核启动参数的方法。

  在Debian或Ubuntu上添加内核启动参数在基于Debian的系统上,如果你想在系统启动时添加内核参数,你可以编辑 /etc/default/grub 目录下的GRUB配置模板。在 GRUB_CMDLINE_LINUX_DEFAULT 变量中以

acpi_osi=! acpi_osi="Windows 2009"

” 的格式添加内核参数。

  $ sudo  vi  /etc/default/grub 

按Ctrl+c 退出 y保存

注意 :里面的有时候文字需要手动添加 ,

  然后运行下面的命令来生成一个GRUB的配置文件。

  $ sudo update-grub 如果无法找到 update-grub 命令,你可以通过下面的命令安装它。

  $ sudo apt-get install grub2-common 在Fedora上添加内核启动参数在Fedora上,想要在启动时添加内核参数,你可以编辑 /etc/default/grub目录下的 GRUB 配置模板。在 GRUB_CMDLINE_LINUX 变量中以 “name=value” 的格式添加内核参数。

  $ sudo -e /etc/default/grub GRUB_CMDLINE_LINUX=‘。。。。。。acpi_osi=! acpi_osi="Windows 2009“  ’

  然后运行下面的命令生成 GRUB2 配置文件。

  $ sudo grub2-mkconfig -o /boot/grub2/grub.cfg 在CentOS上添加内核启动参数在CentOS上,想要在启动时添加内核参数,你可以直接编辑GRUB配置文件 /boot/grub/grub.conf。在配置文件中,找到描述默认使用的Linux映像的条目。文件中最顶行的字符串 “default=N”会指示哪一个条目是默认的映像。

 

常见问题

如果安装闭源驱动后,出现类似开机动画消失、分辨率异常、电脑温度大幅度上升,大都为闭源驱动的副作用,建议卸载闭源驱动。

自行下载官网的闭源驱动,更新闭源新版驱动,会随机出现的严重vlinuz启动内核编译失败,导致系统无法引导至图形界面,而且即使编译成功,也并不能保证与闭源驱动版本号准确对应,同样会造成系统无法引导至图形界面。使用“附加驱动”内提供的闭源驱动相对安全一些,风险也较低。

解决办法

一旦发生驱动兼容性故障,在能够进入图形界面的情况使用“附加驱动”更换列表中的其他驱动即可,重启后安装生效。只能进入恢复模式,使用命令:

sudo apt-get autoremove --purge nvidia-*

按下“Enter”键执行,稍等一分钟左右,配置不同,等待时长不同,系统会移除有关驱动程序安装文件和相关配置文件,重启后恢复默认的图形驱动和配置。

最后使用命令:

sudo reboot
posted @ 2018-01-28 10:17  石门  阅读(7910)  评论(0编辑  收藏  举报