模块 0 · 开机就绪:开发环境与 Linux 急救包(细纲 · 6 集)

目标:把"连 Ubuntu 都没装过"的学员带到能流畅使用终端和 VS Code。
前置:一台开启虚拟化的 Windows 10/11 电脑(无需预装 Linux)。
产出包:code/m0_setup/(check_env.sh + practice_python/);学员侧练习目录 ~/dev/practice/。
版本钉死:Ubuntu 24.04 LTS(Noble) · Python 3.12 · WSL2 · 本模块不出现 ROS 概念。


0.1 课程导学:学完你能做出什么

字段 内容
本集目标 建立预期:知道学完后能做出什么、要准备什么、版本锁死在哪
开场演示 播放最终项目录屏:Gazebo Harmonic 里键盘遥控小车送货,RViz2 同步显示
知识点 ① 本课终点="仿真小车送货"综合项目 ② 学习地图:环境→通信→工具→建模仿真→项目 ③ ROS2=通信中间件+工具+生态,不是"装一个软件" ④ 版本卡:Ubuntu 24.04 + ROS2 Jazzy + Python 3.12
跟做步骤 1 不用终端;对照大纲"课程地图"逐格讲 10 个模块
2 放最终项目录屏,指认:小车、目标点、激光、TF
3 展示版本卡一页:Ubuntu 24.04 / Jazzy / Python 3.12 / WSL2
4 说明配套:讲义、小作业、报错速查、CONTRACT.md
关键命令 无终端操作(纯讲解);记住版本卡三元组:Ubuntu 24.04 / Python 3.12 / 后续 ROS2 Jazzy
常见坑 ① 把 ROS2 当成装完就有界面的软件 → 它是开发框架,界面要自己配 ② 一上来想学 Nav2/机械臂 → 本课先打好通信与仿真底子 ③ 跟着旧教程装 Humble/Foxy → 全课只认 24.04 + Jazzy + 3.12
预期输出 学员能口头说出最终项目长什么样、三个锁定版本是什么
小作业 写 3 句话:我学完想做出什么 / 我电脑是什么系统 / 我每周能投入几小时
下集预告 下集从零把 Ubuntu 24.04 装进你的 Windows

0.2 安装 Ubuntu 24.04(WSL2)(约 20 分钟,安装类)

字段 内容
本集目标 装好 WSL2 + Ubuntu 24.04,wsl -l -v 显示 VERSION 2,WSLg 能弹窗
开场演示 Windows 桌面上弹出 xeyes 两只小眼睛窗口(Linux GUI 跑在 Windows 里)
知识点 ① WSL2 与 WSL1 的差别(真 Linux 内核)② 发行版代号 noble ③ .wslconfig 限制内存/CPU ④ WSLg 图形转发 ⑤ Windows 侧命令 vs Ubuntu 侧命令要分清
跟做步骤 1 Windows 开始菜单搜 PowerShell → 右键"以管理员身份运行"
2 安装:wsl --install -d Ubuntu-24.04
3 按提示重启电脑;重启后自动弹出 Ubuntu 窗口,设置 UNIX 用户名/密码(建议英文用户名)
4 回到 Windows PowerShell 验证:wsl -l -v(NAME=Ubuntu-24.04,VERSION=2)
5 若 VERSION 不是 2:wsl --set-version Ubuntu-24.04 2;设默认:wsl --set-default-version 2
6 在 Ubuntu 终端确认系统:lsb_release -a(应含 Ubuntu 24.04 / noble)
7 编辑 Windows 用户目录下的 .wslconfig(如 C:\Users\<你>\.wslconfig)限制资源:[wsl2] 下写 memory=4GB、processors=4,然后 wsl --shutdown 再进
8 WSLg 验证:sudo apt update && sudo apt install -y x11-apps && xeyes
关键命令 wsl --install -d Ubuntu-24.04、wsl -l -v、wsl --set-version Ubuntu-24.04 2、wsl --set-default-version 2、wsl --update、lsb_release -a、xeyes
常见坑 ① WSL1/2 搞混:wsl -l -v 的 VERSION 列是 1 → 执行 wsl --set-version Ubuntu-24.04 2 转换 ② WSLg 黑窗/无窗口:先 wsl --update,确认 Windows 10 21H2+ 或 Windows 11;虚拟化未开进 BIOS 打开 ③ 在 Windows PowerShell 里敲 Linux 命令报"不是内部或外部命令"→ 先进 Ubuntu 终端 ④ 中文/特殊字符用户名导致路径乱码 → 尽量用英文用户名
预期输出 wsl -l -v 显示 Ubuntu-24.04 / Running / 2;Ubuntu 终端 lsb_release -a 含 24.04;xeyes 弹出小眼睛窗口
小作业 截图 wsl -l -v 与 xeyes;关掉 Ubuntu 窗口再从开始菜单打开,确认用户和文件还在
下集预告 系统有了,下集学会在终端里活下来

