双系统删除并重新安装Ubuntu,配置ROS+深度学习开发环境全过程
- 前言
- 1. 准备工作
-
- 1.1 制作启动盘
- 1.2 使用windows自带工具删除Ubuntu系统
- 1.3 命令行删除引导分区
- 2. 安装和配置Ubuntu系统
-
- 2.1 设置开机启动项
- 2.2 关于Acer Nitro5 这台笔记本
- 2.3 关于分区
- 2.4 安装一些小工具
-
- 2.4.1 系统小插件
- 2.4.2 修改键盘映射
- 2.4.3 截图软件及全局快捷键设置
- 2.4.4 中文输入法
- 2.4.5 chrome浏览器
- 2.3.6 Nvidia显卡cuda toolkit和cuDNN的安装
- 3 ROS和深度学习相关软件配置
-
- 3.1 Anaconda
-
- 3.1.1 安装过程
- 3.1.2 常用指令
- 3.2 ROS-Noetic
-
- 3.2.1 命令行安装
- 3.2.2 bashrc中添加环境变量
- 3.2.3 其他
- 3.2.4 安装验证
- 3.3 vscode
-
- 3.3.1 安装过程
- 3.3.2 常用插件
- 3.4 pytorch
-
- 3.4.1 安装过程
- 3.4.2 验证
- 3.5 tensorflow(博主知识盲区,TODO)
- 4. 创建一个ros工程示例并以vscode作为集成开发环境示例
-
- 4.1 初始化ros空间
- 4.2 创建ros包
- 4.3 配置编译快捷键
- 4.5 配置vscode切换anaconda虚拟环境
前言
由于各种各样的原因,已经装好的双系统里的Ubuntu崩了(主要是因为不成气候的deepin wine), 实在忍无可忍,所以重新安装Ubuntu系统。下面是记录。篇幅比较长,建议看着目录找到需要的部分进行阅读。
1. 准备工作
1.1 制作启动盘
首先进入windows系统,下在ultraiso软件,根据 上的教程制作一个系统盘。总的过程就是,先准备一个可以格式化的U盘,在ubuntu官 上下载一个ubuntu的镜像,然后使用ultraiso软件将镜像写入到格式化后的U盘里面。开机的时候选择U盘启动,进入系统盘之后按提示安装Ubuntu。
1.2 使用windows自带工具删除Ubuntu系统
这是一种比较紧单粗暴的方法,右键”我的电脑,选择”manage”或者中文的”管理”,然后在子硬盘管理下面删除掉Ubuntu系统相关的卷,一般来说应该是不带盘符的那几个卷,其中还会包括一个EFI system partition的盘(引导系统启动用的),要自行区分好,不要删错了。
2.1 设置开机启动项
进入电脑的bios界面,不同电脑品牌对应的快捷键不一样,自行百度。设置为U盘启动。
2.2 关于Acer Nitro5 这台笔记本
对于Acer Nitro5 笔记本电脑,是F12进入,如果进入不了的话应该是被disable了F12选择快速启动项的功能(进入bios之后,advanced菜单里有一个F12 boot menu的选项,选择启用下次就能够直接按F12了),这时候可以开机按F2进入bios界面,在boot菜单下选择启动顺序。另外,我还在 上看到有人问怎么把SATA模式改为AHCI,而不是默认的Optane with RAID模式。这是Acer比较鸡贼的地方, 上几乎没有教程提到怎么做。其实是可以的。进入BIOS后,在Main菜单栏下,按键盘的CTRL+S,这时候会多出一个选项,就跟玩游戏弹出了一个隐藏关卡一样,甚是有趣。
2.3 关于分区
安装的时候分区选择,只需要配置最重要的三个部分:
- /boot
- swap
- /
总共的系统空间是180G左右,其中/boot我给了800MB其实是有点大了, swap area实际上是虚拟内存的空间,我给了20G,剩下的都分给了根目录,根目录会自动生成其他文件夹,所以只需要配置这三个分区即可。
由于如何安装Ubuntu系统这部分 上的教程数不胜数,再次不再鹦鹉学舌了,诸君自行百度搜索即可。
2.4 安装一些小工具
2.4.1 系统小插件
- gedit
- terminator
- htop
- tree
- gparted
2.4.2 修改键盘映射
如果是德语键盘的话,更改键盘的映射,让y和z对调,这样打字母就跟美式键盘一样了。更改的方式如下:
然后分别按下键盘的y键和z按键, 可以看到查看keycode, y键对应的是52, z对应的是29
2.4.3 截图软件及全局快捷键设置
截图软件推荐使用flameshot, 它的安装和全局快捷键配置如下:
在设置中添加快捷键
2.3.6 Nvidia显卡cuda toolkit和cuDNN的安装
关于Nvidia,有几个概念是需要知道的, nvidia是一家设计显卡的公司名字(废话),
- CUDA :是显卡厂商NVIDIA推出的运算平台,全称:Compute Unified Device Architecture,可以理解成一个我们不需要了解的并行计算模型,且他不需要与显卡硬件驱动 CUDA Driver适配。
- CUDA Driver: 与实际硬件适配的驱动。
- NVCC: 显卡的编译器
- CUDA TOOLKIT :CUDA TOOLKIT 包含了一系列的编译器,科学计算库,一堆的API,CUDA Driver 是CUDA TOOLKIT 的子集,所以安装CUDA TOOLKIT一定会同时安装CUDA Driver,反之则不是。
- cuDNN :全称NVIDIA CUDADeep Neural Network library, 是一个专门为了深度学习开发的库,有了它,才能在pytorch, tensorflow上使用Nvidia的GPU训练 络。
可以参考这位博主的详细讲解, https://blog.csdn.net/qq_42406643/article/details/109545766, 安装不迷茫!
上面讲了这么多,重点来了。不同的需求需要安装的东西是不一样的:
- 电脑看视频,分屏功能,玩游戏,剪辑视频需要用到显卡加速: CUDA Driver 就够了。
- 训练深度学习 络: CUDA TOOLKIT以及cuDNN
如果是后者,那么我们需要关注版本适配的问题,前面说到了安装CUDA TOOLKIT会同时安装CUDA Driver, 而不同显卡适配的CUDA Driver是不同的。所以相当于CUDA TOOLKIT的安装版本由显卡型 决定。而cuDNN负责沟通深度学习和显卡计算平台,需要与计算工具CUDA TOOLKIT适配。剩余的pytorch, tensorflow相应的需要与计算接口cuDNN适配。所以这所有的错综复杂的关系最终可以串称一条单向的关系链。
显卡型 -> 决定CUDA Driver版本 -> 决定 CUDA TOOLKIT的安装版本 -> 决定cuDNN 版本 -> 决定pytorch和tensorflow版本
搞清楚了这些,我们开始搜集线索,开始安装我们的驱动。下面给大家推演一遍:
手上的显卡是RTX 3050,
https://www.nvidia.com/zh-tw/geforce/drivers/ 适配的CUDA版本有495到515。
直接上CUDA TOOLKIT, 通过查阅官方的适配文档 https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html 可以看出,cuda toolkit需要选择11.5及以上的版本。
根据pytorch的安装指令 https://pytorch.org/get-started/locally/
可以得到CUDA的驱动版本和CUDA的版本,以及GPU的内存使用情况
最后我们再来安装一下cuDNN,然后再在下文新建的ros工程下跑一个cnn的demo验证cuDNN安装是否成功。
cuDNN的安装过程极致简洁,我们通过nvidia-smi命令已经确认了CUDA TOOLKIT的版本是11.6,也就是说现在激活的是 /usr/local 路径下的 cuda-11.6 文件夹,我们只需要把cuDNN的静态链接库等文件复制粘贴到对应的文件夹下即可。但,起码11.6版本是只有deb安装包,直接下载安装即可。
-
先下载cuDNN安装包
如果稍微认真一点观察,不难发现,cuDNN v8.3之后只需要下载ubuntu对应的deb包就行了,不需要再下载压缩包然后把某部分代码复制粘贴到指定的文件夹下。登录官 账 ,下载,然后
3 ROS和深度学习相关软件配置
3.1 Anaconda
3.1.1 安装过程
进入anaconda的官 : https://www.anaconda.com/products/individual, 直接下载安装包
sudo ln -s /usr/bin/python3 /usr/bin/python
将python3 软链接到python这个指令里面,如果弹出了这个错误:
ln: failed to create symbolic link ‘/usr/bin/python’: File exists
则删除这一项之后再继续执行软链接:
sudo rm /usr/bin/python
3.1.2 常用指令
conda env list
conda activate <环境名>
conda deactivate <环境名>
conda create -n <环境名> python=<版本 >
conda install <包名>=<版本 或者不需要给这个参数>
conda remove -n <环境名> –all3.2 ROS-Noetic
3.2.1 命令行安装
参考链接:http://wiki.ros.org/noetic/Installation/Ubuntu
3.2.2 bashrc中添加环境变量
3.2.3 其他
3.2.4 安装验证
3.3.2 常用插件
- Material Icon Theme
- Power Mode
- vscode-fileheader
- better comments
- todo highlight
- Bracket Pair Colorization Toggler
- Path intellisense
- todo tree
- code runner
还有一些开发环境需要的插件
- c/c++
- c/c++ extension pack
- python
- python extension pack
- python indent
- ros
3.5 tensorflow(博主知识盲区,TODO)
知识盲区,暂未涉及,待定
4. 创建一个ros工程示例并以vscode作为集成开发环境示例
4.1 初始化ros空间
先使用命令行初始化一个ros工作空间,注意关注ros工程的文件结构以及在什么路径下执行什么命令行
4.2 创建ros包
接着我们再创建一个ros包,按提示依次输入包名hello_rospack和依赖包名roscpp rospy std_mgs geometry_msgs sensor_msgs 使用空格隔开即可。
4.5 配置vscode切换anaconda虚拟环境
以上就是我从下午两点多决议重装系统,傍晚做了个饭,晚上继续撸到快十二点,间间断断地实践,总共装卸了两次,总结出的Ubuntu 20.04系统下,RTX3050显卡,从零开始配置的ROS+深度学习编程环境的总结。将会不定时更新。希望对刚入门的同学有所帮助。祝明天搬砖愉快!
2022年8月28日
Dianye Huang文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门在线安装软件24758 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!