Ubuntu 20.04 LTS 安装Anaconda+Tensorflow的各类问题汇总

目录

前言

近期因学习需要,需要搭建Linux+Tensorflow的编程环境,为了保证深度学习程序运行的效率还需要安装Tensoflow-gpu版本。但作为老倒霉蛋+小白的我,单是搭建这个编程环境就花了我三个夜晚,重装了两遍系统。本着我不入地狱,谁入地狱的佛系心态,这里将我使用所有到安装方法以及安装过程中遇到的问题进行汇总,在这里由衷地感谢这些国内或者国外的大佬对于自己方法的总结。

本机环境

  • 系统环境:Ubuntu 20.04 LTS (x86_64)
  • 显卡型号:Nvidia GeForce 2070 Super
  • 架构信息 :cuda10.1+cudnn10.1+Anaconda3

安装思路

如果你和我一样也是个小白的话,在安装之前,我们需要先了解一下我们安装的是啥以及为啥要安装它。本章节的最后会包含安装的流程框图。
如果觉得比较啰嗦的话可以直接根据下面这两篇帖子进行安装。

1.系统环境

众所周知,Windows和Linux是两大主流操作系统,目前的各类应用也是基于这两种操作系统进行的开发。与大家经常使用的Windows不同,Linux更为纯净。简单的理解就是

  • Window是成熟的界面化系统,在系统上的操作一目了然【操作更为便捷,但用户权限受限】;
  • Linux则是纯粹的指令操作(尽管有Ubuntu这样界面化的Linux系统,但依然摆脱不了终端命令的使用)【操作非常复杂,但用户权限开放】

这也是为何普通用户喜欢Windows,而程序员更偏爱Linux的原因。同时,你如果要在Windows上使用深度学习框架可能会有很多报错,同时由于权限不足以至于你并没有很好的办法去处理,但在Linux上面尽管你依然会有很多报错,但你有各种办法去解决它。
正因如此,笔者打算采用作为Ubuntu操作系统进行软体环境的搭建。以下是有关操作系统安装与基本操作的帖子

2.Anaconda

众所周知,Python是一种面向对象的解释型计算机程序设计语言,其使用具有跨平台的特点,可以在Linux、macOS以及Windows系统中搭建环境并使用,其编写的代码在不同平台上运行时,几乎不需要做较大的改动。正因如此很多深度学习的框架大部分都与Python有很好的兼容性,基于Python的深度学习代码项目也是最为丰富的。而Anaconda其实就是一个开源的Python发行版本,其中包含了很多有用的包和依赖项(可以理解成加强版Python)。所以这里我们采用Anaconda,而不是Ubuntu自带的Python原始环境。

关于Anaconda的安装和卸载请参照

4.TensorFlow

TensorFlow 是谷歌的开发者创造的一款开源的深度学习框架也是一个运算系统,与其他深度学习框架一样,它可以基于你电脑的CPU进行运算或者是基于你电脑中独立显卡的GPU进行运算,其中CPU版本的TensorFlow比较容易安装,在终端中利用以下命令即可完成

pip3 install tensorflow

:在使用前请先安装好Anaconda,并建议创建虚拟环境后再安装tensorflow到虚拟环境中,保证base版本Anaconda的纯净性

以下命令就是创建一个名为tensorflow,基础语言为python3.7的虚拟环境

conda create –n tensorflow python=3.7

Ubuntu 20.04 LTS 安装Anaconda+Tensorflow的各类问题汇总
利用命令激活后即可进入虚拟环境中,之后在虚拟环境中运行tensorflow-cpu版本的命令即可

conda activate tensorflow

Ubuntu 20.04 LTS 安装Anaconda+Tensorflow的各类问题汇总

如果需要使用GPU进行运算,则需要安装GPU版本的Tensorflow,但在安装之前还需要安装显卡对应的运算平台cuda和加速库cudnn,在安装完成后,利用命令安装tensorflow-gpu

完整流程建议参考

3.Cuda、Cudnn(仅GPU版本Tensorflow需要)

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。反正就是只要使用GPU版本的tensorflow,这个运算平台是必须的
CUDNN则可以看做是CUDA的一个扩展包,可以加速运算,在安装完成CUDA后,将cudnn的文件复制进入cuda中即可。

