【Ubuntu】Ubuntu18.04通过重装系统成功安装显卡驱动
0. 前言
前面用了一天的时间来解决Ubuntu安装显卡驱动出现的用户输入密码登录后出现的紫屏、循环登录的问题,过程可阅读“【Ubuntu】Ubuntu系统启动过程中,输入用户名与密码后登录一直卡在紫色界面问题”,由于是公用机子,不明白出现问题的原因。最后还是放弃了,通过重装系统来解决这个问题。本文写于成功安装之后,所以可能没几张图供参考,请谅解。本文大部分参考[1].
基本环境: Ubuntu18.04,内核是5.0;显卡:英伟达RTX2080, 8G;主板:华硕(具体型号搞忘了)
1. 安装之前
在主板BIOS中BOOT选项中关闭Security Boot,这点很重要。设置U盘为第一启动项等等,跟安装Windows类似,不懂的朋友可自行百度。当然还得制作U盘启动盘,使用UltraISO,打开镜像后,选择写入硬盘映像。
2.安装
(1)按下电源键后,进入Ubuntu安装界面,在Install Ubuntu选项上,按e,进入命令行模式,然后在quiet slash -- 后面(也可能没有 – ),添加以下内容,然后按F10重新引导。
acpi_osi=linux nomodeset
其实这条命令是暂时禁用nouveau开源显卡驱动程序,这一步在很多博客中没有提到。根据大多博客所述,出现紫屏或循环登录的原因是Ubuntu自带的开源显卡驱动nouveau与N卡驱动之间相互竞争“显示”的权力,故卸载N卡驱动后,能正常进入系统,一装上,又紫屏、循环登录等。
重新引导之后,你可能会发现,安装的窗口有一部分屏幕下方,导致部分按钮无法点击。此时,按下Alt+F7,鼠标会变成手指图标,即将窗口向上拖动即可。安装完成,重启。
(2)正常进入安装好的系统。刚只是暂时禁用nouveau,[1] 并没有使用 sudo vi /etc/default/grub 修改引导,很多博客提及需要修改里面一些东西,[1]直接在使用系统提供的‘软件和更新’进行驱动的安装,我的做法参考了[2]:
<1> ubuntu-drivers devices # 检测你的NVIDIA显卡型号和推荐的驱动程序的模型
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001180sv00001458sd0000353Cbc03sc00i00
vendor : NVIDIA Corporation
model : GK104 [GeForce GTX 680]
driver : nvidia-304 - distro non-free
driver : nvidia-340 - distro non-free
driver : nvidia-384 - distro non-free recommended
driver : xserver-xorg-video-nouveau - distro free builtin == cpu-microcode.py ==
driver : intel-microcode - distro free
<2> sudo ubuntu-drivers autoinstall1 # 忘了后面有没有1了
上述命令安装完之后,重启即安装成功。最后安装的是440的驱动。在这个过程中学到了一些知识:
sudo vi /etc/default/grub # 打开引导界面,可以更改引导的设置,因为该文件是只读,所以退出方式为:esc后,输入:wq!,!表示强制的意思。
sudo vi /etc/default/grub.cfg #grub.cfg直接对引导产生影响, 由命令 sudo update-cfg 可自动生成grub.cfg,如果只修改grub.cfg,不改grub,但是不update-grub的话,也可影响引导
sudo update-grub # 自动生成grub.cfg
参考
[1] https://www.linuxidc.com/Linux/2019-02/157171.htm
[2] https://www.linuxidc.com/Linux/2019-02/157170.htm
【Ubuntu】Ubuntu18.04通过重装系统成功安装显卡驱动的更多相关文章
- nvidia gtx1050在kali linux系统下安装显卡驱动,且可以使用x-setting切换显卡
转自:https://www.zzhsec.com/255.html 1.更换源[使用中科大或者官方源都可以] 下面使用中科大的源 root@Andy:/home/dnt# vi /etc/apt/s ...
- 在ubuntu 14.04 64位系统上安装32位库
转自:http://www.enjoydiy.com/2937.html 有些软件还是依赖32位的库,但是64位的系统已经成为现在的主流.以前的ubuntu可以通过下面的命令安装: ...
- 从零到一,利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernetes v1.10.0
说明 初步接触kubernets,记录学习过程 本教程目的利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernets v1.10.0 环境信息 节点IP地址 角色 ...
- ubuntu18.04 lts重装VMware Tools实现主机文件共享等功能
ubuntu18.04 lts重装VMware Tools实现主机文件共享等功能 在VMWare 14.x上安装ubunuu18.04 lts后发现,可以实现全屏显示,但是没有与主机共享文件的功能,然 ...
- 在Ubuntu18.04.2LTS上使用wine安装qq,微信,迅雷,百度网盘,网易云音乐等软件
在Ubuntu18.04.2LTS上使用wine安装qq,微信,迅雷,百度网盘,网易云音乐等软件 一.前言 在Linux上办公有一点一直是大家的痛,那就是这些系统上没有我们常用的一些软件,比如QQ,微 ...
- Ubuntu 16.04 + GTX970 + cuda8.0.44安装配置等问题(转)
参考:https://blog.csdn.net/u010094199/article/details/54380086 参考:https://blog.csdn.net/jonms/article/ ...
- Ubuntu18.04+windows10双系统时间同步教程
前言: 系统安装windows10和Ubuntu18.04双系统后会出现时间不同步的情况,往往windows系统的时间会有错误,一般会有8个小时的误差. 原因: 主要因为本地时间与硬件时间的时差: 本 ...
- 在 Ubuntu 12.04 上通过源码安装 Open vSwitch (OVS)
安装 Ubuntu 12.04, 而且更新系统 apt-getupdate; apt-getupgrade; 安装所需的package apt-get install automake autocon ...
- Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用【转】
本文转载自:http://www.linuxdiyf.com/linux/24086.html Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用 发布时间:2016-09 ...
随机推荐
- codeforce 272B Dima and Sequence
B. Dima and Sequence Dima got into number sequences. Now he's got sequence a1, a2, ..., an, consisti ...
- 图论--最小生成树--Kruscal 模板
#include<iostream> #include<queue> #include<algorithm> #include<set> #includ ...
- Java方法重写
重写override 为什么要重写方法呢? 1:当父类中的方法无法满足子类需求时候,重写方法 2:当子类需要有特有的功能时候,重写方法. Java方法重载:在同一类中,出现多个方法名相同的方法,但是参 ...
- 线段树 逆序对 Minimum Inversion Number HDU - 1394 Laptop
Minimum Inversion Number HDU - 1394 求最小反转数,就是求最少的逆序对. 逆序对怎么求,就是先把所有的数都初始化为0,然后按照顺序放入数字,放入数字前查询从这个数往后 ...
- INotifyPropertyChanged接口
INotifyPropertyChanged 接口用于通知客户端,通常执行绑定的客户端,属性值已更改. 例如,考虑 Person 具有一个名为属性对象 FirstName. 若要提供通用的属性更改通知 ...
- CC2530ADC应用
ADC单通道外部电压采集 需要设置一个上机位命令控制字符. 系统时钟初始化——32MHZ晶振 串口0函数初始化——设置串口对应引脚,波特率,清楚中断标志 串口0接收中断响应函数——U0DBUF将控制命 ...
- kafka学习 之 Quickstart
第一步:安装启动kafka 官网链接:https://www.apache.org/dyn/closer.cgi?path=/kafka/2.3.0/kafka_2.11-2.3.0.tgz 进入指定 ...
- 201771010113 李婷华 《面向对象程序设计(Java)》第十六周总结
一.理论知识部分 1.程序是一段静态的代码,它应用程序执行蓝 是一段静态的代码,它应用程序执行蓝 是一段静态的代码,它应用程序执行蓝本. 2.进程是程序的一次动态执行,它对应了从代码加载.执行至执行完 ...
- Qt线程池
说明 Qt中可以有多种使用线程的方式: 继承 QThread,重写 run() 接口: 使用 moveToThread() 方法将 QObject 子类移至线程中,内部的所有使用信号槽的槽函数均在线程 ...
- 推荐算法_CIKM-2019-AnalytiCup 冠军源码解读_2
最近在为机器学习结合推荐算法的优化方法和数据来源想办法.抱着学习的态度继续解读19-AnalytiCup的冠军源码. 第一部分itemcf解读的连接:https://www.cnblogs.com/m ...