Ubuntu系统---Ubuntu16.04进不了界面(登录界面循环,密码正确)

                                             Ubuntu16.04进不了界面(登录界面循环,密码正确)

目录

第一步,查问题的原因

(1)搜罗一下网上的回答

(2)查找问题

(3)问题描述

(4)百度问题的解决方式

(5)确定问题的原因

第二步,解决问题---卸载原有的驱动

第三步,一体化安装(CUDA +NVIDIA驱动)+ cuDNN

扫描二维码关注公众号,回复: 6930530 查看本文章

第四步,其他备注

正文

说明:

上次是:Ubuntu 系统循环登陆界面,密码帐号不可操作,键盘鼠标无效。

这次是:ubuntu循环登录,密码帐号都是对的,就是登不进去,一闪又回到登录界面,可以进入tty1界面帐号和密码都能用,就是图形界面登不进去。

第一步,查问题的原因

最后,是 按驱动的原因 解决。

(1)搜罗一下网上的回答

  Ubuntu 16.04 默认使用的是集显,而且对Nvidia的支持存在巨大的问题。@https://www.jianshu.com/p/85cbb0258d32

 

  nvidia显卡对linux系统一直不是很友好。在众多的桌面发行版上,安装nvidia独立显卡驱动后总是出现各种各样的与集成显卡,不兼容的问题。@https://blog.csdn.net/u012058778/article/details/88530874

 

  “之前试过几个方法都不行,包括改 /etc/profile,startx,删Xauthority文件等,这些都是因为,形象地来说是药不对症,ubuntu循环登录是有很多个问题造成 的,前面的这些例子只是针对他们自己的问题,你的问题却并不是出在这里。所以我们要看自己的问题出在哪里。当然如果你有记录之前在ubuntu上做了什么 更改就好了,就把它改回来就行,比如刚安装的包把它卸了之类的。”@https://blog.csdn.net/mangobar/article/details/82218807

  当然“Ubuntu 系统循环登陆login loop”的原因不止这些,有时候/etc/profile中改了或者加了些东西导致这些古怪的问题,所以我们需要对症下药。正确的做法是要先去查看主目录下.xsession-errors日志的报错信息,从而去判断原因。与小主有类似的经过,“开在启动界面的事情我第一次装Ubuntu也是遇到过,我知道是显卡驱动的问题,”@https://www.jianshu.com/p/e1f1a1faa867

(2)查找问题

1.ctrl+alt+F2,出现一个界面,输入自己的login和密码,登录

2.登录之后,运行:ls -a

3.可以看到会有一个.xsession-errors的文件

4.打开这个文件,运行:vim .xession-errors

@https://blog.csdn.net/mangobar/article/details/82218807

(3)问题描述

   Ubuntu16.04安装nvidia显卡驱动后卡在登陆界面循环登陆,查看~/.xession-errors文件,显示:

 X Error of failed request: BadValue (integer parameter out of range for operation)
    Major opcode of failed request: 154 (GLX)
    Minor opcode of failed request: 3 (X_GLXCreateContext)
    Value in failed request: 0x0
    Serial number of failed request: 32
    Current serial number in output stream: 33
    openConnection: connect: No such file or directory
    cannot connect to brltty at :0

@http://www.luyixian.cn/news_show_36539.aspx https://bbs.archlinux.org/viewtopic.php?id=195435问题描述一样,按此方法没解决。

(4)百度问题的解决方式

  直接看第一行,去网页里搜这个问题“X Error of failed request: BadValue (integer parameter out of range for operation)”的解决方式。

(5)定问题的原因

  多数说是驱动的问题。额...怎么又是驱动的问题,这次不想“用重装系统重装驱动”来解决问题了。

第二步,卸载原有的驱动。

ALT+CTRL+F2进入命令行模式:

卸载英伟达驱动并重启

sudo apt-get remove --purge nvidia-*

sudo apt-get autoremove #重要,删除安装的nvidia相关一切程序,并不保留配置文件

sudo apt-get install -f #重要,把安装时添加的相关依赖包全删了

sudo reboot

第三步,一体化安装(CUDA +NVIDIA驱动)+ cuDNN

  先安装NVIDIA驱动再暗转CUDA,一定要注意两者版本的对应要求问题。

  换一种方式,直接在CUDA安装过程中安装NVIDIA驱动,注意先查看电脑配置支持的CUDA版本,然后下载好安装包。

(1)下载CUDA安装包

  系统没出问题之前,已经下载好了,放在/home/u/setup/文件夹下了。此步骤,略过。

  系统没出问题之前,下载的安装包没有保存的话,需要找一下如何在线获取安装包进行安装了。

(2)禁用系统自带的nouveau驱动

       系统没出问题之前,已经做过此步,可以在核实一边,也可以略过。

