VMware Workstation安装Ubuntu虚拟机完整指南:从创建到网络配置
我们社区里聊虚拟机装 Linux 的话题一直很火尤其是 Windows 环境下用 VMware Workstation 跑 Ubuntu无论是做开发、测试、学习 Linux 操作还是搭个环境跑 Docker都是最常见的玩法。但很多朋友第一次上手时卡在镜像下载、虚拟机创建向导、网络配置这几个环节甚至折腾半天系统装好了却上不了网、SSH 连不上体验直接劝退。这篇教程我尽量把所有步骤和踩过的坑都写出来。从 VMware 软件获取、Ubuntu 镜像选择到虚拟机创建参数怎么填、系统装完后如何配置网络和软件源再到 VMware Tools 和快照备份这些能大幅提升体验的功能一步不落。不管你是刚接触虚拟化的新手还是想梳理一遍完整流程的老手照着这篇走基本能顺利把 Ubuntu 跑起来。1. 准备工作选择合适的 VMware 版本与 Ubuntu 镜像1.1 VMware Workstation Pro 的下载与免费许可动手装系统之前先把 VMware Workstation Pro 搞定。目前 Broadcom 收购 VMware 之后对个人用户开放了免费使用政策这一点对学习、测试场景来说非常友好。以前找许可证密钥的麻烦事基本不存在了去官网注册一个账号下载对应安装包就能拿到密钥。有个细节要提醒官网下载的安装包版本可能在 17.5.x 左右安装时如果杀毒软件拦截虚拟机监控程序相关组件记得放行。安装路径不要带中文和空格建议默认路径就好。Windows 也要确保 CPU 虚拟化已经在 BIOS/UEFI 里开启这个很关键不然向导创建虚拟机的时候会直接报错“此主机支持 Intel VT-x但 Intel VT-x 处于禁用状态”。检测方法很简单打开任务管理器性能标签页里看 CPU 的虚拟化状态是不是“已启用”。VMware 许可证和安装这块想省心的朋友直接用官网个人免费版即可。我之前帮同事在几台不同年份的笔记本上装过Win10/Win11 下只要开启虚拟化安装过程没有遇到更多障碍。1.2 Ubuntu 镜像版本选择与下载途径Ubuntu 的版本选择直接影响后面的使用体验。目前 22.04 LTS 和 24.04 LTS 是长期支持版本软件源维护周期长对新手最友好。如果你是以学习运维、部署服务为主要目的我更推荐 22.04 LTS这个版本的用户基数大网上搜问题时能找到最多的解决方案。24.04 也不是不能用只是部分第三方软件和驱动还在适配期特别是搜狗输入法这类依赖 fcitx 框架的软件在 24.04 上可能要花点时间折腾。镜像下载建议优先从 Ubuntu 中文官网或清华、阿里云镜像站获取。官网下载速度不稳定国内镜像站速度快、校验方便。具体版本选 desktop 版就可以server 版没有图形界面对纯命令行学习有意义但不符合多数人“装个桌面系统”的心理预期。下载完之后最好对比一下 SHA256 校验值防止文件损坏导致安装中途报错这个步骤虽然简单却是我实际踩过坑之后才养的“强迫症”。1.3 主机硬件资源预估虚拟机的资源分配要先盘算好。Ubuntu Desktop 装完图形界面之后空闲内存占用大概在 1.5GB 左右跑开发工具或 Docker 时内存会往上走。所以宿主机内存小于等于 8GB 时虚拟机最多分 2~3GB 内存宿主机 16GB 以上虚拟机分 4GB 或 6GB 都没问题。处理器核心数也一样建议分配 2 核起步4 核封顶别把全部核心都塞给虚拟机否则宿主机自己会卡成幻灯片。磁盘空间方面Ubuntu 22.04 完整安装加常用开发工具轻松突破 30GB。建议虚拟机虚拟磁盘至少给 50GB采用“将虚拟磁盘存储为单个文件”的方式性能稍好也方便迁移备份。2. 从零开始创建虚拟机关键配置与向导细节2.1 新建虚拟机向导中的三个关键选项打开 VMware Workstation点击“创建新的虚拟机”进入向导。第一页选择“典型”即可这个模式已经能满足绝大多数场景不需要跳到“自定义”。关键是第二页的“安装来源”这里我建议选“稍后安装操作系统”不要选“安装程序光盘映像文件”。为什么不推荐直接指向 ISO因为 VMware 在某些版本下会自动启用 Easy Install 模式虽然它确实能自动安装系统但默认参数不一定符合你的预期比如用户名密码是自己填的、分区方案不够灵活有时候还会自动装 VMware 的定制组件反而拖慢速度。选“稍后安装操作系统”等于把主动权握在自己手里。接下来选择客户机操作系统客户机操作系统选 Linux版本下拉列表里选 Ubuntu 64 位。如果你下载的是 Ubuntu 22.04 或 24.04在部分老版本 Workstation 的列表里可能找不到对应的具体版本号选一个相近的 Ubuntu 64 位即可这不影响安装。2.2 虚拟机名称、位置与固件类型虚拟机名称可以随意填写但存放位置要注意两点不要放在系统盘C 盘空间紧张的分区里不要放在中文路径下。有些软件在安装 guest tools 或配置共享文件夹时中文路径偶尔会出幺蛾子。建议专门建一个“VMware 虚拟机库”之类的目录所有虚拟机都放一起方便管理和备份。如果你新建虚拟机时使用了“自定义硬件”入口在“虚拟机设置”的“高级”选项卡里可以调整固件类型。默认的 BIOS 完全够用除非你后续要搞一些特殊的引导场景。内存、CPU、硬盘容量这些参数可以在图型界面里直接调整分配完点击“完成”一台空虚拟机就创建好了。2.3 虚拟机设置里还需要改的几个小地方向导完成后先别急着开机右键虚拟机名称进入“设置”页面做几处优化。显示方面如果宿主机分辨率太高建议在“显示器”设置里勾选“加速 3D 图形”虚拟机内部开 GNOME 动画或后续跑简单图形程序时会流畅一些。USB 控制器保持默认即可后续如果需要用 U 盘启动或外接设备再调整。软驱设备建议直接选中并移除这个老古董设备除了启动时偶尔报错没有任何实质用途。光驱设备这里需要指定之前下载好的 Ubuntu ISO 文件在 CD/DVD 设置里选择“使用 ISO 映像文件”然后浏览到镜像位置。如果完成之后发现光驱设备没有自动连接也要手动勾选“已连接”和“启动时连接”。3. 安装 Ubuntu 系统分区、用户与更新源3.1 Ubuntu 安装引导流程虚拟机电源打开后会从光驱引导进入 Ubuntu 的安装界面。这里有两个选项Try or Install Ubuntu直接选 Install Ubuntu 就行。键盘布局默认选 English (US)或者选 Chinese 也可以这个后面随时能改不必纠结。然后进入“Updates and other software”选项页如果网络环境不错勾选“Download updates while installing Ubuntu”和“Install third-party software for graphics and Wi-Fi hardware and additional media formats”这样装完省去不少手动配置。如果网络比较慢我建议两个勾都去掉先把系统装完之后换国内镜像源再做系统更新。这样不至于在安装过程中卡在长时间下载反而让安装进度看起来像死机了一样。3.2 分区方案怎么选分区这一步是新手分水岭。“Installation type”页面上有两个主要选项Erase disk and install Ubuntu或者 Something else。虚拟机里压根没有其他数据所以选第一个不会丢任何东西这是最省事的路径。虚拟机磁盘默认已经是虚拟出来的不用担心像物理机那样抹掉真实数据。但如果你想让磁盘布局更清晰一些可以选 Something else 手动分区。我个人的习惯是分三个区/boot/efiEFI 系统分区建议 512MB 或 1GB类型选 EFI System Partition/根分区分配全部剩余空间ext4 文件系统不需要单独分/home除非你有特殊的快照或数据隔离需求虚拟化环境下 swap 分区要不要单独划一般不单独划 swap 分区交给系统自己管理 swapfile 更省心。原因很简单VMware 本身是动态分配内存的Linux 内部的 swapfile 机制足够应对内存压力没必要在虚拟磁盘里再划分固定 swap 区域。3.3 用户账号设置与 root 权限安装过程中的“设置用户名和密码”页面要注意一下Ubuntu 默认创建的用户是有 sudo 权限的。系统安装期间不会让你配置 root 密码root 账户默认是锁定状态日常操作全走 sudo。这一点和 CentOS 很不一样很多从 CentOS 转过来的朋友一开始不习惯但用多了反而觉得更安全。用户名这块建议用纯英文不要包含大写字母和特殊字符。后期搭建开发环境时用户目录名里出现中文或空格会带来许多莫名其妙的路径问题。这个坑我见过太多人踩建议一步到位。3.4 安装完成后的首次重启与初始化安装流程走完后虚拟机自动重启。如果重启后又进入了安装界面而没有进入系统多半是光驱仍然优先于硬盘引导在 VMware 里右键虚拟机从“电源”菜单点击“重新启动客户机”然后快速按 Esc 进入引导菜单选择第一块硬盘。为了根治这个问题也可以在虚拟机设置里把 CD/DVD 的“启动时连接”取消勾选。首次进入 Ubuntu 桌面后系统会先后弹出帮助和指引窗口按需求选择即可。这时先看看右上角网络图标是否已经自动连接NAT 模式下一般已经通了。4. 系统装完顺手做的事VMware Tools、软件源与系统更新4.1 安装 open-vm-tools 与分辨率自适应系统启动后的第一件事我建议安装 VMware Tools不过不是安装 VMware 菜单里的那个“Install VMware Tools”而是直接安装 open-vm-tools 包。这是 VMware 官方开源的虚拟化支持工具集效果和收费功能没什么区别而且随 Linux 内核版本维护apt 直接装最简单sudo apt update sudo apt install open-vm-tools open-vm-tools-desktop -y装完之后重启虚拟机分辨率会自动适配 VMware 窗口大小鼠标进出虚拟机不再需要按 CtrlAlt剪贴板共享和拖拽文件功能也会激活。如果你想要宿主机和虚拟机之间文件夹共享还可以安装 open-vm-tools-desktop 之后再在 VMware 设置里添加共享文件夹挂载路径通常在/mnt/hgfs下。有人说为什么不用 VMware 自带的 tar 包安装我的经验是能用 apt 装的就别手动编译手动装容易遇到内核头文件缺失、dkms 编译失败等一堆问题。作为折腾过多次的人我强烈推荐直接用 open-vm-tools。4.2 更换软件源为国内镜像Ubuntu 默认的软件源在国外apt update 和安装软件的速度很慢更换为国内镜像源能明显提速。手动改源需要编辑/etc/apt/sources.listUbuntu 22.04 开始支持匹配.sources格式也可以用 Software Updates 工具在图形界面里选择服务器。最稳妥的做法是用 sed 命令直接替换sudo sed -i s/archive.ubuntu.com/mirrors.aliyun.com/g /etc/apt/sources.list sudo sed -i s/security.ubuntu.com/mirrors.aliyun.com/g /etc/apt/sources.list sudo apt update注意如果系统提示 sources.list 文件不存在而是存在于/etc/apt/sources.list.d/ubuntu.sources这个新路径需要把替换命令的目标文件换成这个。替换完源之后再做sudo apt upgrade更新全部软件包这个步骤建议在网络条件好的时候进行几百个包更新耗时较长。4.3 设置国内时区与校验时间同步Ubuntu 安装时如果选了上海时区时间显示一般没问题。但某些虚拟机在 host 休眠恢复后可能出现时钟漂移表现为 Ubuntu 时间和宿主机时间不一致。解决方式是开启时间自动同步sudo timedatectl set-ntp true timedatectl status如果看到System clock synchronized: yes才算彻底正常。这个细节不处理的话后续写代码提交 Git 记录时时间对不上排查起来很恼火。5. 网络配置让虚拟机上网、SSH、与宿主机互通5.1 VMware 三种网络模式怎么选VMware 提供 NAT、桥接、仅主机三种网络模式。默认创建的虚拟机用的是 NAT这也是绝大多数场景下的最优解。NAT 模式下虚拟机通过宿主机共享 IP 上网宿主机能访问虚拟机虚拟机也能主动访问外网。这种方式最不容易出问题不需要关心局域网 IP 分配和路由器设置。桥接模式则像给虚拟机插了一根独立的网线虚拟机直接出现在宿主机所在局域网中拥有独立 IP。这种模式适合需要被局域网内其他设备直接访问的场景比如虚拟机里部署了网站或 API 服务。桥接模式有个注意点如果宿主机切换了 WiFi 或网线虚拟机的网络可能临时断掉需要重启网络服务。仅主机模式用于隔离网络虚拟机不能上外网只能与宿主机或同网段的虚拟机互通。在学习防火墙规则、模拟内网环境时它会派上用场。5.2 配置固定 IP告别 DHCP 随机地址默认 NAT 网络用了 DHCP虚拟机的 IP 地址会变化SSH 连接时容易“IP 对不上”。建议把它设置为固定 IP。Ubuntu 22.04 的网络配置文件位于/etc/netplan/文件名通常为01-network-manager-all.yaml或类似名字。编辑前先备份然后查看当前网卡名称ip a网卡名一般是 ens32 或 ens33。修改配置文件sudo nano /etc/netplan/01-network-manager-all.yaml配置内容大致如下network: version: 2 renderer: NetworkManager ethernets: ens33: dhcp4: no addresses: - 192.168.123.100/24 routes: - to: default via: 192.168.123.2 nameservers: addresses: [223.5.5.5, 8.8.8.8]网关地址怎么填在 VMware 的“编辑”菜单里打开“虚拟网络编辑器”选中 VMnet8 NAT 模式查看 NAT 设置里的网关 IP通常是 192.168.x.2。DNS 用国内公共 DNS 更符合国情比如阿里 DNS 223.5.5.5既快又稳定。写完配置之后用sudo netplan apply应用。如果报错先跑sudo netplan try这样超时会自动回滚防止你把自己锁在网络外面。5.3 开启 SSH 服务并解决连接失败Ubuntu Desktop 默认不装 SSH 服务端但很多朋友装完虚拟机第一件事就是从宿主机用 SSH 连过去写命令。安装命令很简单sudo apt install openssh-server -y sudo systemctl enable --now ssh从宿主机连接之前先确认虚拟机的 IP、SSH 服务状态、防火墙状态ip addr show systemctl status ssh sudo ufw status如果 SSH 连接失败最多见的原因有这几个SSH 服务未启动、防火墙拦截了 22 端口、IP 地址配错、或者虚拟机网络本身没通。逐个排查即可。Ubuntu 默认的 ufw 防火墙如果没启用的活ufw status会显示 inactive这是正常状态不会拦截 SSH。如果启用了需要放行sudo ufw allow OpenSSH5.4 从宿主机访问虚拟机里的网站或服务在虚拟机中用 Nginx 或 Docker 跑了个服务宿主机浏览器想直接访问怎么办NAT 模式下宿主机可以直接通过虚拟机的 IP 访问其服务端口不需要额外做端口转发。但如果你希望局域网内其他电脑也能访问虚拟机里的服务就需要在 VMware 的 NAT 设置里添加端口转发规则或者干脆切换到桥接模式让虚拟机获得局域网独立 IP。这里我想强调一下常见误区很多新手在 NAT 模式下发现“宿主机访问不了虚拟机端口”第一反应是关防火墙这方向就错了。先检查服务有没有监听在 0.0.0.0 上比如 Nginx 默认监听 80 端口直接在宿主机浏览器输入虚拟机 IP 就能看到测试页。如果不行再用sudo netstat -tlnp查看端口监听状态排查顺序要正确。6. 进一步提升使用体验输入法、字体、Docker 与快照6.1 中文化界面与中文输入法搜狗输入法Ubuntu 安装时可以选中文作为系统语言但如果一开始选了英文后续可以在“设置”里的“Region Language”中调整。中文化界面只是第一步真正难的部分是中文输入法。搜狗输入法在 Ubuntu 上的安装路径依赖 fcitx 框架。以 Ubuntu 22.04 为例先安装 fcitxsudo apt install fcitx-bin fcitx-config-gtk -y然后去搜狗官网下载 Ubuntu 对应架构的 deb 包安装时用sudo dpkg -i sogoupinyin_xxx_amd64.deb如果提示依赖缺失就跑sudo apt -f install -y修复。装完之后在“系统设置”-”区域与语言“里把输入法框架切换为 fcitx退出登录重新进入桌面再在 fcitx 配置里添加搜狗输入法。这个过程在我实际经验中最容易卡在依赖问题上。搜狗输入法的 deb 包对 fcitx 版本有要求系统源里默认的 fcitx 可能与官方包不匹配必要时得先卸载系统自带的 fcitx 再重装指定版本。如果你不执着于搜狗其实 Ubuntu 自带的智能拼音已经足够日常使用学习成本为零强烈推荐新手上路直接用自带的。6.2 终端字体优化让写代码更接近 macOS 体验很多在 macOS 上用过 iTerm2 等宽字体的人转到 Ubuntu 后会觉得默认终端的渲染比较生硬。这里推荐几个在 Ubuntu 下表现很好的等宽字体JetBrains Mono、Fira Code 和 Source Code Pro。安装方式一般是通过fonts-powerline或手动下载字体文件。以 JetBrains Mono 为例sudo apt install fonts-jetbrains-mono -y装完之后在终端“偏好设置”里找到配置文件把自定义字体改成 JetBrains Mono字号设为 13 或 14。配合 Ubuntu 的字体渲染整体观感已经很接近 macOS 上的编辑器体验了。如果还想要一点“圆润感”可以在“设置”里开启字体抗锯齿并把缩放比例调整到 100% 或 125%。6.3 安装 Docker 与 Docker Compose很多朋友装 Ubuntu 虚拟机就是为了跑 Docker这里给出标准安装路径。选择官方 Docker CE 源虽然国内访问 Docker Hub 可能较慢但安装软件包本身还是很快的。如果 Docker Hub 拉取镜像超时可以配置国内镜像加速器。sudo apt update sudo apt install ca-certificates curl gnupg -y sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod ar /etc/apt/keyrings/docker.gpg echo \ deb [arch$(dpkg --print-architecture) signed-by/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null然后更新并安装sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y为了让当前用户免 sudo 使用 Dockersudo usermod -aG docker $USER退出登录再重新进入或重启虚拟机后生效。Docker Compose 现在作为 Docker CLI 插件已经附带用docker compose version验证即可。需要特别提一句Docker 的存储驱动默认使用 overlay2在虚拟化环境里表现完全没毛病。不要手欠去改 devicemapper那是老黄历了。6.4 使用快照与克隆给系统上“后悔药”虚拟机最大的优势就是可以随时做快照。在系统刚装完、软件配置好、确定一切正常时我都建议拍个快照。右键虚拟机名称 - 快照 - 拍摄快照备注里写清楚当前状态比如“Ubuntu 22.04 初始环境已配置并更新”。快照回滚很快但要注意快照会占用宿主机磁盘空间不要拍摄太多冗余快照两三个关键节点就够了。如果后续测试软件把系统弄坏直接恢复到上一个快照点比重新安装一遍省事得多。克隆功能更适合“从已有环境批量复制出多台虚拟机”。克隆之前先关闭虚拟机选择“创建链接克隆”或“完整克隆”。链接克隆省空间但依赖原始虚拟机文件原始文件不能删除完整克隆是独立副本更安全。克隆完成后记得修改主机名和 SSH 密钥避免两台机器冲突。7. 常见问题与排查技巧实录7.1 VMware 启动时提示需要管理员权限或虚拟机监控程序不可用这个报错的原因通常是 Hyper-V 或其他虚拟化功能与 VMware 冲突。解决办法是关闭 Windows 的可选功能里的 Hyper-V、虚拟机监控程序平台和内存完整性检查。在管理员命令行里执行bcdedit /set hypervisorlaunchtype off后重启。注意如果之后你又需要使用 WSL2 或 Docker Desktop需要重新开启 hypervisorlaunchtype否则 WSL2 无法启动。7.2 无线网卡驱动问题虚拟机系统的网卡类型默认为 e1000e 或 vmxnet3。如果你发现 Ubuntu 里没有网络先看 VMware 虚拟网络编辑器里 VMnet8 是否存在如果提示“VMnet1 有感叹号”或者看不到虚拟网卡多半是网络适配器被 Windows 安全策略关闭了。在 Windows 设备管理器里把 VMware Bridge Protocol 勾选回来然后重启 VMware 即可。7.3 鼠标卡顿和分辨率异常装了 open-vm-tools 之后鼠标仍然卡顿发生概率不低。主要原因是虚拟机里的图形驱动未启用硬件加速。在 Ubuntu 的“设置”里把“分辨率”调成虚拟机窗口匹配值再在 VMware 显示设置里打开 3D 加速并分配显存。如果仍然卡可以在“软件和更新”的“附加驱动”标签页里安装虚拟机对应的图形驱动。7.4 更换 Ubuntu 镜像版本后安装时卡在“探测硬件”这类问题一般和镜像损坏或虚拟硬件不兼容有关。先用 SHA256 校验镜像完整性如果镜像没问题就在 VMware 设置里把固件类型从 UEFI 改成 BIOS或者反过来多数情况能解决。7.5 共享文件夹挂载失败如何解决在 VMware 里设置了共享文件夹但 Ubuntu 内ls /mnt/hgfs为空这是因为 open-vm-tools 的共享文件夹功能默认需要安装 open-vm-tools-desktop 并重新挂载sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other -o uid1000如果希望开机自动挂载可以往/etc/fstab里加一行。不过说实话在 NAT 网络环境下直接用 scp 或 SSH 传文件比共享文件夹更稳共享文件夹更适合固定目录映射的需求。8. 一些性能优化和日常习惯建议8.1 虚拟机内存和 CPU 分配的平衡虚拟机的性能瓶颈通常不在 CPU而在内存和磁盘 I/O。建议 Ubuntu Desktop 至少分 4GB 内存Docker 跑多个容器时 4GB 基本够用但如果你同时运行大前端项目或编译 Android 应用建议给 8GB。宿主机内存开销也要留足开着浏览器和 IDE 再跑虚拟机会比较吃力。8.2 不要频繁开关机用挂起代替VMware 的挂起功能非常实用相当于把当前系统状态保存到宿主机磁盘再次唤醒时马上恢复。日常开发中如果不跑大型服务直接挂起虚拟机要比关机再开机快得多也避免每次开机都要等桌面环境加载。长时间不用虚拟机时再选择“关机”否则挂起状态会占用一部分宿主机磁盘。8.3 定期更新系统与快照策略Ubuntu 的软件安全更新很重要。建议每两周跑一次sudo apt update sudo apt upgrade。更新前最好拍个快照如果某个更新把现有环境弄挂了随时回滚。这个习惯非常关键尤其当你安装了第三方软件源或测试版内核时一次不兼容更新足以让桌面起不来。9. 我的个人体会用 VMware 跑 Ubuntu 这套组合我前前后后装了很多遍也从最早的一步步踩坑走到了现在基本十分钟完成一整套环境部署。最大的感受是虚拟化这东西看似简单但每个细节都暗藏玄机从固件类型、虚拟磁盘格式到网络模式选择任何一环没理顺都会在后续使用中爆发出来。我个人的习惯是每配置好一个新环境必定做三件事换源、装 open-vm-tools、拍一个干净快照。这三件事做在前面后面的“折腾”都会变得从容很多。也建议刚开始接触的朋友不要一上来就想着图形界面要多炫酷先把命令行操作练熟以后切到服务器版 Ubuntu 时一点不慌。如果你在安装或配置过程中遇到了本文没覆盖到的报错欢迎在评论区留言我看到会尽量回复排查思路。
上一篇/下一篇内容由系统自动关联
返回资讯列表 →