0.3 Linux 命令行急救包

字段 内容
本集目标 会用目录、文件、权限、进程、管道、sudo 完成日常操作,不再怕黑窗口
开场演示 一个终端 30 秒连招:建目录 → 写文件 → 看权限 → 查进程 → 杀掉卡住的进程
知识点 ① / 根目录与 ~ 家目录 ② 权限 rwx 与 chmod ③ sudo 什么时候该用 ④ 管道 `
跟做步骤 1 打开终端(Ctrl+Alt+T,或 Windows Terminal → Ubuntu)
2 认位置:pwd、ls -la、cd ~、pwd
3 建练习区:mkdir -p ~/dev/practice && cd ~/dev/practice
4 写文件:echo "hello linux" > hello.txt、cat hello.txt、echo "line2" >> hello.txt
5 看权限:ls -l hello.txt、chmod +x hello.txt、再 ls -l 看多了 x
6 管道:`ls -l
关键命令 pwd、ls -la、cd、mkdir -p、rm、cat、echo >、echo >>、chmod +x、grep、ps aux、kill、sudo
常见坑 ① / 与 ~ 混用:cd dev 会报 bash: cd: dev: No such file or directory → 写全 ~/dev 或先 pwd 确认位置 ② rm -rf 误删家目录 → 先 ls 看清再删;练习时删具体文件名 ③ sudo 乱用/密码盲打不回显:输密码时屏幕没字是正常的,输完回车 ④ 文件名带空格没加引号:cat my file.txt 会当成两个文件 → cat "my file.txt"
预期输出 ~/dev/practice/ 存在且有 hello.txt(两行内容);ls -l 能读出 rwx;tree ~/dev 显示目录树
小作业 不查笔记:在 ~/dev/practice 下建 day1/hello.txt,把内容读出来,并用管道找出名字带 txt 的文件
下集预告 会走路了,下集让 apt 安装不再卡成 PPT

0.4 apt、软件源与国内镜像

字段 内容
本集目标 把 apt 源换成国内镜像(noble),apt update/install 流畅不超时
开场演示 对比换源前后 sudo apt install tree 的下载速度(一个龟速一个秒下)
知识点 ① apt 是 Ubuntu 的包管理器 ② 源配置在 /etc/apt/sources.list.d/ ③ Ubuntu 24.04 对应代号 noble,源里不能写成 jammy ④ 改配置先备份 ⑤ apt update 刷新索引 vs apt upgrade 升级已装包
跟做步骤 1 确认版本:lsb_release -a(noble)
2 备份原配置:sudo cp /etc/apt/sources.list.d/ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources.bak
3 查看原文件:cat /etc/apt/sources.list.d/ubuntu.sources
4 用 VS Code 或 nano 编辑,把下载源改成国内镜像(清华/阿里/中科大),确认 Suites 一行是 noble、noble-updates、noble-security
5 刷新索引:sudo apt update(应全部来自镜像域名,无 Failed)
6 试装:sudo apt install -y tree htop vim
7 验证:tree --version、apt policy tree
关键命令 sudo apt update、sudo apt upgrade -y、sudo apt install -y <包名>、apt search、apt policy、sudo cp ... .bak
常见坑 ① 源与 24.04 不匹配:Suite 写成 jammy/22.04 → apt update 报 404 Not Found 或依赖错乱 → 全部改成 noble ② 没 update 直接 install → Unable to locate package → 先 sudo apt update ③ 改坏 ubuntu.sources 进不了 apt → 用 .bak 覆盖回去 ④ 复制镜像站配置时把整段 Sources 拼错格式 → 保持与原文件相同的 Types/URIs/Suites/Components 结构
预期输出 sudo apt update 全部 Hit/Get,域名是所选镜像站;tree、htop 安装成功并能运行
小作业 换成你常用镜像站,安装 htop 并运行一次(按 q 退出)
下集预告 软件装得动了,下集配一个舒服的写代码环境

0.5 VS Code + WSL + 中文