ALT+CTRL+F2进入命令行模式:

sudo vim /etc/modprobe.d/blacklist.conf

在文本最后添加以下内容:
blacklist nouveau
option nouveau modeset=0

命令窗口会提示warn,无视之。 

保存退出,执行以下命令生效:
sudo update-initramfs -u
 
重启电脑后,输入:
lsmod | grep nouveau

没有任何输出说明禁用成功。

(3)安装 CUDA +NVIDIA驱动

       继续在ALT+CTRL+F2命令行模式下:

cd setup

ls #找到安装包,记住名字

sudo chmod a+x cuda_10.0.130_410.48_linux.run            #一定要给权限,不然下一步操作没反应

sudo ./ cuda_10.0.130_410.48_linux.run --no-opengl-libs  # sudo sh cuda_10.0.130_410.48_linux.run --no-opengl-libs

注意,命令:./cuda_8.0.44_linux.run –no-opengl-libs (集显需加opengl相关参数)

  安装过程的操作:

@https://blog.csdn.net/qq_41493990/article/details/81980940 验证,出现一些用户许可证信息,有图文。

  安装完,重启: sudo reboot

cuda主要有以下参数:

    --no-opengl-libs:表示只安装驱动文件,不安装OpenGL文件。必需参数,原因同上。注意:不是-no-opengl-files。

    --uninstall (deprecated):用于卸载CUDA Driver(已废弃)。

    --toolkit:表示只安装CUDA Toolkit,不安装Driver和Samples

    --help:查看更多高级选项。

安装过程的选项选择:

(1). 会先有个阅读声明,一直按D即可,然后accept。

(2). 选项install nvidia accelerated Graphics Driver,已经先安装了nvidia驱动的输入n;因为我们还没有安装nvidia驱动,所以记得选y

(3). 选项install the OpenGL libraries,如果双显卡(集显+独显)选择n;如果只有独显可以选择y;如果双显卡选择y的话,会出现黑屏或者循环登录的问题,如果加了上面的参数就不会出现这个选项了。      之前安装一路yes下来的没注意!!!!!!!!!!!

(4). 后面的可以都选择yes,最后一个选项我们可以选择n,也就是不复制Samples,因为安装目录下有samples。

安装过程结束后会有以下信息:

Driver :Installed

Toolkit :Installed in /usr/local/cuda-9.2

Samples :Installed in /home/vincent

@https://blog.csdn.net/wf19930209/article/details/81879514

(4)安装 cuDNN

  按之前的流程,再走一遍:

  下载 --- 解压 --- 写一个sh脚本 --- 直接运行sh --- 查看是否正确安装

  【1.下载与解压】同样,也还是去官网上下载CUDA10.0对应的cuDNN版本,下载地址:https://developer.nvidia.com/rdp/cudnn-download。

  【2.写一个sh脚本与运行】

# sh ./set_cuDnn.sh

#!/bin/bash

echo "remove libcudnn* file of /usr/local/cuda/lib64"
sudo rm -rf /usr/local/cuda/lib64/libcudnn.s*   #删除旧版本cudnn

echo
"copy cudnn.h to usr/local/cuda/include" #sudo cp /home/user_name/cudnn6/include/cudnn.h /usr/local/cuda/include #复制cudnn.h文件到/usr/local/cuda/include目录下,这里的user_name改为自己的用户名 sudo cp /home/u/cuda10.0/cuDNN/include/cudnn.h /usr/local/cuda/include #复制cudnn.h文件到/usr sudo chmod 777 -R /usr/local/cuda/include #对复制后的文件解除权限 echo "copy lib* to usr/local/cuda/lib64" sudo cp /home/u/cuda10.0/cuDNN/lib64/lib* /usr/local/cuda/lib64 #同上 sudo chmod 777 -R /usr/local/cuda/lib64 #同上 sudo ldconfig #对所有的复制和解除权限操作执行生效
# vim setupcudnn.sh #新建一个shell脚本文件,文件里面复制下面的内容进去 # 然后保存setupcudnn.sh文件的内容,并执行下面的命令进行安装: # sudo bash set_cuDnn.sh #执行setupcudnn.sh脚本中的命令,安装cudnn #
**注意:**这里将安装命令写成脚本文件的好处是,后面如果要进行其他cudnn版本的安装,只要稍加修改这个脚本,然后运行就可以迅速完成安装。例如要安装cudnn7版本,下载cudnn7,解压文件重命名为cudnn7,把脚本文件里的cudnn6修改为cudnn7,然后执行sudo bash setupcudnn.sh 就完成了安装。

  【3. 查看是否正确安装】

  cudnn的信息在其头文件里:

  cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2  即可查询

第四步,其他备注

(1)ubuntu16.04命令行模式和图形界面的切换?

