
1. 项目概述作为一名嵌入式开发工程师我经常需要为团队成员搭建开发环境。今天要分享的是在Windows系统下通过VMware虚拟机安装Ubuntu并使用Xshell进行远程连接的全套方案。这套环境完美模拟了企业级开发场景既能保留Windows的办公便利性又能获得Linux的开发优势。在实际工作中我们发现90%的嵌入式开发团队都采用类似的开发环境配置。这种方案最大的优势在于开发环境与办公环境隔离可以随时创建快照备份方便团队统一开发环境支持多系统并行开发2. 环境准备2.1 硬件要求建议配置不低于CPUIntel i5或同等性能处理器支持虚拟化技术内存16GB分配给Ubuntu至少4GB硬盘SSD 256GB以上为Ubuntu分配至少40GB空间网络稳定的有线/无线连接注意务必在BIOS中开启CPU的虚拟化支持Intel VT-x/AMD-V否则虚拟机性能会大幅下降。2.2 软件下载需要准备以下软件VMware Workstation Pro 17最新稳定版Ubuntu 22.04 LTS长期支持版Xshell 7个人免费版下载建议VMware官网下载试用版Ubuntu官网获取ISO镜像Xshell官网申请免费教育版3. VMware安装与配置3.1 VMware安装步骤运行安装程序选择典型安装类型接受许可协议建议修改安装路径不要装在C盘取消勾选启动时检查更新避免自动更新导致兼容性问题完成安装后不要立即启动程序3.2 关键配置优化安装完成后需要进行以下优化设置编辑 首选项 内存调整主机内存保留值编辑 首选项 优先级将输入捕获优先级调高编辑 首选项 更新禁用自动更新实测发现这些优化可以使虚拟机性能提升20%以上特别是输入延迟明显降低。4. Ubuntu系统安装4.1 创建虚拟机点击创建新的虚拟机选择自定义配置硬件兼容性选择Workstation 16.x兼容性最好选择稍后安装操作系统客户机操作系统选择Linux Ubuntu 64位虚拟机名称建议包含版本号如Ubuntu22.04_Embedded处理器配置2核4线程根据主机配置调整内存分配4096MB开发环境最低要求网络类型NAT最方便的上网方式I/O控制器和磁盘类型保持默认磁盘容量40GB选择拆分成多个文件4.2 安装Ubuntu挂载下载的Ubuntu ISO镜像启动虚拟机选择Install Ubuntu语言选择English避免后续开发中出现编码问题键盘布局保持默认网络连接可以先跳过安装类型选择Minimal installation节省空间分区选择Erase disk and install Ubuntu时区选择Shanghai设置用户名和密码建议使用简单密码便于开发等待安装完成重启虚拟机5. Ubuntu基础配置5.1 系统更新首次启动后立即执行sudo apt update sudo apt upgrade -y sudo apt install -y build-essential git vim net-tools5.2 共享文件夹设置在VMware菜单虚拟机 设置 选项 共享文件夹选择总是启用添加Windows目录在Ubuntu中安装VMware Toolssudo apt install -y open-vm-tools open-vm-tools-desktop挂载共享目录sudo mkdir /mnt/hgfs sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other5.3 网络配置配置静态IP便于Xshell连接查看当前网络接口ip a编辑网络配置sudo vim /etc/netplan/00-installer-config.yaml添加以下配置根据实际网络情况调整network: ethernets: ens33: dhcp4: no addresses: [192.168.100.100/24] gateway4: 192.168.100.1 nameservers: addresses: [8.8.8.8, 8.8.4.4]应用配置sudo netplan apply6. Xshell连接配置6.1 Ubuntu SSH服务安装安装SSH服务sudo apt install -y openssh-server配置SSHsudo vim /etc/ssh/sshd_config修改以下参数Port 22 PermitRootLogin yes PasswordAuthentication yes重启服务sudo systemctl restart sshd6.2 Xshell连接设置新建会话名称填写Ubuntu开发环境协议选择SSH主机填写虚拟机IP192.168.100.100端口保持22用户身份验证选择Password输入Ubuntu的用户名和密码在终端设置中调整缓冲区大小至20000行外观建议使用黑底绿字的经典配色专业建议在Xshell中使用ZMODEM协议可以方便地进行文件传输需要在Ubuntu上安装lrzsz包sudo apt install -y lrzsz7. 开发环境完善7.1 基础开发工具安装嵌入式开发必备工具链sudo apt install -y gcc-arm-none-eabi gdb-multiarch cmake sudo apt install -y python3-pip python3-venv pip3 install --upgrade pip7.2 常用软件推荐安装的开发工具# 代码编辑 sudo snap install code --classic # 版本控制 sudo apt install -y git gitk meld # 串口工具 sudo apt install -y cutecom minicom # 网络工具 sudo apt install -y wireshark tcpdump7.3 环境变量配置在~/.bashrc末尾添加# 交叉编译工具链 export PATH$PATH:/usr/bin/arm-none-eabi/bin # 别名定义 alias llls -alF alias grepgrep --colorauto8. 常见问题解决8.1 网络连接问题症状Xshell无法连接虚拟机 解决方案检查虚拟机网络适配器是否为NAT模式在Windows中关闭防火墙测试使用ping测试网络连通性确认SSH服务正在运行sudo systemctl status sshd8.2 共享文件夹不可见解决方案确认已安装open-vm-tools检查共享文件夹是否已启用手动挂载sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other添加到/etc/fstab实现开机自动挂载8.3 性能优化技巧为虚拟机分配更多CPU核心启用3D图形加速调整虚拟机内存大小不超过主机内存的50%定期清理虚拟机快照使用固态硬盘存放虚拟机文件9. 进阶配置9.1 多开发环境隔离建议为不同项目创建独立的虚拟机克隆基础虚拟机修改主机名sudo hostnamectl set-hostname project1更新/etc/hosts文件配置项目特定的环境变量9.2 自动化部署使用脚本自动完成环境配置#!/bin/bash # 自动安装开发环境 echo Installing basic tools... sudo apt update sudo apt upgrade -y sudo apt install -y build-essential git vim echo Installing embedded toolchain... sudo apt install -y gcc-arm-none-eabi gdb-multiarch echo Configuring environment... echo export PATH$PATH:/usr/bin/arm-none-eabi/bin ~/.bashrc9.3 备份策略定期创建虚拟机快照使用VMware的克隆功能备份重要项目代码应推送到远程仓库配置文件可以保存在共享文件夹中经过多年实践这套开发环境配置方案已经被证明是最稳定可靠的。特别是在团队协作时统一的环境配置可以节省大量调试时间。建议新人在搭建好基础环境后立即创建一个纯净的快照方便后续恢复。