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通过重装系统成功安装显卡驱动的更多相关文章

  1. nvidia gtx1050在kali linux系统下安装显卡驱动,且可以使用x-setting切换显卡

    转自:https://www.zzhsec.com/255.html 1.更换源[使用中科大或者官方源都可以] 下面使用中科大的源 root@Andy:/home/dnt# vi /etc/apt/s ...

  2. 在ubuntu 14.04 64位系统上安装32位库

    转自:http://www.enjoydiy.com/2937.html 有些软件还是依赖32位的库,但是64位的系统已经成为现在的主流.以前的ubuntu可以通过下面的命令安装:           ...

  3. 从零到一,利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernetes v1.10.0

    说明 初步接触kubernets,记录学习过程 本教程目的利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernets v1.10.0 环境信息 节点IP地址 角色 ...

  4. ubuntu18.04 lts重装VMware Tools实现主机文件共享等功能

    ubuntu18.04 lts重装VMware Tools实现主机文件共享等功能 在VMWare 14.x上安装ubunuu18.04 lts后发现,可以实现全屏显示,但是没有与主机共享文件的功能,然 ...

  5. 在Ubuntu18.04.2LTS上使用wine安装qq,微信,迅雷,百度网盘,网易云音乐等软件

    在Ubuntu18.04.2LTS上使用wine安装qq,微信,迅雷,百度网盘,网易云音乐等软件 一.前言 在Linux上办公有一点一直是大家的痛,那就是这些系统上没有我们常用的一些软件,比如QQ,微 ...

  6. Ubuntu 16.04 + GTX970 + cuda8.0.44安装配置等问题(转)

    参考:https://blog.csdn.net/u010094199/article/details/54380086 参考:https://blog.csdn.net/jonms/article/ ...

  7. Ubuntu18.04+windows10双系统时间同步教程

    前言: 系统安装windows10和Ubuntu18.04双系统后会出现时间不同步的情况,往往windows系统的时间会有错误,一般会有8个小时的误差. 原因: 主要因为本地时间与硬件时间的时差: 本 ...

  8. 在 Ubuntu 12.04 上通过源码安装 Open vSwitch (OVS)

    安装 Ubuntu 12.04, 而且更新系统 apt-getupdate; apt-getupgrade; 安装所需的package apt-get install automake autocon ...

  9. Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用【转】

    本文转载自:http://www.linuxdiyf.com/linux/24086.html Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用 发布时间:2016-09 ...

随机推荐

  1. cms 环境搭建

    一 :安装 JDK: 1.在根目录下新建目录 JDK 2.通过 xftp 导入 jdk 压缩包到 JDK 目录中 jdk-8u144-linux-x64.tar.gz,解压 tar -zxvf jdk ...

  2. Nginx模块开发(4)————使用subrequest访问第三方服务

    该模块可以完成如下的功能,当我们输入http://你的ip/lcw?s_sh000001时,会使用subrequest方式得到新浪服务器上的上证指数,代码如下: //start from the ve ...

  3. 集训模拟赛-1-T2

    好了不要在铺垫了直接整吧就 题目拿来!!!!!!! 倒水 (water) (256MB,1s) [问题描述] 你有一个水桶(记为 0),两个杯子(记为 1,2).水桶中的水量无限,容量也无限.1 号杯 ...

  4. xml出现Exception in thread "main" java.lang.NullPointerException

    运行代码出现Exception in thread "main" java.lang.NullPointerException 可以看下这个链接:https://ask.csdn. ...

  5. 学习Vue第二节,v-cloak,v-text,v-html,v-bind,v-on使用

    v-cloak,v-text,v-html,v-bind,v-on使用 <!DOCTYPE html> <html> <head> <meta charset ...

  6. 线段树的区间合并 B - LCIS

    B - LCIS HDU - 3308 这个是一个很简单很明显的线段树的区间合并,不过区间合并的题目都还是有点难写,建议存个板子. #include <cstdio> #include & ...

  7. Git使用教程之SSH连接方式配置(二)

    什么是GitHub?这个网站就是提供Git仓库托管服务的. 什么是SSH Key?你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,大白话理解就是这两个仓库如果要进行远程同步,则我们需 ...

  8. [hdu5253] 最小生成树,Kruskal

    题意:有n*m个单位的农田,给定每个单位农田地势高低,现在需要灌溉所有农田,如果把水引入相邻的农田里需要的管道长度为两者的高度差.求最少的管道长度花费. 思路:比较明显的最小生成树问题,相邻两点之间连 ...

  9. CODING 敏捷实战系列课第四讲:从头搭建持续集成 DevOps 流水线

    <从头搭建持续集成 DevOps 流水线>由资深敏捷教练.极限编程学院高级讲师.CODING 特邀敏捷顾问李小波老师主讲,将基于 CODING 展示如何编写 Jenkinsfile 搭建 ...

  10. es6中class类的全方面理解

    传统的javascript中只有对象,没有类的概念.它是基于原型的面向对象语言.原型对象特点就是将自身的属性共享给新对象.这样的写法相对于其它传统面向对象语言来讲,很有一种独树一帜的感脚!非常容易让人 ...