3、操作系统搭建:Ubuntu 20.04 LTS 安装、系统配置、SSH远程连接
做座舱测试,操作系统是地基。我见过不少团队,一上来就急着装工具链,结果系统没配好,后面各种踩坑。说实话,Ubuntu 20.04 LTS 是我个人最推荐的一个版本——稳定、兼容性好,座舱相关的 SDK 基本都支持它。
这一章,咱们就把地基打牢。从安装到配置,再到远程连接,一步不落。
3.1 为什么选 Ubuntu 20.04 LTS?
你可能要问:22.04 都出了,为啥还用 20.04?
嗯,这里有个现实问题。很多座舱芯片厂商(比如高通、瑞萨、NXP)的官方 SDK,至今仍以 20.04 作为首选验证环境。我在项目中遇到过,用 22.04 编译某个老版本 QNX 工具链,直接报 glibc 版本不兼容。折腾了两天,最后乖乖换回 20.04。
说白了,做测试环境,稳定比新潮重要。
Ubuntu 20.04 LTS 的优势:
- 长期支持:到 2025 年 4 月,企业级安全更新
- 兼容性好:座舱行业主流工具链都验证过
- 社区活跃:遇到问题,网上基本能找到答案
- 资源占用低:虚拟机里跑也不卡
3.2 安装 Ubuntu 20.04 LTS
安装过程其实不复杂,但有几个细节我建议你留意。
3.2.1 准备工作
- 下载 ISO:从 Ubuntu 官网或国内镜像站(如清华、阿里云)下载
ubuntu-20.04.6-desktop-amd64.iso - 制作启动盘:用 Rufus(Windows)或 balenaEtcher(macOS/Linux)写入 U 盘
- 硬件要求:至少 4GB 内存、25GB 磁盘空间(我建议给 60GB,后面装工具链够用)
3.2.2 安装步骤
- 插入 U 盘,开机按 F2/F12/Del 进入 BIOS,设置 U 盘为第一启动项
- 选择 "Install Ubuntu"
- 语言选 "English"(我建议用英文,终端报错时更容易搜索)
- 键盘布局选 "English (US)"
- 安装类型选 "Normal installation",勾选 "Download updates while installing Ubuntu"
- 磁盘分区:选 "Erase disk and install Ubuntu"(如果是虚拟机或专用测试机)
- 设置用户名和密码,建议用简单好记的,比如
test/123456(测试环境无所谓)
3.2.3 安装后的第一件事
装完系统,先别急着装软件。我建议你先把系统更新到最新:
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y
然后重启一下:
sudo reboot
为什么要先更新?因为 Ubuntu 20.04 的初始 ISO 里有些包版本比较老,直接装工具链可能报依赖错误。我遇到过好几次,更新完就解决了。
3.3 系统基础配置
系统装好了,接下来做几项关键配置。这些配置直接影响你后续的工作效率。
3.3.1 配置网络
座舱测试环境通常需要固定 IP,方便远程连接。我个人习惯用 Netplan 来配:
sudo nano /etc/netplan/01-network-manager-all.yaml
内容如下:
network:
version: 2
renderer: NetworkManager
ethernets:
enp0s3:
dhcp4: no
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 114.114.114.114]
然后应用配置:
sudo netplan apply
验证一下:
ip addr show enp0s3
ip link show 查看实际名称。我习惯先看一眼再改配置,省得配错了连不上。
3.3.2 配置主机名
给测试机起个有意义的名字,方便识别:
sudo hostnamectl set-hostname cockpit-test-01
然后编辑 hosts 文件:
sudo nano /etc/hosts
添加一行:
192.168.1.100 cockpit-test-01
3.3.3 配置时区
座舱测试经常要打时间戳,时区不对会出乱子:
sudo timedatectl set-timezone Asia/Shanghai
timedatectl status
3.3.4 安装常用工具
我每次装完系统都会先装这几个:
sudo apt install -y vim git curl wget net-tools htop tree build-essential
这些工具后面都会用到。尤其是 build-essential,编译很多座舱 SDK 都依赖它。
3.4 SSH 远程连接配置
做座舱测试,你不可能每次都跑到测试机前操作。SSH 是标配。
3.4.1 安装并启动 SSH 服务
sudo apt install -y openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh
sudo systemctl status ssh
看到 active (running) 就对了。
3.4.2 配置 SSH 安全
测试环境虽然不用太严格,但基本的防护还是要的。我建议你改两个地方:
sudo nano /etc/ssh/sshd_config
找到并修改:
Port 2222 # 改掉默认的 22 端口,减少被扫描的概率
PermitRootLogin no # 禁止 root 直接登录
PasswordAuthentication yes # 测试环境用密码登录方便,生产环境建议用密钥
然后重启 SSH:
sudo systemctl restart ssh
3.4.3 配置防火墙
sudo ufw allow 2222/tcp
sudo ufw enable
sudo ufw status
3.4.4 从客户端连接
在 Windows 上用 PowerShell 或 MobaXterm,在 macOS/Linux 上直接用终端:
ssh -p 2222 test@192.168.1.100
输入密码,搞定。
~/.ssh/config 里写:
Host cockpit-test
HostName 192.168.1.100
Port 2222
User test
然后直接 ssh cockpit-test 就能连上,方便多了。
3.5 验证环境是否就绪
最后,跑几个命令确认一下:
| 检查项 | 命令 | 预期结果 |
|---|---|---|
| 系统版本 | lsb_release -a |
Ubuntu 20.04.6 LTS |
| 网络连通 | ping -c 4 8.8.8.8 |
有回复,无丢包 |
| SSH 服务 | systemctl is-active ssh |
active |
| 磁盘空间 | df -h |
可用空间 > 20GB |
都通过了?恭喜你,操作系统这关过了。下一章咱们开始装座舱测试的核心工具链。
- Ubuntu 20.04 LTS 是座舱测试的稳定之选
- 安装后先更新系统,再配网络和主机名
- SSH 配置要改端口、禁 root、开防火墙
- 验证环境就绪,为后续工具链安装打好基础