2. Ubuntu 系统准备:双系统安装、虚拟机配置、Ubuntu 20.04 LTS 安装与基础设置
做机器人仿真,绕不开 Linux 系统。Windows 当然也能跑一些工具,但 ROS(机器人操作系统)的原生舞台就是 Ubuntu。我个人习惯用 Ubuntu 20.04 LTS,它稳定、社区活跃,而且和 ROS Noetic 是绝配。
这一章,我们就把 Ubuntu 环境搭起来。你有两条路可以选:双系统 或者 虚拟机。我会把两种方案都讲清楚,你根据自己的硬件情况挑一个就行。
核心结论: 如果你需要实时控制、GPU 直通、或者跑 Gazebo 大型仿真,选双系统。如果你只是写写 Python 脚本、跑跑小 demo、或者不想重启电脑,虚拟机完全够用。
2.1 方案一:双系统安装(性能优先)
双系统就是在一台电脑上同时装 Windows 和 Ubuntu,开机时选择进哪个系统。好处是硬件性能完全释放,坏处是安装过程稍微麻烦一点。
2.1.1 准备工作
- 一个 8GB 以上的 U 盘(用来做启动盘)
- Ubuntu 20.04 LTS 镜像(去官网下载,别去第三方网站)
- Rufus 或 balenaEtcher(写盘工具,Windows 下用)
- 磁盘预留空间(至少 50GB,我建议 100GB+)
重要提醒: 安装双系统前,一定要备份 Windows 里的重要数据!我曾经帮一个朋友装系统,他忘了备份桌面上的项目文件,结果分区表一改,数据全丢了。血的教训。
2.1.2 制作启动盘
- 插入 U 盘,打开 Rufus。
- 设备选择你的 U 盘,引导类型选择「磁盘或 ISO 镜像」。
- 点击「选择」,找到你下载的 ubuntu-20.04.6-desktop-amd64.iso。
- 分区类型选 ,目标系统类型选 UEFI(非 CSM)。
- 点击「开始」,等待写入完成。
小技巧: 写入完成后,U 盘会被格式化,名字会变成「UBUNTU 20_0」。如果 Windows 提示需要格式化,千万别点!直接重启电脑进 BIOS 设置 U 盘启动就行。
2.1.3 磁盘分区
在 Windows 里,右键「此电脑」→「管理」→「磁盘管理」。找一个空间比较大的盘(比如 D 盘),右键「压缩卷」,输入你要腾出的空间大小(单位 MB)。
举个例子:你想给 Ubuntu 100GB,就输入 102400。压缩后会多出一块「未分配空间」,这就是 Ubuntu 的安身之所。
2.1.4 安装过程
- 重启电脑,按 F2/F12/Del 进 BIOS,设置 U 盘为第一启动项。
- 进入 Ubuntu 安装界面,选择语言为「中文简体」。
- 键盘布局选「English (US)」—— 我建议别选中文布局,写代码时符号位置会乱。
- 安装类型选择「其他选项」,手动分区。
手动分区时,我一般这样分:
| 挂载点 | 大小 | 类型 | 说明 |
|---|---|---|---|
| / | 30-50 GB | ext4 | 根目录,系统文件放这里 |
| /home | 剩余空间 | ext4 | 用户数据,代码、文档都在这 |
| swap | 8-16 GB | 交换空间 | 内存不够时当虚拟内存用 |
| /boot/efi | 512 MB | EFI 系统分区 | 引导加载器,必须和 Windows 的 EFI 分区同一个盘 |
我的习惯: 我会把 /home 单独分大一点。因为以后装 ROS、下载包、存仿真模型,全往 /home 里塞。根目录 40GB 绰绰有余,别贪多。
2.1.5 引导修复(常见坑)
安装完成后重启,如果直接进了 Windows 没看到 Ubuntu 菜单,别慌。进 BIOS 把启动顺序里的「Ubuntu」调到第一位。如果还不行,用 EasyBCD 或者 Boot-Repair 工具修复一下。
我曾经遇到过: 有一次装完双系统,Ubuntu 死活起不来,卡在黑屏。后来发现是 NVIDIA 显卡驱动的问题。解决办法是:在 grub 启动项里按 e,在 quiet splash 后面加上 nomodeset,就能进系统了。进去后再装官方驱动。
2.2 方案二:虚拟机配置(灵活方便)
如果你不想折腾分区,或者电脑只有一块硬盘不想动,虚拟机是更好的选择。我平时写代码、测试脚本都在虚拟机里做,只有跑大型仿真才切到双系统。
2.2.1 虚拟机软件选择
| 软件 | 优点 | 缺点 |
|---|---|---|
| VirtualBox | 免费、开源、轻量 | 3D 加速一般,USB 直通稍弱 |
| VMware Workstation | 性能好、功能全、快照稳定 | 收费(有个人免费版) |
我个人推荐 VirtualBox,因为免费且够用。如果你预算充足或者公司报销,VMware 体验更好。
2.2.2 创建虚拟机
- 打开 VirtualBox,点击「新建」。
- 名称填「Ubuntu 20.04」,类型选 Linux,版本选 Ubuntu (64-bit)。
- 内存分配:至少 4GB,我建议 8GB。你想想看,后面跑 ROS 和 Gazebo,内存小了会卡死。
- 虚拟硬盘:选 VDI 格式,动态分配,大小给 50GB 以上。
2.2.3 安装 Ubuntu
- 在虚拟机设置里,存储 → 控制器 IDE → 选择你的 Ubuntu ISO 镜像。
- 启动虚拟机,进入安装界面。
- 安装过程跟双系统类似,但分区简单很多——直接选「清除整个磁盘并安装 Ubuntu」就行。
- 安装完成后,记得安装「增强功能」(Devices → Insert Guest Additions CD image)。
小技巧: 安装增强功能后,虚拟机才能自适应窗口大小、共享剪贴板、拖拽文件。我每次装完虚拟机第一件事就是装这个,不然分辨率卡在 800x600 太难受了。
2.2.4 虚拟机资源分配建议
| 资源 | 最低配置 | 推荐配置 |
|---|---|---|
| CPU 核心数 | 2 | 4 |
| 内存 | 4 GB | 8 GB |
| 显存 | 128 MB | 256 MB |
| 磁盘大小 | 50 GB | 100 GB |
2.3 Ubuntu 20.04 基础设置
不管你是双系统还是虚拟机,装完系统后都要做几件事。这些是我每次装机的标准流程。
2.3.1 更换软件源
Ubuntu 默认的软件源在国外,下载速度很慢。换成国内镜像源会快很多。
# 备份原源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# 编辑源列表
sudo gedit /etc/apt/sources.list
# 把里面的内容全部替换为阿里云源(或者清华、中科大源)
# 阿里云源(Ubuntu 20.04):
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
# 更新
sudo apt update
sudo apt upgrade -y
我的习惯: 我一般用清华源,速度稳定。换源后第一次 apt update 可能会有点慢,因为要重建索引,后面就快了。
2.3.2 安装常用工具
sudo apt install -y vim git curl wget net-tools htop build-essential
这些工具后面都会用到。vim 用来改配置文件,git 用来拉代码,htop 用来监控系统资源。
2.3.3 设置中文输入法
如果你需要输入中文,在 Settings → Region & Language → Input Sources 里添加「Chinese (Intelligent Pinyin)」。我个人习惯用英文系统 + 中文输入法,这样终端不会乱码。
2.3.4 安装显卡驱动(双系统用户必看)
如果你有 NVIDIA 显卡,建议装官方驱动。
# 查看推荐驱动版本
ubuntu-drivers devices
# 自动安装推荐驱动
sudo ubuntu-drivers autoinstall
# 或者手动安装指定版本
sudo apt install nvidia-driver-470
# 重启
sudo reboot
注意: 虚拟机用户不需要装显卡驱动,VirtualBox 会用默认的 vboxvideo 驱动。如果你在虚拟机里装 NVIDIA 驱动,反而会出问题。我见过有人这么干,结果系统直接黑屏。
2.3.5 关闭系统休眠(可选)
服务器或者长期运行的机器,建议关掉自动休眠。
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
2.4 验证安装
打开终端,输入以下命令,确认系统信息:
lsb_release -a
uname -a
free -h
df -h
你应该能看到 Ubuntu 20.04.6 LTS、内核版本、内存和磁盘信息。如果一切正常,恭喜你,环境准备好了。