看这篇就够了——ubuntu扩展屏幕及装显卡驱动后黑屏问题

news2024/11/17 13:54:51

1.问题说明

首先说明为什么外接屏幕需要装显卡驱动,显卡由GPU和显存构成,又称为显示适配器,与数据的输出有密切关系。

在ubuntu系统中,外接显示器是用的独立显卡驱动,而内置屏幕用的是集显驱动,也正是因为调用显卡的不同,产生了黑屏幕的现象。也就是说你的电脑不管哪个屏幕会不亮,都是因为独显与集显驱动之间的冲突或不适配。

网上各种各样的方法和讨论十分混杂,这里我将我所遇到的坑记录一下。

2.准备操作

为了避免后面不必要的麻烦,将会采取如下操作

2.1 更换源

1、打开源文件
sudo chmod 666 /etc/apt/sources.list
sudo gedit /etc/apt/sources.list
2、把以下内容复制
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
 
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
3、更新
sudo apt update 
sudo apt upgrade

2.2安装依赖

sudo apt-get update   #更新软件列表
sudo apt-get install g++
sudo apt-get install gcc
sudo apt-get install make
sudo apt-get install build-essential
sudo apt-get install libc6-dev

2.3 禁用nouveau

#打开文件,
sudo gedit /etc/modprobe.d/blacklist.conf  
#在最后添加如下两行:
blacklist nouveau

options nouveau modeset=0

#然后更新设置
sudo update-initramfs -u  
随后输入以下命令,若无输出则成功
lsmod | grep nouveau

2.4 更换图形化界面

更换图像化界面是因为lightdm比gdm3的兼容性大

sudo apt-get install lightdm
sudo dpkg-reconfigure lightdm

3. 驱动安装

          目前网上常见的驱动安装方法有三类,我称之为全自动、半手动和全手动,这一步先将显卡驱动安装上,先不考虑黑屏问题。

3.1全自动

全自动安装是使用ubuntu自带的"软件和更新",安装完成之后重启。

3.2半手动

ubuntu-drivers devices  #查看适合本显卡的驱动
sudo apt-get install nvidia-430

3.3全手动

https://www.nvidia.com/Download/index.aspx?lang=en-us

首先用上面的网站自己选驱动

1.停图形化显示,进入文字命令行
sudo service lightdm stop 

2. 删除已安装的显卡驱动
sudo apt-get remove --purge nvidia*   
切勿使用这句sudo apt-get autoremove

3. 修改显卡驱动文件的权限
sudo chmod  a+x NVIDIA-Linux-x86_64-396.18.run

4. 安装显卡驱动
sudo ./NVIDIA-Linux-x86_64-470.57.02.run -no-x-check -no-nouveau-check -no-opengl-files 
一直按yes,最后一个-X也按yes.如果选择no,内置屏幕正常,但外接屏不能使用。

上面不管那种方法安装完,都需要重启。

4. 黑屏处理

不管使用上面哪种方法,都可能会出现黑屏的现象,左上方有一个小短白线一直在闪,进不到图形化界面。可以输入nvidia-smi测试显卡驱动是否安装成功。

如果身边有外接显示器可以插上试一下,会发现外接显示器是能够正常使用的。这是因为安装显卡驱动后,独立显卡的显示配置把之前的显示配置替换了。这时其实只需要覆盖 /etc/X11/xorg.conf

cd /etc/X11
sudo rm xorg.conf
sudo cp xorg.conf.nvidia-xconfig-original xorg.conf
reboot

这个配置文件重启后,电脑内置屏幕就可以进入图形化界面了,但外接显示屏是不能用的。如果没有外接显示器需求的小伙伴们就可以结束了。

5. 双屏幕

5.1首先查看系统是否能检测到屏幕

如果检测不到需要检查接口驱动问题

xrandr

5.2 查看nvidia-setting设置

sudo apt-get install nvidia-settings
nvidia-settings

若显示中没有出现X server Display Configuration,可能需要考虑重新安装一个驱动。

