ROS机器人开发第一步:VMware虚拟机安装Ubuntu全攻略
简介:这份PDF教程面向准备进入ROS机器人开发领域的初学者与自学者,聚焦机器人学习环境搭建的第一步——在虚拟机中完成Ubuntu系统的安装,为后续ROS框架的学习扫清环境障碍。资源共1个PDF文件,压缩包约13.36MB,以图文步骤形式呈现,便于对照操作。内容从Ubuntu官方镜像的下载与位数选择讲起,逐步展开VMware虚拟机的创建、操作系统类型与版本设定、虚拟机名称与存储位置的规范、硬盘容量分配,以及UEFI引导等关键设置,并对中文字符路径、镜像版本选择等易错点给出明确提示,最后衔接ROS的安装与环境配置。已有277人学习,适合希望按图索骥、少走弯路地完成开发环境部署的ROS入门者参考。
1. 装 Ubuntu 这件事,决定了你后面 ROS 能不能跑起来
很多人学 ROS 卡住,不是因为看不懂节点通信,而是第一天装系统就翻车了:虚拟机起不来、镜像加载黑屏、分区选错把整块盘格了。这份课程资料的第 2 章就干一件事——把 Ubuntu 装进虚拟机,给后面的 ROS 机器人开发铺好地基。它面向的是刚接触 ros 机器人、手上只有一台 Windows 笔记本、又不想折腾双系统的开发者。整套流程围绕 VMware + Ubuntu 64 位镜像展开,从下载镜像、建虚拟机、配硬件参数到分区安装,每一步都标了“这里别选错”的提示。说白了,这是一份能让你少走两小时弯路的装机笔记,而不是泛泛的系统科普。
2. 为什么用虚拟机跑 Ubuntu:选型理由与镜像准备
2.1 虚拟机方案对 ROS 学习的实际价值
ROS 的主流版本和 Ubuntu 版本是强绑定的,换系统版本往往意味着重装整套工具链。用虚拟机的好处是环境隔离:宿主机继续用 Windows 办公,虚拟机里跑一个干净的 Ubuntu,装崩了直接删掉重建,不影响主系统。对课程学习来说,这一点很关键——你会在同一个 Ubuntu 里反复装 ROS、删工作空间、改环境变量,出问题是常态,能一键回滚比什么都实在。
另一个理由是快照。VMware 支持在装完系统、配好 ROS 之后打一个快照,后面任何一步操作把环境搞坏了,几十秒就能退回去。这个“后悔药”机制在真实开发里也常用,尤其是调试驱动和依赖冲突的时候。相比之下,双系统虽然性能更接近裸机,但分区操作风险高,一旦引导写坏,修复成本远超学习收益。
需要说清楚边界:虚拟机不适合跑对实时性要求高的东西,比如需要直接访问 GPU 做视觉推理、或者要接真实硬件跑底盘控制。这类场景常见做法是虚拟机里写代码、真机上部署,或者干脆用一台独立的小主机装 Ubuntu。课程阶段以理解 ROS 概念、跑通示例为主,虚拟机完全够用。
2.2 镜像与虚拟机软件的准备工作
镜像要从 Ubuntu 官方渠道获取,选 64 位桌面版。课程资料里反复强调“一定选 Ubuntu 64 位”,原因很直接:ROS 的二进制包只提供 64 位版本,32 位系统连安装源都对不上。下载完成后记下 ISO 文件的完整路径,后面建虚拟机时要手动指向它。
虚拟机软件这边,安装路径和虚拟机存放路径是两个不同的概念,课程里专门做了区分。软件安装位置不要出现中文字符,这是老生常谈但每年都有人踩的坑——部分安装器对中文路径处理不干净,会导致组件注册失败。虚拟机文件则建议单独建一个文件夹存放,不要丢在某个盘的根目录或者桌面,原因后面避坑章节会细说。
安装虚拟机软件的过程中有两个勾选项值得注意:一个是加入用户体验改进计划之类的选项,课程建议不勾;另一个是安装时的快捷方式与关联选项,建议勾上,方便后续直接双击虚拟机文件启动。这些选项不影响功能,但会影响你日常使用的顺手程度。
3. 建虚拟机:硬件参数怎么配才不返工
3.1 新建虚拟机的关键选项
打开虚拟机软件,选“自定义(高级)”而不是“典型”,因为典型模式会替你决定一堆参数,后面想改还得进设置里翻。自定义流程里第一个关键点是操作系统类型:选 Linux,版本选 Ubuntu 64 位。这一步选错,后面 UEFI 选项会直接变灰,课程资料里明确写了“这里能够选择 UEFI 的前提是,之前选择的是 Ubuntu 64 位,如果不能选择,请退回去重新选择”。
虚拟机名称同样不要用中文。名称会参与生成虚拟机文件的路径,中文路径在某些工具链里会引发编码问题,虽然不常见,但一旦碰上排查起来很费时间。存放位置选一个专门的文件夹,比如单独建一个vm目录,把所有虚拟机集中管理。
处理器和内存按宿主机实际情况给。一般建议至少 2 核 4GB,宿主机内存 16GB 以上可以给到 4 核 8GB。给太多会拖慢宿主机,给太少编译 ROS 包时会明显卡顿。网络类型默认 NAT 即可,课程阶段不需要虚拟机被局域网其他设备访问。
3.2 磁盘容量与 UEFI 设置
磁盘容量课程给的下限是 25GB,并建议“尽可能大”。这个数字要理解成底线而不是推荐值:Ubuntu 系统本身占 10GB 左右,ROS 完整安装再加几个 GB,剩下的空间要留给工作空间、编译中间文件和数据集。实际配置时给 60GB 到 80GB 更稳妥,虚拟机磁盘是稀疏分配的,用多少占多少,不会一上来就吃掉宿主机全部空间。
UEFI 选项必须勾选。课程资料的原话是“这个一定要选择 UEFI,会涉及到后期的分区”。原因在于 UEFI 引导和传统 BIOS 引导的分区结构不同,安装时的分区界面会随之变化。如果这里没勾,后面分区步骤和课程截图对不上,新手很容易在分区表类型上选错。
硬件参数配完后,还要在虚拟机设置里挂载 ISO 镜像。课程里用四个编号标注了操作顺序:打开虚拟机设置、找到 CD/DVD 设备、选择“使用 ISO 映像文件”、浏览到下载好的镜像路径。挂载完成后启动虚拟机,看到 Ubuntu 的启动标志就说明镜像加载成功,进入安装流程。
4. 安装 Ubuntu:分区是全场最容易翻车的一步
4.1 安装向导里的语言、分辨率与更新选项
虚拟机启动后先进入试用桌面,课程建议先别急着点安装,而是通过右上角菜单进设置,把显示分辨率调到 1920×1080。这一步不是必须的,但默认分辨率下安装窗口可能显示不全,按钮被遮住,新手会以为卡住了。调完分辨率再点桌面上的 Install Ubuntu 进入安装向导。
语言和键盘布局按默认走即可,课程里提到系统语言可以选英文也可以选中文,选英文的好处是报错信息能直接搜到对应资料。接下来的更新选项里有一个“安装 Ubuntu 时下载更新”的勾选项,课程标注“千万不能勾选”。原因是安装阶段联网下载更新会大幅拉长安装时间,而且网络不稳时可能卡在某个包上导致安装失败。系统装完再统一更新,可控性高得多。
安装类型这一步是分水岭。向导会提供“清除整个磁盘并安装”和“其他选项”两个主要路径,课程明确要求“一定选择其他选项”。选“清除整个磁盘”在虚拟机里理论上只影响虚拟磁盘,但如果你之前挂载过物理磁盘或者操作失误,风险是实打实的。手动分区虽然多几步,但每一步你都清楚自己在干什么。
4.2 手动分区的具体操作
进入手动分区界面后,会看到一块未分配的空闲空间。常见做法是分三个区:EFI 系统分区、交换分区和根分区。EFI 分区给 512MB 到 1GB,类型选 EFI 系统分区,这是 UEFI 引导必需的;交换分区按内存大小给,4GB 内存给 4GB 交换空间,用途是内存不足时兜底;剩下的全部给根分区,挂载点选/,文件系统用 ext4。
分区操作的本质是先在空闲空间上“新建分区表”,再逐个添加分区。如果界面里没有空闲空间可选,说明虚拟磁盘没被正确识别,常见原因是创建虚拟机时磁盘类型选错,或者 ISO 挂载有问题。这时候不要硬着头皮往下走,退回去检查虚拟机的磁盘设置。
分区确认后向导会列出即将执行的操作,包括格式化哪些分区。这一步要逐行看一遍,确认没有动到不该动的地方。确认无误后开始安装,期间会提示设置用户名、计算机名和密码。用户名建议全小写英文,不要带空格和特殊字符,因为这个名称会出现在终端提示符和家目录路径里,后面敲命令时天天见到。
安装完成后提示重启,重启前虚拟机会提示“请移除安装介质并按回车”,直接回车即可。再次进入系统,能看到登录界面并正常登录,说明系统装好了。此时可以先打个快照,命名成“ubuntu-clean”,后面装 ROS 出任何问题都能退回到这个干净状态。
5. 避坑清单:这几处错了要重装
5.1 现象:虚拟机启动后黑屏或反复回到启动菜单
原因通常是 ISO 镜像没有正确挂载,或者虚拟机的 CD/DVD 设备被设置成了“启动时连接”但路径指向了空文件。另一种可能是镜像下载不完整,文件校验对不上。
解决:进虚拟机设置检查 CD/DVD 设备,确认勾选了“启动时连接”且路径指向完整的 ISO 文件。如果路径没问题,重新下载镜像并核对文件大小。启动时按 ESC 或进 BIOS 调整启动顺序,确保光驱排在硬盘前面。
5.2 现象:分区界面看不到空闲空间,或者 UEFI 选项是灰的
原因有两个层面。UEFI 灰掉基本可以确定是新建虚拟机时操作系统版本没选 Ubuntu 64 位,课程资料专门标注了这一点。看不到空闲空间则多半是虚拟磁盘没有初始化,或者之前装过系统残留了分区表。
解决:UEFI 的问题只能退回去重建虚拟机,改操作系统版本后重新走一遍配置。空闲空间的问题可以在分区界面里检查磁盘状态,必要时用安装器自带的分区工具删除残留分区,重新建立空闲空间。
5.3 现象:安装过程中卡在“正在下载语言包”或某个更新步骤
原因是安装时勾选了联网下载更新,而网络环境不稳定。课程里“千万不能勾选”的提示就是针对这个。
解决:强制关闭虚拟机,重新启动安装流程,在更新选项那一步取消所有联网下载的勾选。系统装完进入桌面后再手动执行更新,网络断了可以重试,不会把安装流程卡死。
5.4 现象:装完重启进不了系统,卡在 GRUB 命令行
原因是引导分区配置有问题,常见于手动分区时 EFI 分区没有正确设置挂载点或文件系统类型。UEFI 模式下缺少可引导的 EFI 分区,系统就找不到启动项。
解决:用安装介质重新进入试用环境,用分区工具检查 EFI 分区是否存在、类型是否为 EFI 系统分区、大小是否足够。如果分区结构已经乱了,最省时间的做法是删掉虚拟机重建,把分区步骤重新走一遍,这次严格按 EFI + swap + 根分区的结构来。
5.5 现象:虚拟机越用越慢,宿主机磁盘空间莫名减少
原因是虚拟机磁盘文件默认是稀疏分配的,但快照会实打实占用空间,多个快照叠加后磁盘占用会远超预期。另一个原因是虚拟机文件放在了系统盘或桌面,宿主机做磁盘清理或系统更新时容易误伤。
解决:把虚拟机文件迁移到专门的目录,VMware 支持在设置里更改存储位置。定期清理不用的快照,只保留关键节点的一两个。宿主机磁盘空间紧张时,优先检查虚拟机目录的大小,而不是盲目删系统文件。
6. 装完系统之后:验证环境与打快照的习惯
系统装完不等于环境可用,先做几项验证再往下走。打开终端,跑几条命令确认基础环境正常:
# 确认系统架构是 64 位,ROS 二进制包只支持 64 位 uname -m # 查看 Ubuntu 版本号,后面选 ROS 版本要对得上 lsb_release -a # 确认磁盘分区和挂载点符合预期 df -h # 确认能正常联网,后面装 ROS 依赖要用 ping -c 4 archive.ubuntu.comuname -m输出x86_64才说明是 64 位系统,如果输出i686之类的,说明镜像选错了,得重装。lsb_release -a给出的版本号决定了你能装哪个 ROS 发行版,这个对应关系在 ROS 官方文档里有明确表格,装之前先查清楚。df -h用来确认根分区挂载正常、剩余空间够用,如果根分区只剩几个 GB,后面编译 ROS 包会直接失败。ping那一条是确认网络通不通,不通的话先解决虚拟机网络设置,别急着装软件。
验证通过后立刻打快照。我一般会打两个:一个叫clean-base,系统刚装完、什么都没配的状态;另一个叫ros-ready,装完 ROS 并验证过示例节点的状态。前者用于环境彻底搞坏时重来,后者用于日常开发中误删依赖或改坏配置时回退。快照不是越多越好,每个快照都占磁盘,保留这两个关键节点足够覆盖绝大多数场景。
还有一个容易被忽略的点:虚拟机的时间同步。Ubuntu 装完后如果时间不对,会导致软件源签名校验失败,表现为apt update报各种证书错误。遇到这种情况先检查系统时间,再排查网络。这个坑我在早期折腾环境时踩过不止一次,明明网络是通的,更新就是失败,最后发现是虚拟机休眠后时间漂移了。
从那以后我每次装完系统,都会先跑一遍上面那几条验证命令,再打快照,最后才动 ROS 安装。这个顺序看起来多花十分钟,但能避免后面在环境问题上反复折腾。希望帮到你。
本文还有配套的精品资源,点击获取