从ubuntu安装开始的Tensorflow环境配置

一、win10下ubuntu安装

1、准备一个刻录好镜像的u盘,设置为uefi引导
2、在win10压缩磁盘,分出一块空闲空间。非常建议双硬盘分别安装系统
3、修改主板boot优先级,从u盘启动,之后选择 Try Ubuntu without install 进入Ubuntu PE系统
4、 点击安装Ubuntu注意断开网络,选择"最小安装";分配空间前,选择"其他选项"
5、 按照如下分配空间

分区 类型 位置 大小
EFI 主分区 起始 500MB
swap 逻辑分区 起始 根据内存
/ 主分区 起始 建议128G
/home 逻辑分区 末端 多大都行

这样做可以在中间空出一块未分配的空间,便于以后调整
6 、 启动器选在 EFI对应的盘符,之后开机时候按F11(微星主板)就可以选择从哪个系统启动
7、 输入用户名密码、选好时区,完成安装。
8、 第一次启动进入ubuntu前,如果用的比较新的N卡(大约10系起),在选择系统时候,按e进入编辑,在quiet splash后添加nomodeset,以避免紫屏

 

二、N卡驱动安装

1、 第一次进入系统后,先解决nouveau的冲突问题

在终端中输入

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

然后在最后插入

blacklist nouveau
options nouveau modeset=0

更新系统

sudo update-initramfs -u

重启系统,验证是否禁用

lsmod | grep nouveau

一般能直接进系统就说明没问题了

2、 换源

sudo cp /etc/apt/sources.list /etc/apt/sources_init.list
sudo gedit /etc/apt/sources.list

推荐换成清华源,之前换过一次阿里源结果在版本上出了很大问题

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

重启 sudo reboot
更新

sudo apt-get update
sudo apt-get upgrade

3、开始安装N卡驱动

首先在知道自己显卡型号后,到nvidia官网查找自己显卡对应的linux 64位驱动的run文件,事先下好放在 /home 下, 然后开始安装一些依赖项

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install build-essential libc6:i386

完成后重启
重启成功后打开终端,输入如下命令:sudo telinit 3。然后按快捷键:CTRL+ALT+F1 进入字符界面,输入用户名和密码,然后登录系统,进入我们保存下载 NVIDIA 驱动的目录,按前面说的是/home,之所以放这,是应为有可能在命令行下无法显示或者输入中文路径。如果以前安装过驱动,先执行 sudo apt-get remove nvidia-* ,再开始安装
给驱动run文件赋予执行权限,"NVIDIA-Linux-x86_64-396.18"具体的版本号应改为实际对应的:

sudo chmod  a+x NVIDIA-Linux-x86_64-455.18.run

安装:

sudo ./NVIDIA-Linux-x86_64-455.18.run  -no-opengl-files 

-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件
这里只添加 -no-opengl-files即可
安装过程中的几个问题,按照下面的回答(copy别人的):

  • The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续。
  • Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No 继续。
  • 问题没记住,选项是:install without signing
  • 问题大概是:Nvidia's 32-bit compatibility libraries? 选择 No 继续。
  • Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 Yes 继续
    安装完之后 挂在Nvidia驱动:
modprobe nvidia

检查驱动是否安装成功:

nvidia-smi

得到显卡状态信息表就表示安装成功了,记住右上角的CUDA版本号,这是驱动支持的最高CUDA版本,之后安装的CUDA不能高于这边显示的版本。
重启,回到正常图形化界面。
笔者的系统是Ubuntu18.04,显卡是RTX2080,在图形化界面拖动窗口或者播放视频时会出现撕裂tearing,查找了网上诸多方法,目前也没有解决。只能勉强用着了。反正也不拿来娱乐,最多就是翻阅代码的时候比较难受。

 

三、安装CUDA

首先找到驱动对应cuda的版本:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/
下载所需CUDA的Linux-64版.run文件
安装:

sudo sh cuda_10.1.243_418.87.00_linux.run

在选项中去掉Driver的安装,之后一路确定
出现以下信息后,说明安装成功


picture 1

添加环境变量:
打开文件:

sudo gedit .bashrc