!!注意!!:

  • CUDA需要显卡的支持,在安装之前需要确保显卡支持CUDA且显卡驱动版本和CUDA Toolkit相互匹配
    支持 CUDA® 的 GPU 卡.
    英伟达官方CUDA的发布信息,看表2即可.
  • 目前Tensorflow还不支持过高版本的CUDA,所以不建议像有些帖子中用自动的方式下载显卡驱动和配套的CUDA,因为它会直接给你安装最新版本的CUDA,到时候Tensorflow可能无法使用,个人建议安装CUDA 10.0
    Tensorflow所匹配的cuDNN和CUDA.
  • CUDA安装过程中会提示是否安装驱动,请务必选否,以免造成和你手动安装的驱动冲突

关于显卡驱动以及Cuda、Cudnn的安装和配置,建议参考
Ubuntu安装和卸载CUDA和CUDNN.
Ubuntu18.04安装NVIDIA显卡驱动.

安装注意事项

  • 安装时请在非ROOT模式下进行,除非提示权限不足时再使用sudo进行操作(否则会出现很多异常问题)
  • 所有的安装包请放置在“/home/你的用户名”路径(路径中不要包含中文)下,确保出现异常时可以随时重新安装
  • 当出现由于显卡驱动安装异常导致无法进入界面时,请不要着急,进入命令行模式重新安装驱动即可
  • 请务必牢记自己的用户名和密码,在命令行模式下需要登录才可使用

疑难问题总结

1.pip下载超时

问题描述:使用pip命令时下载速度很慢,之后报TimeOut的错误
解决办法:加载其他镜像源进行安装即可
详情链接Pip源设置(使用清华源).

2.安装完驱动程序后重启电脑无法进入桌面

问题描述:在将显卡驱动安装完毕后,重启电脑但无法进入桌面,屏幕一片漆黑或者有报错信息
解决办法:对于这个问题,分两种情况来看,按Ctrl + Alt +F1(F1~F6均可)进入命令行模式【我按F1是不行,反正都是按的F4】

(1)可以进入命令行

能进入命令行,就意味着问题不大,可以尝试以下办法

  • 重启X-window 服务,后按Ctrl+Alt+F7看是否能回到登录界面
sudo service lightdm stop
  • 如果返回后还是漆黑,则建议按照上文引用的 Ubuntu18.04安装NVIDIA显卡驱动.先将现有驱动卸载,然后重新按照步骤安装显卡驱动,并重启电脑【所以把驱动安装程序保存好很重要!!】
  • 如果重新安装了自己下载的驱动程序,依然存在问题,则说明驱动程序不正确,建议自动安装回原有驱动
    详情链接ubuntu 自动安装nvidia显卡驱动.

(2)无法进入命令行

如果无法进入命令行,只有左上角有一个光标在闪烁,这种就比较麻烦,建议采取以下措施

  • 重启,长按shirft进入grub菜单即Ubuntu安全模式,选择recovery mode回车进入
    Ubuntu 20.04 LTS 安装Anaconda+Tensorflow的各类问题汇总

  • 选择cleandpkg,然后再重新进入Ubuntu系统中,检查是否能进到命令行模式
    Ubuntu 20.04 LTS 安装Anaconda+Tensorflow的各类问题汇总
    :上述办法不一定有效,如果尝试上述操作后依然存在问题,我的建议是重新安装系统,我当时遇到这个问题时主要原因就是根目录设置过小,空间满了,导致安装驱动以及一些包的时候存在异常,出现该现象,之后采用上述办法重新回到命令行模式重装驱动解决。

3.安装cuda循环登录

详情链接ubuntu安装cuda循环登录.

4.cuda安装过程中出现It appears that an X server is running. Please exit X before installation.

详情链接ubuntu 16.04 安装cuda9.0报错,It appears that an X server is running. Please exit X before installation..

致谢

非常感谢以上所分享的帖子的大佬们,也希望能通过这个汇总贴,将自己遇到的各种问题予以整理,避免大家被一些低质量的帖子误导踩坑。

上一篇:如何在Ubuntu 20.04 LTS上安装Microsoft Edge?


下一篇:vlan 和 三层交换机的配置