在配置界面左侧选择“X Server Display Configuration”,然在屏幕右方的“layout”中能看到两个类似显示器的方框,点击方框中有“disable”的方框,再点击“configuration”,选择“TwinView”,点击“确定”,然后点击“Apply”,最后点击“Save to X Configuration file”,点击保存。

5.3 亮度问题

如果顺利的话,会显示出两个屏幕,但会出现亮度无法调节的情况。这是因为亮度的控制是由集成显卡控制的,出现了冲突情况。这时需要重启进入bios中将显卡模式调成独显模式。再进入系统,一切变为正常。

6.总结

总之,整个过程与自己电脑显卡型号,驱动包型号和ubuntu版本都有关系。如果顺利选择一个好的驱动包,什么不需要调整就可以双屏幕显示。一个不适合的显卡驱动,需要花费很大力气才能实现双屏显示。

但是针对只需要电脑内置屏的朋友,只需要把xorg.conf文件覆盖即可。

根据我个人的情况推荐使用ubuntu自带的全自动显卡驱动安装,比较方便,如果一个包不合适,再多试几个其他版本的。博主本人也是是了第三个才成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/192476.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Day01-数据分析图鉴

文章目录Day01-数据分析图鉴一、 数据分析是什么?二、为什么数据分析这么火?三、数据分析的行业现状如何?四、对工作经验要求高吗?五、工资情况六、学完数据分析的效果?1、Python可视化2、TableauDay01-数据分析图鉴 …

Maven打包时出现Process terminated错误

Maven打包时出现Process terminated错误检查maven的配置文件多引入了一次控制器编码错误切点表达式错误用maven打包时出现Process terminated样式的错误,报错如下:查看报错信息 检查maven的配置文件 多引入了一次控制器 注释掉多余的 编码错误 File e…

软件设计质量(一)容错设计

出现非预期错误的原因解决方案原理介绍断根原理原理:将可能造成人错误的原因/条件从根本上排除断绝掉。通过冗余设计,屏蔽掉其中9种错误的方式;案例:USB的SD卡防写开关。4种可能性断根设计为只有1种可能是正确的。软件设计&#x…

【JavaEE初阶】第十节.多线程 (基础篇 ) 线程池(案例四)

文章目录 前言 一、线程池概述 二、线程池的使用方式 2.1 Java标准库中 线程池的使用 2.2 自己动手来模拟实现一个线程池 总结 前言 本篇文章将介绍多线程案例 —— 线程池,这也是一个非常有用的案例 在之前已经介绍过,进程本身已经能做到并发编…

HTTP错误响应码

4XX客户端错误 400 bad request 服务端认为客户端出现了错误,但是不能准确判断是哪种错误401 用户认证信息缺失或者不准确403 服务器理解请求,但是没有权限处理404 not found 服务器没有找到资源405 method not allowed 服务器不支持请求中的method方法…

VSCode加上dotnet7.0来创建开发,vs和vscode创建方法,命令创建和扩展方法创建区别,以及扩展推荐

吐槽一波: .net7出来第二天开始学习,前端vue3ts写法也得学 总监让熟悉一个星期新版本语言就动手开发,还要写前端,再带一个应届生开发,前端跑了我还得顶上, 天天催,天天问我进度怎么样&#xff0…

使用nginx给Nacos集群配置负载均衡

使用nginx的upstream模块进行负载第一、不想要加访问路径配置首先配置的时候需要把nacos配置的访问路径删除vim application.properties重新启动nacos 三个节点都配置一样的vim /etc/nginx/conf.d/default.conf 然后编写nginx的配置文件Nginx服务器ip 192.168.11.154upstream n…

SimCLS: A Simple Framework forContrastive Learning of Abstractive Summarization

论文 代码 摘要 本文提出了一个概念上简单但是强大的抽象摘要框架,SimCLS。它通过对比学习的方式,缓解了Seq2Seq框架固有的目标函数和评价指标不一致的问题,从而可以从模型生成的候选摘要中筛选出真实的评价指标(ROUGE)打分更高的摘要。将…