在文件的最后位置复制一下内容, cuda-10.1 改成对应安装的版本

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.1/lib64
export PATH=$PATH:/usr/local/cuda-10.1/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.1

输入 source ~/.bashrc ,使配置生效。
添加环境变量, 打开文件:

sudo gedit .bashrc

在文件的最后位置复制一下内容:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.1/lib64
export PATH=$PATH:/usr/local/cuda-10.1/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.1

输入 source ~/.bashrc ,使配置生效。
测试CUDA安装成功的Samples例子:

cd  /usr/local/cuda-10.1/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

picture 2

最后Result= PASS 为安装成功
输入命令:nvcc -V 可以查看CUDA版本信息

CUDA 安装的要点

  • 不得高于驱动支持的版本,具体的查看方面前面提到了
  • 考虑好Tensorflow的版本,过高的CUDA可能没有对应的tf版本支持
  • CUDA一般内置了显卡驱动,安装时候务必选不进行安装

 

四、Cudnn安装

https://developer.nvidia.com/rdp/cudnn-archive 里查找同时满足CUDA和Tensorflow版本的Cudnn
解压:

tar –zxvf cudnn-10.1-linux-x64-v7.6.5.32.tgz

输入以下命令:

sudo cp cuda/include/cudnn.h /usr/local/cuda/include/ 
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ 
sudo chmod a+r /usr/local/cuda/include/cudnn.h 
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

检测是否安装成功:

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

此处应该能看到cudnn的版本

 

五、Tensorflow安装

安装,Anaconda 并创建虚拟环境

conda create -n tf2 python=3.8

创建一个名字是 tf2 , python版本是3.8的虚拟环境
激活 tf2 环境, 在 tf2 环境下输入:

pip install --upgrade tensorflow

或者pip安装从官网下载的tensorflow
测试:

import tensorflow as tf
tf.test.is_gpu_available()

 

六、ROS-Melodic 安装与配置

设置软件源:

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

设置密钥:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

安装:

sudo apt-get update
sudo apt-get install ros-melodic-desktop-full
sudo apt-get install ros-melodic-rqt*

之后执行

sudo rosdep init
rosdep update

这时候可能会出现不少问题:

  • 执行sudo rosdep init ,反馈没有该指令。解决方法,按照提示安装缺失的包,这里缺的应该是提示python-rosdep2 ,输入下面的指令安装:
    sudo apt install python-rosdep2
    
    安装完成之后,会发现ros-melodic-desktop-full安装的包部分丢失,这时候重新执行:
    sudo apt-get install ros-melodic-desktop-full
    
    此时如果sudo rosdep init 可以执行则问题解决。如果仍提示没有该指令,再输入:
    sudo apt install rospack-tools
    
    一般就能解决问题
  • 如果出现:
    ERROR: cannot download default sources list from: https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list  
    Website may be down.
    
    多半网络有问题,建议换个网络或者梯子试试。
    或者执行:
    sudo gedit /etc/hosts
    
    在末尾添加下面这一行,保存并退出:
    151.101.84.133  raw.githubusercontent.com
    

安装rosinstall

sudo apt-get install python-rosinstall

加载环境设置文件

source /opt/ros/melodic/setup.bash

创建并初始化工作目录
ROS使用一个名为catkin的ROS专用构建系统。为了使用它,用户需要创建并初始化catkin工作目录,如下所示。除非用户创建新的工作目录,否则此设置只需设置一次。

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace

目前,只有src目录和CMakeLists.txt文件在catkin工作目录中,使用catkin_make命令来构建

cd ~/catkin_ws/
catkin_make

设置环境变量:

sudo apt install net-tools
gedit ~/.bashrc
# Set ROS melodic
source /opt/ros/melodic/setup.bash
source ~/catkin_ws/devel/setup.bash
 
# Set ROS Network
#ifconfig查看你的电脑ip地址
export ROS_HOSTNAME=192.168.89.135
export ROS_MASTER_URI=http://${ROS_HOSTNAME}:11311
 
# Set ROS alias command 快捷指令
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm='cd ~/catkin_ws && catkin_make'

完成以上步奏之后,用小海龟试一试是否安装正常:
打开三个终端:

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容