多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

那是一个不眠之夜:我的四次 Ubuntu 系统安装回忆录

那是一个不眠之夜:我的四次 Ubuntu 系统安装回忆录 引言作为物联网工程专业的本科生早在大一上学期我们学校就开设了一门Linux相关课程这门课当时只有三节在我看来这就是一门水课以至于我现在连这门课叫什么名字都忘记了这门课程也没有纸质考试只需要写一个报告上交就行了。如果想要拿高分就只需要现场跟老师交流一下学习心得就行了老师在课上只教了一些简单的Linux操作命令后面为了体验Linux操作环境就选择了在虚拟机里面安装Linux操作系统最后结课的时候跟老师线下交流了一波交流的过程还是挺顺利的这门课的总评分也很高这门课虽然并没有让我学到太多关于Linux系统的相关知识但是让我知道了有这么个东西并且还让还让我对这个东西产生兴趣第一次尝试由于当时大一的时候我使用的笔记本是华为轻薄本且是我姐传给我的所以那台笔记本的性能比较差那台轻薄本的CPU型号是Intel的8250U为了提升电脑性能当时还加装了内存条和固态硬盘。但是都没什么太大的效果我在使用电脑的过程中能直观的感受到系统的卡顿。但是当时在虚拟机中运行Ubuntu的时候就极少出现系统卡顿的现象这让我一度认为这是Windows的系统优化做的不好毕竟电脑甚至还勉强能打打CSGO那时还听网上很多人都在说Linux系统的操作效率会比Windows高毕竟终端操作不需要渲染图形化界面且用终端操作系统这本身就是一件让人感觉很高级的事情影视作品中的黑客就是一直在用终端来控制电脑的。所以多少也是有着一些想装逼的想法在里面的这就让当时的我萌生了安装双系统的想法。这样一来既能保留原有的系统资料不丢失还能有着更加流畅的使用体验。大一那年我的操作是在网上购买一个外接的固态硬盘然后将Ubuntu系统安装到外界固态硬盘中去这样就能够实现拔掉固态硬盘时是Windows插上固态硬盘后是Ubuntu在物理上隔绝两个操作系统防止二者之间出现干涉的情况。但是这套方案有着一些无法弥补的缺陷在使用移动硬盘时读写速度会降级且安全性较差这点后面会提到。第一次自己手动安装没有什么经验直接把电脑干崩溃了不过好在Windows还能正常启动运行后面为了能够顺利安装还在闲鱼上买了远程安装指导。安装完成之后其实也并没有我想象中那么好用因为Ubuntu操作系统的操作风格和Windows相差太大对于只接触过Windows的我来说使用图形化界面就像日常吃饭喝水一样早已习惯了图形化界面操作的我来说这个跨度有点太大了我时常会在Ubuntu的终端面前发呆不知道该做些什么有了明确的目标之后又不知道对应的命令应该如何使用。然后又只能转头去使用Ubuntu的图形化界面去进行操作这种本末倒置的使用方式让当时的我非常难受。再加上当时安装的Ubuntu版本较为老旧对于笔记本的硬件驱动支持的不是很完善其中最致命的是网卡驱动经常会出现安装后无法连接网络的情况。有一次用完电关机的时候系统没有完全关机我就直接拔掉了移动硬盘这导致系统彻底崩溃那时我觉得崩就崩了吧反正现在又用不到Ubuntu且Ubuntu的操作体验并没有让我想象中那么好第一次尝试也就到此结束第二次尝试到了大二我换了新电脑是联想的拯救者它的性能是远超大一的那台轻薄本的运行Windows的流畅度也很高。虽然平时的学习中在跨平台编译时偶尔也会用到Ubuntu但是虚拟机的性能也能够满足我的需求了如果不出意外的话在我接下来的大学生活中我应该不会产生安装双系统的想法了。有一次我在B站上看到了一个播主发了一期Ubuntu美化的教程最终的美化效果类似于MacOS这让一下又吸引了我让我又产生了安装双系统的念头没错这一次还是因为想装逼。但也不完全是毕竟大一下学期到大二上学期的这一段时间里我也在不断的与Linux操作系统进行磨合。那时的我认为自己应该能够驾驭它了所以我就开始了自己的第二次尝试这一次的打法思路和上一次大体相同同样是在移动硬盘中安装双系统。但是天有不测风云当时我在安装双系统时选错了分区导致我的Windows系统出现的故障无法正常启动了。这让当时的我如遭雷击尝试了很多修复的办法最终还是只能重装系统。系统恢复之后也没有心境去搞这些了第二次尝试还没开始就草草结束了第三次尝试大二下学期我们学校给我们拨了一批设备是TURTLEBOT3型号的ROS2小车当时学校是原价8000左右一台购买的最初是打算买来给大四学生上实训课使用的每年也就只有实训的那一段时间会用到大部分时间都是在吃灰。搬到的新的实验室之后我们就向学校的老师去要这些设备老师也是非常放心的把这些设备给我们了。拿到这些设备之后我们就开始去学习学习过程中我们了解到了ROS2我们发现ROS2与Ubuntu的适配做的最好几乎是每一代长期支持的Ubuntu都有对应的ROS2版本。早期在学习ROS2的时候我们都是在虚拟机中进行操作的随着时间的推移我们想要进行的操作越来越复杂从最开始的建图到后面的导航再到多机协同。很多时候都需要在现场进行长时间的调试。但是我的游戏本续航太差且非常笨重这个时候我为了能够减轻调试时的负担选择了从咸鱼上淘了一个二手的ThinkPad虽然性能并不是很强劲但是对于Ubuntu来说也够用了我当时刚买回来的时候笔记本的硬盘容量是512G一半用来装Windows另一半装了Ubuntu后来感觉Windows的作用不是很大就全部刷成了Ubuntu其中安装的版本是22.04由于笔记本不是很新所以这一次的安装没有像第一次那样出现掉驱动的问题后面我就一直使用这台笔记本进行ROS2的学习第四次尝试其实到这里故事也就应该结束了但是在大二下学期的中后期一个其他学校的朋友购买了一个livox的mid-360s雷达由于那一段时间他身边事情比较多所以就希望我来帮他进行一下雷达的第一阶段开发后来他把项目中需要用到的雷达模块和RDK S100都借给我了拿到东西之后我就开始尝试进行开发起初遇到了一些小困难因为他当时购买的太早了以至于我开发的时候官方还没有在Github上更新该版本雷达的SDK后续的开发还算顺利但是当时最大的问题就是当尝试在Rviz2中查看实时建图结果时会出现卡顿的情况这是因为S100的算力虽然不差但是图形渲染能力较弱。因此当时只能采取分布式可视化的操作即在S100上运行SLAM节点在电脑端启动Rivz2去订阅S100发布的话题在电脑端查看节点的更新状态在MID-360s雷达操作手册文章中有相关的操作教程建图的效果如下当时为了能够在PC端最大限度的发挥独立显卡的性能我采用了Windows的WSL进行部署这个部署的过程也较为耗时因此在那个时候我就在想要是能给我的电脑安装双系统是不是就没那么多事了真正让我下定决心的是当时工作室那边还有一个机械的学长他当时在自己搞机械臂他从最底层的SDK开始写起一点点搭建机械臂的操控架构。当时他给我们演示的时候我发现他就是在自己的电脑上安装了双系统。这就让我下定决心自己也要在电脑上安装双系统这次我打算直接安装在电脑内部而不是安装在移动硬盘中但是当时一来是感觉自己电脑的硬盘空间不是很充足二来是当时自己也不是很有时间最开始我的打算是先攒钱给电脑加一根固态硬盘然后再安装双系统。但是固态硬盘的价格始终居高不下所以这件事就一直拖到了暑假接下来我就会介绍第四次安装双系统的详细过程让你能够流畅的安装Linux双系统对应的文章如下理论知识介绍——了解自己的需求再安装
返回列表