从图形化界面切换到命令行模式,可以通过按:ALT+CTRL+F1、-----、F6,

为什么是F1、-----、F6,因为在Linux中一般有F1到F6多个命令行字符终端,也就是说我们可以同时打开最多6个命令行界面。

(2)命令行 与 图形化界面 的切换?

从命令行模式切换回图形化界面模式,按:ALT+CTRL+F7,其他键无效。除了使用快捷方式ALT+CTRL+F7从命令模式切换回图形界面,也可以通过命令模式来返回。

当我们进入命令行模式之后,

输入命令:startx  即可从命令行模式切换回图形界面了。

输入命令:sudo service lightdm start  也可从命令行模式切换回图形界面了。

(3)Ubuntu18.04系统坏掉之后,如何拷贝出系统中的重要文件?

@https://blog.csdn.net/yy2yy99/article/details/93490598

(4)如何判断电脑使用的是集显还是独显?

一般:Intel集显,Nvidia独显

@http://www.dianping.com/education/a93819117

@https://jingyan.baidu.com/article/0964eca242e4988284f53667.html

@https://product.pconline.com.cn/itbk/software/dnyw/1703/8927455.html?_=1507657311 图文

(5)卸载驱动,命令方式参考

sudo apt remove --purge nvidia*  #完全卸载N卡驱动
sudo service lightdm stop         #关闭图形界面
#禁用nouveau驱动 #在
/etc/modprobe.d/blacklist.conf中加入如下内容: blacklist nouveau options nouveau modeset=0 #然后执行 sudo update-initramfs –u #安装Nvidia驱动 sudo add-apt-repository ppa:xorg-edgers/ppa #添加ppa源 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update #更新apt-get sudo apt install nvidia-375 #最后别忘了打开图形化界面 sudo service lightdm start
---------------------------------- 下面再执行相关的删除操作 sudo apt-get remove --purge nvidia-* 删除安装的nvidia相关一切程序,并不保留配置文件 sudo apt-get autoremove 把安装时添加的相关依赖包全删了 sudo apt-get install –f 修复之间的依赖关系 上面三行代码执行完基本可以说可以在不损坏其他应用程序的前提下完整安全的删除一个程序集,之后reboot重启 ----------------------------------------- 卸载英伟达驱动并重启 sudo apt-get remove --purge nvidia-* sudo apt-get autoremove #特别重要 sudo apt-get install -f #特别重要 sudo reboot 重新安装英伟达驱动,由于许多同学可能会忘记自己显卡是什么型号的,或者电脑中没有现成的显卡驱动,或者觉得下载下来再复制到待安装中的电脑过于麻烦。
总之就是想在线安装,在命令行中直接执行一句话那种嘛
~ 更新源 sudo apt-get upgrade sudo apt-get update 查询nvidia驱动可用版本 sudo apt-cache search nvidia-* 选择其中最新的版本进行安装,我们这里只是距离安装384,具体版本需要根据你们的实际情况安装 sudo apt-get install nvidia-384 然后发现显示屏的分辨率正常了,并且不再循环登陆了@https://blog.csdn.net/dugudaibo/article/details/84255472 -----------------------------------------------

(6)版本

  以前先安装NVIDIA驱动再暗转CUDA,两者版本:

NVIDIA-Linux-x86_64-410.93.run

cuda_10.0.130_410.48_linux.run

  在CUDA+NVIDIA驱动一起安装,两者版本:

cuda_10.0

NVIDIA-410.48

  附,电脑的基本配置信息:

1.机箱(主机的外壳,用于固定各个硬件) :
2.电源(主机供电系统,用于给主机供电稳压):1250W(一个电源)
3.主板(连接主机内各个硬件的躯体):Z390 AORUS PRO(WIFI)(技嘉GIGABYTE)
4.CPU(主机的大脑,负责数据运算处理):Inter? CoreTM i7-8700K CPU@3.70GHz×12
5.内存(暂时存储电脑正在调用数据):64G DDR4 2666 金士顿
6.硬盘(主机的存储设备,用于存储数据资料):250G(三星SSD)+4T希捷
7.声卡(处理计算机的音频信号,有主板集成和独立声卡):
8.显卡(处理计算机的视频信号,有核心显卡(集成)及独立显卡):(技嘉)英伟达GeForce RTX2080 ti 11G
9.网卡(处理计算机与计算机之间的网络信号,常见个人主机都是集成网卡,多数服务器是独立网卡)
10.散热器(主机内用于对高温部件进行散热的设备)

   附,爬坑中的部分截图:

  希望这次解决了,以后不要再出现这个问题了。爬坑过程是在是太耗心情~~~

猜你喜欢

转载自www.cnblogs.com/carle-09/p/11288054.html
今日推荐