2023 中科院《国际期刊预警名单》发布,28 本学术期刊有风险,2区期刊14本,有哪些信息值得关注?

2023年1月31日,中国科学院文献情报中心终于发布了2023年《国际期刊预警名单(试行)》! 名单分析: 与往年相比,今年的预警期刊名单变动还是相当大的 1. 生物学和数学期刊全部“洗白”,医学期刊…

Docker 安装可视化管理工具Portainer

简介Portainer是Docker 的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理…

测试工程师笔试题整理01

来源: https://vt.quark.cn/blm/quark-doc-ssr-293/preview?idC2946438A278541B6C1284E5C22269AB 难度:⭐(简单) 一、基础题 1、对于软件测试描述正确的是 (目的是尽可能多的发现程序的错误)(2) 2、软件测试的对象包括(源程序…

解析Linux DMA mapping机制

说明: Kernel版本:4.14ARM64处理器,Contex-A53,双核使用工具:Source Insight 3.5, Visio 1. 概述 DMA(Direct Memory Access):直接存储器访问;先看问题的引入…

OpenWrt之IPTV双线融合教程

文章目录前言OpenWrt版本1. 让路由与光猫互通2. 设置Vlan3. 配置接口4. 配置路由表5. 播放测试后话前言 前段时间开始, 电信就开始整理单播源传播的乱象, 就限制了非内网无法打开直播源, 于是只能搞搞双线融合了, 让我的RTSP源重新焕发生机 OpenWrt版本 22.02 1. 让路由与光猫…

【docker概念和实践 5】(1) 容器数据卷

一、说明 本文的主要内容 什么是数据卷如何生成数据卷将数据卷挂在容器上多容器如何共享数据卷什么是绑定挂载二、数据卷概念 2.1 数据长久保存的要求 在容器运行时,容器内有一个数据存储空间,但是当容器关闭后,这个存储空间内容将被丢失&…

PYTHON官方教程:Python3.11中文版文档

Python 每年都会发布新版本,上半年是功能锁定的测试版,年底是最终版本。 Python 3.11 的特性集刚刚定稿,测试版本已经发布,开发人员在非生产代码上可以尝试使用这个最新版本,验证它能否在你的程序中工作,并…

小白入门pwn笔记--elf文件概述

笔记是根据哔哩哔哩视频所写2、ELF文件概述_哔哩哔哩_bilibili第一集看过大概,很久之前安装过一些工具,所以直接从第二集开始看,遇到没有安装的工具再安装。从今天开始入坑pwn0.pwn的简单介绍exploit:用于攻击的脚本与方案。paylo…

一、代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素。

数组基础理论数组是存放在连续内存空间上的相同类型数据的集合。数组下标都是从0开始的。数组内存空间的地址是连续的正是因为数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址。数组的元素是不能删的&…

关于CADC数据集的处理笔记

简要介绍 数据集 Canadian Adverse Driving Conditions Dataset(CADC)是全球首个针对寒冷环境的自动驾驶数据集,其内包含: 56,000 张相机图像;7,000 次 LiDAR 扫描;75 个场景,每个场景 50-100…

Vue中作用域插槽solt详解

作用域插槽插槽可以实现父子组件通信(通信的结构)默认插槽具名插槽作用域插槽:子组件的数据来源于父组件,子组件是决定不了自身结构与外观的直接上代码&#xff01;&#xff01;父组件&#xff1a;<template><div><h2>效果一: 显示TODO列表时, 已完成的TODO为…

蓝桥杯STM32G431RBT6学习——M24C02

蓝桥杯STM32G431RBT6学习——M24C02 前言 IIC是单片机的通用协议&#xff0c;在蓝桥杯单片机、嵌入式中都是考点。国信长天开发板板载M24C02&#xff08;IIC驱动&#xff09;作为调电存储模块&#xff0c;可以通过IIC对其写入数据后&#xff0c;掉电进行保存以供读取。其硬件…