ubuntu---NVIDIA驱动 + CUDA 安装完可能会遇见的问题
如果稍不注意:系统内核、GCC、下载的版本不对应、安装过程中选项选择不正确,在NVIDIA驱动 + CUDA 安装完后可能会遇见一些问题。
一、登陆不进桌面
可能的操作:
(1)nivida驱动安装完之后,重启电脑,发现GPU无法正常使用,出现无法登录桌面系统、分辨率改变等问题。
(2)CUDA安装完之后,重启电脑,发现GPU无法正常使用,出现无法登录桌面系统。
(3)系统软件升级之后(一般是使用了 sudo apt-get update),重启,在登陆界面输入密码后,回车,闪现一次黑屏和一些代码,然后又重新回到登陆界面。
(4)点了ubuntu系统自动提示的软件升级以后,重启电脑导致。
(5)ubuntu 正常使用过程中,有些使用/安装需要软件升级,无意操作,更新软件的同时更新了内核。
可能的原因分析:
1、主目录下的.Xauthority文件拥有者变成了root,从而以用户登陆的时候无法都取.Xauthority文件。从而造成用户登陆不进入系统桌面。
说明:Xauthority,是startx脚本记录文件。Xserver启动时,读文件~/.Xauthority,读入对应其display的记录。当一个需要显示的客户程序启动调用XOpenDisplay()也读这个文 件,并把找到的magic code 发送给Xserver。
当Xserver验证这个magic code正确以后,就同意连接啦。观察startx脚本也可以看到,每次startx运行,都在调用xinit以前使用了xauth的add命令添加了一个新的记录到~/.Xauthority,用来这次运行X使用认证
#系统的Xauthority文件出现了问题,当前用户无权限调用他,所以使用rm -rf .Xauthority删除他,也有说使用sudo chown usrname .Xauthority将权修改为当前用户的。
2、系统软件升级后与Nvidia的驱动冲突。
@https://www.cnblogs.com/yongpan/p/9645684.html
解决方法
针对可能的原因分析1:
将.Xauthority的拥有者改为登陆用户。 操作过程: 开机后在登陆界面按下shift + ctrl + F1进入tty命令行终端登陆后输入: $ cd ~ $ sudo chown hp:hp .Xauthority (若为其他用户名修改成相应的名称即可) 然后再次输入: ls .Xauthority -l 成功后显示如下: -rw------- hp hp 1月 : .Xauthority 此时拥有者已经变为用户。按下shift + ctrl + F7切换回图形登陆界面登陆即可。 参考:https://blog.csdn.net/u010925447/article/details/72236387
另,参考: 进入shell,在home目录下找到.xsession-errors文件
# cd home 查看是否有.xsession-errors
cd ~
ls -a
#用vi打开.xsession-errors文件
vi .xsession-errors 接着你就可以看到里面的日志信息,按照日志里面的信息去google,也许可以解决驱动安装的办法。
针对可能的原因分析2:
出现这个问题最大的可能原因是安装的Nvidia驱动和系统或者硬件有不兼容,下载新的驱动一般可以解决问题。卸载驱动,升级或者降级内核版本。
卸载:由于登陆进入不到图形用户界面(GUI),但我们可以进入到文本用户界面(TUI)。
卸载NVIDIA驱动,重新安装 unity 桌面。参考以下几种方式:
进入到shell,开始卸载NVIDIA驱动:
sudo apt-get remove --purge nvidia-* #sudo apt-get remove --purge nvidia-331-updates 卸载指定版本
sudo apt-get install ubuntu-desktop
sudo rm /etc/X11/xorg.conf
echo 'nouveau' | sudo tee -a /etc/modules
#重启系统
sudo reboot ----------------------------------
sudo apt-get purge nvidia-*
sudo apt-get autoremove
sudo apt-get --purge remove nvidia-*
remove 之后,nvidia-smi 看驱动是否还在。 如果还在,说明没卸载掉:
查看nouveau模块是否被加载。如果什么都没输出,则执行下一步。
根本问题在于参数: --no-opengl-filessudo /etc/init.d/lightdm stop
sudo ./NVIDIA-Linux-x86_64-375.20.run --no-opengl-files
sudo /etc/init.d/lightdm start
即可以正常登录界面了!! ----------------------------------
(1) 按ALT + F1进入命令行模式,查找显卡驱动.run的安装文件存放位置:
find . -name NVIDIA-Linux-x86_64-375.39.run
(2) 跳转到该文件所在位置,运行如下命令卸载该驱动:
sudo bash ./NVIDIA-Linux-x86_64-375.39.run –uninstall
$ sudo apt-get autoremove --purge nvidia-* #把nvidia驱动清个干干净净
$ sudo reboot #一定记得重启,不然你会后悔的!
在登陆界面状态下,按Ctrl + Alt + f1,进入TUI执行
sudo /usr/bin/nvidia-uninstall
然后重启
sudo reboot
如果装完之后出现循环登录,可以卸载之后添加--no-opengl-files选项重新安装一次 卸载NVidia驱动
sudo ./NVIDIA-Linux-x86_64-xxx.xx.run –uninstall #用下载的安装程序进行卸载。如果安装的是官网下载的驱动,则重新运行run文件来卸载
或者
nvidia-uninstall #用安装出来的可执行脚本卸载
当输入安装指令时,不要简单地输入 sudo ./....run,而是输入:
sudo ./NVIDIA.run -no-x-check -no-nouveau-check -no-opengl-files
-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
这样再reboot,就不会出现循环登录的问题。
如果在安装CUDA时候一起安装的Nvidia驱动。
-----------------------------------------------------------
Description This package includes over + CUDA examples that demonstrate
various CUDA programming principles, and efficient CUDA
implementation of algorithms in specific application domains.
The NVIDIA CUDA Samples License Agreement is available in
Do you accept the previously read EULA?
accept/decline/quit: accept Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 367.48?
(y)es/(n)o/(q)uit: y # 单独安装nvidia驱动,这里选择 n Install the CUDA 8.0 Toolkit?
(y)es/(n)o/(q)uit: y Enter Toolkit Location
[ default is /usr/local/cuda-8.0 ]: Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y Install the CUDA 8.0 Samples?
(y)es/(n)o/(q)uit: y Enter CUDA Samples Location
[ default is /home/c302 ]: Installing the CUDA Toolkit in /usr/local/cuda-8.0 ...
Installing the CUDA Samples in /home/c302 ...
Copying samples to /home/c302/NVIDIA_CUDA-.0_Samples now...
Finished copying samples. ===========
= Summary =
=========== Driver: Not Selected
Toolkit: Installed in /usr/local/cuda-8.0
Samples: Installed in /home/c302 Please make sure that
- PATH includes /usr/local/cuda-8.0/bin
- LD_LIBRARY_PATH includes /usr/local/cuda-8.0/lib64, or, add /usr/local/cuda-8.0/lib64 to /etc/ld.so.conf and run ldconfig as root To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-8.0/bin Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-8.0/doc/pdf for detailed information on setting up CUDA. ***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 361.00 is required for CUDA 8.0 functionality to work.
To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:
sudo <CudaInstaller>.run -silent -driver Logfile is /tmp/cuda_install_9045.log -------------------------------------------------------- 这种,可以采用 一起卸载 CUDA 以及 NVIDIA驱动的形式卸载NVIDIA驱动。 参考一:
CUDA安装: sudo apt install nvidia-cuda-toolkit
卸载CUDA: sudo apt purge --autoremove cuda
sudo apt purge --autoremove nvidia-cuda-toolkit #sudo apt-get purge --auto-remove nvidia-cuda-toolkit
参考二:
卸载CUDA很简单,一条命令就可以了,主要执行的是CUDA自带的卸载脚本,要根据自己的cuda版本找到卸载脚本:
sudo /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl
卸载之后,还有一些残留的文件夹,之前安装的是CUDA 8.0。可以一并删除:
sudo rm -rf /usr/local/cuda-8.0/
cd /usr/local/cuda6.5/bin/
sudo ./uninstall_****
参考三:
卸载CUDA
只针对对于.run方式安装的,其他的没有进行测试
打开终端,输入: sudo /usr/local/cuda-10.0/bin/uninstall_cuda_10.0.pl
执行完后,删除cuda文件即可
同时卸载nvidia驱动:sudo /usr/bin/nvidia-uninstall
卸载cuDNN
打开终端,输入:
sudo rm -rf /usr/local/cuda/lib64/libcudnn
sudo rm -rf /usr/local/cuda/include/cudnn.h
然后,可以选择把自己下载的文件也删除掉,这个需要到自己存放文件的地方删除了,不同的人存放的地方可能不同,在这不过多累述。
打开~/.bashrc, 删除:
export PATH=$PATH:/opt/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64
参考四:
sudo apt-get remove cuda
sudo apt-get autoclean
然后在目录切换到/esr/local/下
cd /usr/local/
sudo rm -r cuda-9.0
参考五:
sudo ./CUDA-x86_64-X.X.run --uninstall
二、验证CUDA Toolkit :$ nvcc -V ,会输出CUDA的版本信息,但如果是这样的:
The program 'nvcc' is currently not installed. You can install it by typing:
sudo apt-get install nvidia-cuda-toolkit # sudo apt-get remove nvidia-cuda-toolkit
(1)可能是 Install the CUDA 8.0 Toolkit? 这一步没安装,选择了 n。 可以尝试: sudo apt-get install nvidia-cuda-toolkit ,
在查看cat /usr/local/cuda-10.0/version.txt 与 nvcc --version 显示版本是否一致。
(2)可能是环境配置没有成功,重设置环境变量,使其在系统中生效。@https://blog.csdn.net/qlulibin/article/details/78714596
查看 路径 /usr/local/cuda-9.0/bin 下是否有 nvcc 这个可执行文件,有则说明cuda安装是成功的。
配置环境:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64
export PATH=$PATH:/usr/local/cuda-9.0/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-9.0
sudo ldconfig
径设置是生效的。
卸载完,一定要检验:是否已经卸载完毕。
https://blog.csdn.net/Hover_May/article/details/81236886 Ubuntu 16.04陷入登录循环 的4种原因
ubuntu---NVIDIA驱动 + CUDA 安装完可能会遇见的问题的更多相关文章
- Ubuntu系统---“NVIDIA 驱动+CUDA+cuDNN ”之后 OpenCV安装
Ubuntu系统---“NVIDIA 驱动+CUDA+cuDNN ”之后 OpenCV安装 目录: 一.OpenCV安装包下载 二.cmake安装 三.OpenCV安装 正文 一.OpenCV安装包下 ...
- # Ubuntu16.04安装nvidia驱动+CUDA+cuDNN
Ubuntu16.04安装nvidia驱动+CUDA+cuDNN 准备工作 1.查看GPU是否支持CUDA lspci | grep -i nvidia 2.查看Linux版本 uname -m &a ...
- Ubuntu18.04安装RTX2080Ti+NVIDIA驱动+CUDA
Ubuntu18.04安装RTX 2080Ti 与 Cuda10 ==========血泪更新========= 如果可以使用ppa安装最方便了 具体参考:https://www.cnblogs.co ...
- ubuntu nvidia驱动安装教程
1. 安装显卡切换软件 sudo add-apt-repository ppa:nilarimogard/webupd8 #添加PPA更新源 sudo apt-get update #刷新更新源列 ...
- ubuntu---【NVIDIA驱动 + CUDA 安装】不成功时的卸载方式
NVIDIA驱动 与 CUDA 安装不成功时,可以卸载,检查相关问题(配置.兼容性等),重新安装.这里记录一下,卸载方式.
- Nvidia驱动正确安装过程
找到适合的正确的驱动 去nvidia驱动官网下载 卸载掉原有驱动 sudo apt-get remove –purge nvidia* 安装驱动 进入命令行界面 Ctrl-Alt+F1 给驱动run文 ...
- Ubuntu18.04 显卡驱动+Cuda安装踩坑记录 以及Ubuntu虚拟内存的添加
前几天买了张亮机卡,终于把主显卡成功直连到Unraid OS的虚拟机上了.然后就开始安装ubuntu系统开始配置环境,遇到了不少坑,特此记录. gcc版本问题 在安装显卡驱动的时候,不要修改gcc版本 ...
- ubuntu nvidia驱动+cuda9.0
https://blog.csdn.net/fdqw_sph/article/details/78745375
- Ubuntu系统---Ubuntu16.04进不了界面(登录界面循环,密码正确)(一体化安装(CUDA +NVIDIA驱动)+ cuDNN)
Ubuntu16.04进不了界面(登录界面循环,密码正确)(一体化安装(CUDA +NVIDIA驱动)+ cu ...
随机推荐
- 【PAT甲级】1032 Sharing (25 分)
题意: 输入两个单词的起始地址和一个正整数N(<=1e5),然后输入N行数据,每行包括一个五位数的字母地址,字母和下一个字母的地址.输出这两个单词的公共后缀首字母的地址,若无公共后缀则输出-1. ...
- 解题报告:luogu P1433 吃奶酪
题目链接:P1433 吃奶酪 我感觉可以改成:[模板]TSP问题(商旅问题) 了. 爆搜\(T\)一个点,考虑状压\(dp\)(还是爆搜). 我们用\(dp[i][j]\)表示现在是\(i\)状态,站 ...
- underscore.js -2009年发布的js库
2009 Underscore.js 0.1.0发布 Underscore一个JavaScript实用库,提供了一整套函数式编程的实用功能,但是没有扩展任何JavaScript内置对象.它是这个问题的 ...
- 解决 U2000 R017 安装报错: 检查SQL server数据库环境变量信息 ( 异常 ) [ 详细信息 ] PATH环境变量中缺少数据库路径的信息
U2000 R017 安装报错: 检查SQL server数据库环境变量信息 ( 异常 ) [ 详细信息 ] PATH环境变量中缺少数据库路径的信息 管理员模式打开注册表位置: HKEY_LOCAL_ ...
- Golang 如何交叉编译
Golang 支持交叉编译,即在一个平台上生成另一个平台的可执行程序.方法如下: Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=linux G ...
- JavaScript引用类型与对象
1.引用类型 引用类型的值(对象)是引用类型的一个实例.引用类型有时候也被称为对象定义,因为它们描述的是一类对象所具有的属性和方法. 对象是某个特定引用类型的实例.新对象是使用new操作符后跟一个构造 ...
- Intent的常用属性action和category
设置隐式跳转 首先在我们按钮监听器中添加 Intent i=new Intent(); //参数为字符串,可以添加包名.活动名 i.setAction("com.example.aaaaa. ...
- EJS 高效的 JavaScript 模板引擎
什么是 EJS? "E" 代表 "effective",即[高效].EJS 是一套简单的模板语言,帮你利用普通的 JavaScript 代码生成 HTML 页面 ...
- vmware workstation导入ovf文件报错:未通过OVF规范一致性或虚拟硬件合规性检查
转自:https://blog.csdn.net/zs15yy/article/details/73793585 报错如下: 原因:这是因为OVF 版本不同导致的,VMware Workstation ...
- SpringMVC controller中业务方法的参数、返回值
业务方法的参数 业务方法的参数类型.参数个数是任意的,根据需要使用. 常见的参数类型: HttpServletRequest.HttpServletResponse.HttpSession 获取 ...