字段 内容
本集目标 Windows VS Code 经 WSL 扩展连进 Ubuntu,Python 3.12 插件可用,界面中文
开场演示 左侧文件树打开 ~/dev/practice,右侧 Python 文件点"运行"终端打印结果
知识点 ① VS Code 装在 Windows,代码与终端在 WSL ② Remote - WSL 扩展是桥梁 ③ Python 扩展要装到 WSL 侧 ④ Chinese 语言包只影响界面 ⑤ VS Code 里的终端就是 Ubuntu bash
跟做步骤 1 Windows 侧下载并安装 VS Code(code.visualstudio.com)
2 扩展商店安装 WSL(ms-vscode-remote.remote-wsl)
3 打开 Ubuntu 终端,执行 code .(或 VS Code 左下角 → Connect to WSL)
4 在 WSL 窗口里再装扩展:Python(ms-python.python)、Chinese (Simplified) Language Pack
5 确认终端是 Linux:uname -a(含 Linux)、python3 --version(3.12.x)
6 新建文件 ~/dev/practice/hello.py,写一行 print("hello vscode"),右上角运行
7 重启 VS Code 使中文生效
关键命令 code .、uname -a、python3 --version
关键文件 ~/dev/practice/hello.py
常见坑 ① 没走 WSL 远程:标题栏没有 [WSL: Ubuntu-24.04],终端是 PowerShell、路径是 C:\... → 用 code . 从 Ubuntu 终端打开 ② 插件装在 Windows 侧导致 Python 扩展找不到解释器 → 在 WSL 窗口的扩展页搜 Python,确认显示"Install in WSL: Ubuntu-24.04" ③ 直接在 Windows 资源管理器改 WSL 文件(\\wsl$\...)偶尔不同步 → 统一在 VS Code WSL 窗口里改
预期输出 VS Code 标题栏含 [WSL: Ubuntu-24.04];终端 uname -a 是 Linux;python3 --version 为 3.12.x;hello.py 运行打印 hello vscode
小作业 用 VS Code 打开 ~/dev/practice,写一个打印当前时间的脚本并跑通(本模块主作业)
下集预告 环境舒服了,下集用 Python 3.12 写第一个"机器人"小脚本

0.6 Python 3.12 快速上手

字段 内容
本集目标 会写类、异常、主入口,跑通 MiniRobot 小脚本,为 rclpy 节点打底
开场演示 运行 mini_robot.py:电量从 100 递减,移动报数,没电时抛出异常并被优雅捕获
知识点 ① 只用 python3(3.12.x),不用 python ② 缩进即语法(4 空格)③ class 与 self ④ try/except 处理异常 ⑤ if __name__ == '__main__': 入口 ⑥ 本课不用 conda/pyenv,系统 Python 3.12 足够
跟做步骤 1 mkdir -p ~/dev/practice && cd ~/dev/practice
2 VS Code 新建 mini_robot.py,文件头写 3 行中文注释(用途/作者/日期)
3 定义 MiniRobot 类:__init__ 电量 100、move() 前进并扣电、电量 < 10 时 raise RuntimeError("电量不足")
4 写 main():循环调用 move(),try/except 捕获并打印友好提示
5 运行:python3 mini_robot.py
6 故意把一行改成 Tab 缩进,再运行看 IndentationError,改回 4 空格
关键命令 python3 --version、python3 mini_robot.py
关键文件 ~/dev/practice/mini_robot.py(可对照 code/m0_setup/practice_python/mini_robot.py)
常见坑 ① Tab 与空格混用:IndentationError: inconsistent use of tabs and spaces in indentation → VS Code 设置 Tab=4 空格,全文件统一 ② 用 python 而不是 python3:python: command not found 或跑成旧版本 → 永远 python3 ③ 以为必须上 conda/venv:本课系统 Python 3.12 即可,混用环境反而找不到包 ④ 用了中文引号/冒号导致 SyntaxError → 标点全部用英文
预期输出 终端依次打印电量 100→…→低于阈值;捕获到"电量不足"并正常退出;python3 --version 为 3.12.x
小作业 给 MiniRobot 加 turn_left() 方法并在 main() 里调用一次(5 分钟内)
下集预告 进入模块 1:安装 ROS2 Jazzy,让真正的机器人软件跑起来

本模块代码演进

集 对 code/ / 学员侧的改动
0.1 无代码;发版本卡与课程地图
0.2–0.4 环境侧操作(WSL / Ubuntu / apt),无仓库代码
0.5 学员侧建 ~/dev/practice/hello.py
0.6 对照/复制 code/m0_setup/practice_python/mini_robot.py 到 ~/dev/practice/mini_robot.py 并改造
模块末 跑 code/m0_setup/check_env.sh:本模块只看"Ubuntu 24.04 / Python 3.12"两项;ROS/Gazebo 项留到模块 1、7 装完再全绿

配套讲义:讲义/模块0-开机就绪/01–06。
配套代码:code/m0_setup/(check_env.sh、practice_python/)。
学员侧统一练习路径:~/dev/practice/(模块 1 起工作空间改为 ~/ros2_ws)。

posted @ 2026-11-11 14:56  老丁的自我修养  阅读(0)  评论(0)    收藏  举报