前阵子好几个朋友问我,Windows10 的电脑上到底怎么才能跑一套完整的 Linux 环境,既要能用 Ubuntu 做开发、跑服务,又不能影响日常办公和游戏。我的回答始终很统一:装虚拟机,这可能是普通用户接触 Linux 最稳妥、最不折腾的方式。这篇教程我想以最实际的操作视角,把从零开始安装 Ubuntu 虚拟机的完整流程、每一步背后的考量、以及我多次踩坑后的应对方案都讲清楚。
1. 为什么在 Windows10 上装 Linux,我推荐虚拟机而不是双系统
1.1 双系统与虚拟机的本质区别
很多新手看到 Linux 教程的第一反应是“那我装个双系统”。双系统的思路是在硬盘上划分独立分区,分别安装 Windows10 和 Ubuntu,开机时通过引导菜单选择进入哪个系统。这种方式的好处是性能最大化,两个系统都能用满整台机器的硬件资源,适合需要长期重度使用 Linux、对图形性能或计算性能有极高要求的场景。
但双系统的代价非常明显。第一,分区操作有风险,一不小心就可能把 Windows10 的引导搞坏,遇到 0xc000014c 这类启动错误是家常便饭;第二,两个系统之间切换要重启电脑,开发过程中频繁切换非常打断节奏;第三,Linux 系统里出了问题,比如更新内核后驱动挂了,你往往很难马上回到 Windows 环境查资料修复。
虚拟机则完全不同。它是在 Windows10 内部用软件模拟出一套完整的计算机硬件环境,在虚拟机里安装 Ubuntu 作为客户机系统。两个系统可以同时运行,窗口切换就像切换普通软件一样。虚拟机里的 Ubuntu 出了问题,最坏情况是删掉重装,对宿主机几乎没有影响。
1.2 虚拟机的适用场景与局限性
用虚拟机跑 Ubuntu,最适合的场景我觉得有三类。
第一类是学习入门。你想熟悉 Linux 常用命令,练习文件操作、用户管理、权限配置,看《鸟哥的 Linux 私房菜》这类书,完全没有必要真机安装,虚拟机的响应速度和操作体验足够流畅。
第二类是开发测试。比如你正在做 Python 或 Java 后端开发,需要在 Linux 环境下部署调试;或者你想体验 Docker、学习 Kubernetes;再或者你需要在 Linux 下编译某个开源项目,虚拟机提供的是一个隔离且可快速重建的环境。
第三类是临时使用。比如你只需要在月底用某个 Linux 工具处理数据,或者想跑一个只在 Linux 下有官方版本的命令行工具,虚拟机随用随开、不用就挂起,非常灵活。
当然虚拟机也有局限。首先是性能损耗,尤其是 3D 图形加速能力远不如原生系统,重度游戏玩家、视频剪辑用户别指望在虚拟机里获得完整体验。其次是硬件直通限制,你想把 USB 加密狗、串口设备直接映射给虚拟机使用,虽然技术上支持,但配置过程有时会比较头疼。不过对于绝大多数想接触 Linux 的用户来说,虚拟机带来的便捷性远大于这两个缺点。
1.3 主流虚拟机软件怎么选:VMware Workstation vs VirtualBox
目前 Windows10 平台主流的虚拟机软件主要就是 VMware Workstation 和 Oracle VirtualBox 两个。
VMware Workstation 在 Windows 平台上的体验我一直觉得更顺手,界面布局清晰,虚拟硬件兼容性好,对 Ubuntu 之类的 Linux 发行版支持非常完善。VMware Workstation 分为收费的 Pro 版本和免费的 Player 版本,个人学习完全可以用 17 版本的 Player,功能上对普通用户来说差别不大。
VirtualBox 是完全开源的免费软件,跨平台能力更强,Windows、macOS、Linux 都能用。如果你是极简主义者,或者以后有可能把虚拟机迁移到其他操作系统上,VirtualBox 是不错的选择。但我在实际使用中遇到过 VirtualBox 在高分辨率屏幕下的适配问题,偶尔会出现 UI 错位的尴尬情况,而且性能表现上个人感觉略逊于 VMware。
我在这篇教程里会以 VMware Workstation 17 为主展开操作,因为它在 Windows10 上的安装、配置和 Ubuntu 的兼容性是我实测下来最省心的组合。如果你选择 VirtualBox,核心思路其实是一致的,只是部分菜单名称和位置不同。
2. 准备工作:确认虚拟化开启状态与下载 Ubuntu 镜像
2.1 先确认 CPU 虚拟化是否已经开启
很多人下载好软件、镜像,一路点下一步,结果最后启动虚拟机时说“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”,瞬间卡住。这个问题的根源就是 Windows10 所在物理机的固件(BIOS 或 UEFI)里没有开启虚拟化指令集,也就是 Intel 平台的 VT-x,或者 AMD 平台的 AMD-V。
在准备阶段就把这个检查掉,能为后面省掉一大半的麻烦。最简单的方式是打开 Windows10 的任务管理器,Ctrl + Shift + Esc 唤起后切到“性能”标签页,在左下角选中“CPU”,然后在右下角查看“虚拟化”一栏。如果显示“已启用”,说明虚拟化功能是开着的,可以直接跳过 BIOS 设置步骤。
如果显示“已禁用”或“固件中已启用虚拟机监控程序”之类的提示,就需要重启电脑,开机时不停按 Del 或 F2(不同主板品牌按键略不同)进入 BIOS/UEFI 设置界面,找到 Intel Virtualization Technology 或 SVM Mode 之类的选项,把它改为 Enabled,保存退出。这个操作本身没有风险,改不对顶多重启再来。
一个小提醒:Windows10 自带的基于虚拟化的安全功能有时候会占用虚拟化资源,如果你在 VMware 里创建的是 64 位 Linux 虚拟机却提示“已启用 VT-x/AMD-V 的兼容模式”,可以尝试在 Windows 功能里暂时关闭“虚拟机平台”或“Hyper-V”,这部分我在后面的踩坑章节会详细展开。
2.2 Ubuntu 版本怎么选:LTS 优先,别盲目追新
Ubuntu 的版本命名规则非常清晰,采用“年份后两位.月份”的格式,比如 22.04 表示 2022 年 4 月发布。Ubuntu 每年发布两个版本,其中 4 月发布的版本如果是双数年,就是 LTS(Long Term Support)长期支持版本,官方提供 5 年的安全和维护更新。切记,新手选择 LTS 版本永远不会错。
目前新装机器我比较推荐 Ubuntu 22.04 LTS 或更新的 24.04 LTS。它们对常见开发工具、Docker、Python、Node.js 等软件包的支持都非常完备,遇到问题时网上能搜到的解答也是最多的。
另外要注意区分 Ubuntu 桌面版(Desktop)和服务器版(Server)。桌面版自带 GNOME 图形界面,安装完就能看到完整的桌面环境,对初学者更友好;服务器版是精简的纯命令行环境,适合部署生产服务。我建议初次使用 Linux 虚拟机的读者选择桌面版,先建立起图形界面下的操作直觉,再慢慢深入命令行。
2.3 下载 Ubuntu 镜像的细节与校验
镜像文件通常去 Ubuntu 官网的 Download 页面获取,选择桌面版,然后下载 ISO 文件。注意 Ubuntu 官方站点会根据你的网络情况提供多个镜像地址,选择一个能正常访问的即可,下载好的文件一般是 4GB 到 5GB 左右。
很多人忽略一个关键环节:校验镜像完整性。下载过程中由于网络波动,ISO 文件可能损坏,直接拿损坏的镜像去装 Ubuntu,会出现安装进行到一半报错、或安装了但系统文件不完整等问题。Ubuntu 官方页面通常会给出对应版本的 SHA256 校验值。下载完成后,在 Windows10 的 PowerShell 中输入Get-FileHash .\下载的镜像文件名.iso -Algorithm SHA256,把输出的哈希值与官网公布的值对比,一致就说明文件完整。
这一步虽然不起眼,但能帮你自动排除一类很隐蔽的安装失败原因。
3. 使用 VMware Workstation 17 创建 Ubuntu 虚拟机的完整操作
3.1 VMware Workstation 的安装过程
VMware Workstation 17 的安装包可以从 VMware 官网获取,安装过程本身没有什么特别的,双击运行安装程序,接受许可协议,选择安装路径,一路下一步即可。我唯一要提醒的是,安装过程中它会提示是否勾选“检查产品更新”和“加入客户体验提升计划”,如果你不想被打扰,可以把这两个选项取消。
安装完成后第一次启动,免费版会提示你输入许可证密钥或者选择“跳过此版本输入密钥”,你选择跳过或者输入一个有效的免费试用许可证即可进入主界面。VMware Workstation 17 的界面语言是英文为主,如果你希望看到中文菜单,可以在 Edit -> Preferences -> General 里将 Language 切换为中文,不过看着看着就习惯了。
3.2 新建虚拟机向导的关键步骤和背后逻辑
打开 VMware Workstation,点击主页上的“创建新的虚拟机”,会进入新建虚拟机向导。这一步我有几个建议:
如果是新手,选择“典型(推荐)”模式就足够了,它已经帮你预设好大多数字段。不过即使选择典型模式,我也会在途中调整两个关键参数,所以你需要跟着下面的步骤走。
在“安装程序光盘映像文件”那一栏,浏览选中你下载好的 Ubuntu ISO 镜像。VMware 会检测到镜像并自动识别为 Ubuntu 64 位,如果没有自动识别出来,可以在下面的“客户机操作系统”里手动选择 Linux,版本选择 Ubuntu 64 位。
这里有一个很多人忽略的细节:VMware 在“远程存储类型”等步骤中可能会问你要不要指定“简易安装”信息,包括用户名、密码、主机名。如果你填了用户名和密码,安装过程中它会自动完成系统安装,全程几乎不需要手动操作;如果你留空,后面就需要像安装一台真实电脑那样逐步点击。
我的建议是第一次玩虚拟机的人使用手动安装方式,也就是在界面中不填或跳过 Ubuntu 安装信息,这样你能看到 Ubuntu 安装过程中每一步在做什么,也能更清楚理解系统结构,一旦出问题知道去哪里排查。
3.3 虚拟机硬件参数怎么给才合理
进入“自定义硬件”界面后,需要重点核对几个参数,我分别说明我的建议值和原因。
内存方面,Windows10 宿主机本身大约占用 4GB 到 6GB 内存,如果物理机内存是 16GB,分给虚拟机 4GB 到 8GB 是一个比较合理的区间。如果给太少,Ubuntu 的 GNOME 桌面会明显卡顿,在浏览器里多开几个标签页就内存告急;给太多,又会影响宿主机运行其他软件。我一般会输入“4096 MB”作为基准,也就是 4GB。
处理器方面,分配 2 核是底线,4 核也不过分。注意勾选“虚拟化 Intel VT-x/AMD-V”选项,这个选项要依赖前面确认过的物理机虚拟化功能是否开启。如果没开,虚拟机后续会报错。
磁盘方面,推荐给 60GB 左右。初学者容易陷入一个误区:明明用不了多少空间,设 20GB 行不行?Linux 系统文件本身就占用约 6-8GB,如果你还要装开发环境、Docker 镜像、各种软件包,20GB 用不了多久就会爆满。而且 VMware 默认使用“将虚拟磁盘拆分成多个文件”的方式,这种磁盘并不会立刻占满物理硬盘的全部空间,而是随着使用逐渐增长,因此给大一点并不会造成物理磁盘空间的瞬间浪费。建议直接选择“将虚拟磁盘存储为单个文件”,性能上略好一些,同时在快照备份时读取更顺畅。
显示器方面不需要特别设置,VMware 默认的输出分辨率已经能自适应,安装好 open-vm-tools 后会自动填充窗口大小。
配置好这些参数后,点击“完成”,虚拟机就被创建好了。
4. Ubuntu 系统安装流程详细拆解
4.1 从启动到安装界面的完整流程
在 VMware 主界面里点击刚创建的虚拟机,然后点击“开启此虚拟机”,屏幕会立即进入 Ubuntu 的引导界面。这里有一个小技巧:虚拟机窗口里鼠标会被模拟捕获,要释放鼠标回到 Windows10,只需要同时按下 Ctrl + Alt 组合键,这是 VMware 最基本的默认快捷键。
Ubuntu 启动后首先会看到一个 GRUB 引导菜单,里面通常有“Try or Install Ubuntu”等几项。选择进入“Try or Install Ubuntu”,系统会加载一个临时的桌面环境。这时候你有两个选择:一是点桌面上的“Install Ubuntu”图标正式进入安装;二是可以先在临时桌面上体验一下 Ubuntu 环境,看看硬件有没有明显问题。我通常会直接用“Install Ubuntu”开始。
接下来安装程序会让你选择安装语言,默认 English 即可,当然你也可以选简体中文。然后到“Keyboard layout”,默认的 English (US) 布局就够用,如果你需要中文输入法,后面系统装好之后再配置即可。
4.2 分区方案怎么选:自动分区还是手动分区
在“Installation type”这一步,新手经常被“擦除磁盘并安装 Ubuntu”这个选项吓到,担心会影响到 Windows10。放心,虚拟机里的磁盘只是一个虚拟出来的文件,操作它不会动到实体系统,所以你可以放心选择“Erase disk and install Ubuntu”,让安装程序自动对整个虚拟磁盘进行分区。
如果你想追求更可控的布局,也可以选择“Manual”手动分区,但我要说的是,对这个阶段的需求而言,手动分区带来的收益极其有限。Linux 的手动分区需要你理解 /(根分区)、swap(交换分区)、/home(用户数据分区)的区别,如果你没有明确目的,自动分区在绝大多数情况下就是最优解,它会合理创建根分区和交换分区。
分区完成后,安装程序会询问你“Where are you”,选择时区。如果未来有跨时区部署需求,这里可以直接选择 Asia/Shanghai,也就是东八区,系统时间和 Windows10 显示一致。
4.3 创建用户与安装读条时常见问题的应对
之后是创建默认用户和主机名。注意这里的用户名最好使用小写英文字母,不要用中文,否则后续很多命令行操作会给你带来编码上的麻烦。密码可以设置一个容易记住但不至于太简单的,毕竟这是一个测试环境。
设置完之后,安装程序开始正式写入系统,界面会显示一个进度条,通常需要等待几分钟到十几分钟不等,取决于电脑性能和虚拟磁盘的写入速度。这时候你去喝杯水就行,不用一直盯着。
安装过程中偶尔会出现停在某个百分比很久的情况,尤其是“安装系统”阶段。多数情况下这只是因为正在从镜像里解压文件,耐心等待即可。如果超过 30 分钟还没动静,再考虑是否镜像文件有问题,建议用前面提到的 SHA256 校验方式重新确认镜像完整性。
安装完成后,安装程序会提示重启虚拟机。重启时注意 VMware 可能会弹出提示,建议你点击“虚拟机”菜单里的“移除可移动媒体”或者“断开连接”,这样虚拟机就不会再从 ISO 文件引导,而是从虚拟硬盘启动。
5. 安装后的必要配置:让 Ubuntu 虚拟机真正好用
5.1 安装 VMware Tools / open-vm-tools
Ubuntu 系统第一次启动后,窗口分辨率很可能只有 800x600 或者 1024x768,鼠标也不能在两个系统之间流畅地进出。这个问题的根源是缺少虚拟化增强组件,对应到 VMware 中就是 VMware Tools。
较新版本的 Ubuntu 实际上已经内置了开源的 open-vm-tools 包,但在某些安装方式下并不会自动启用。你可以先打开终端,执行以下命令来确认或安装它:
sudo apt update sudo apt install open-vm-tools open-vm-tools-desktop安装完成后重启虚拟机,你就会发现分辨率可以自动适应 VMware 窗口大小了,鼠标进出不用再按快捷键,复制粘贴也能在 Windows10 和 Ubuntu 之间双向使用。open-vm-tools 是开源实现,功能和 VMware Tools 基本一致,而且在 Ubuntu 的软件源里可以直接安装,比去 VMware 菜单里“Install VMware Tools”后挂载虚拟光驱编译要省事得多,这也是 Ubuntu 装机后我第一个执行的步骤。
5.2 网络模式说明:NAT、桥接、仅主机怎么选
虚拟机安装好之后,网络是大家最常困惑的地方。VMware 默认给你创建的虚拟机使用的是 NAT 模式,这个模式下虚拟机通过宿主机共享 IP 地址联网,对宿主机来说是“隐藏”在局域网后面的,可以正常访问外网,但外部设备(包括宿主机自己)默认无法直接访问虚拟机里的服务。
NAT 模式适合绝大多数场景,比如虚拟机里要 apt 安装软件包、要从 GitHub 克隆代码、要上网查资料,这些都没问题。
如果你希望局域网内的其他设备也能直接访问虚拟机里跑的服务,比如你在 Ubuntu 里启动了一个 Web 服务,想让手机或另一台电脑直接访问,那就需要切换到桥接模式。在 VMware 菜单里打开虚拟机的“虚拟机设置”,把网络连接方式改为“桥接模式”,Ubuntu 内重新获取 IP 地址即可。注意桥接模式下虚拟机的 IP 会和宿主机在同一网段,所以想通过 SSH 连接它,直接用那个 IP 地址就行。
如果你完全不需要虚拟机联网,只希望宿主机和虚拟机之间通信,可以选择“仅主机模式”。这个模式适合做恶意软件分析或彻底离线的实验环境,不过后续需要共享文件时会麻烦一些。
我的个人建议是:日常使用 NAT 模式最省心,需要对外提供服务时临时切到桥接模式,用完再切回来。
5.3 中文字体、中文输入法与共享文件夹
Ubuntu 桌面版安装完默认英文界面,如果你希望系统界面显示中文,可以到“设置 -> Region & Language”里添加中文语言包,并调整语言顺序。不过说真的,如果你以后要在 Linux 下做开发,早点习惯英文界面反而有利,很多报错信息和文档都是英文的,看习惯英文界面能减少翻译误差。
中文输入法是一个高频需求。Ubuntu 22.04 自带的 GNOME 输入法框架对中文拼音支持已经不错,在“设置 -> 键盘 -> 输入源”里添加“Chinese (Intelligent Pinyin)”即可直接使用。不需要额外安装搜狗输入法那么折腾,除非你对输入法的词库有更高要求。如果你非得装搜狗,请先安装 fcitx 框架,再下载搜狗 Linux 版 deb 包,但这套流程对新手来说确实容易踩坑,不推荐作为初始方案。
共享文件夹的配置也值得花几分钟搞定。在 VMware 的“虚拟机设置”里,切换到“选项”页,找到“共享文件夹”,选择“总是启用”,然后添加一个 Windows10 下的目录作为共享路径。Ubuntu 端通常会自动挂载到/mnt/hgfs/目录下,如果没有自动挂载,可以执行:
sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other -o uid=1000这样就能在两套系统之间方便地交换文件,比我以前用 U 盘拷贝方便多了。
6. 踩坑实录:我从多次重装里总结的高频问题
6.1 提示“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”
这是我被问过最多的问题,也是新手最容易卡住的环节。触发原因绝大多数是物理机的 BIOS/UEFI 里没有开启虚拟化,或者是 Windows10 自身启动的 Hyper-V 与 VMware 发生了冲突。
排查思路很简单:先到任务管理器里的“性能”页面看 CPU 的虚拟化状态是否显示“已启用”。如果是“已禁用”,重启进 BIOS 开启 VT-x 或 AMD-V。如果显示“已启用”但仍然报错,则检查 Windows 功能里是否启用了“Hyper-V”或“虚拟机平台”。这两个功能开启时,Windows10 会独占虚拟化资源,导致 VMware 无法直接使用硬件虚拟化。解决方式是:打开“控制面板 -> 程序和功能 -> 启用或关闭 Windows 功能”,把 Hyper-V、虚拟机平台、适用于 Linux 的 Windows 子系统这几个可选项都取消勾选,重启电脑后再启动 VMware。
6.2 Ubuntu 安装后无法启动,停在光标闪烁
这种情况我在早期也遇到过,安装完成重启后,屏幕卡在左上角一个光标闪烁,既不进系统也不报错。
造成这种问题的原因可能是磁盘控制器类型和引导方式不匹配。如果你在创建虚拟机时选择了较新的固件类型 UEFI,但某些镜像引导方式不匹配,就会导致启动卡住。解决办法有两个方向:一是在 VMware 的虚拟机设置里把“固件类型”从 UEFI 改成 BIOS,重新安装系统;二是确认虚拟机的硬盘接口类型,如果是 SATA,可以改成 NVMe 试试。
修改固件类型需要先关闭虚拟机,在“虚拟机设置”的“高级”选项中找到固件类型进行调整。如果虚拟机已经装好系统,改固件类型后大概率无法启动,需要重装。所以我建议你在第一次创建虚拟机时就选 BIOS 类型,兼容性最好,除非你清楚自己需要 UEFI 的特性。
6.3 虚拟机磁盘空间不足与虚拟磁盘扩容
之前强调过磁盘尽量给 60GB,但如果你已经按默认的 20GB 创建了虚拟机,使用一段时间后就会遇到根分区满的故障,表现为 apt 无法更新、桌面无法登录。这个问题可以通过扩容虚拟磁盘解决,但操作步骤比直接给足空间要繁琐不少。
首先在 VMware 的“虚拟机设置”里,点击“硬盘”并选择“扩展”,把磁盘容量调大,比如从 20GB 调到 40GB。这只是把虚拟磁盘的物理容量撑大,虚拟机里的文件系统还没感知到变化。你需要在 Ubuntu 中打开终端,使用 gparted 工具来调整分区大小:
sudo apt install gparted sudo gparted在 gparted 的图形界面中,选中根分区,右键选择“调整大小/移动”,把分区拉满到磁盘末尾,然后点击应用。整个过程会自动完成,完成后重启虚拟机,用df -h就能看到根分区容量已经变大了。
如果物理磁盘剩余空间足够,这个扩容方案基本无损。但如果分区操作不小心中断了,有一定概率导致数据损坏,所以任何时候执行分区操作前都记得先给虚拟机做一个快照。
6.4 虚拟机与宿主机之间复制粘贴失效
复制粘贴和文件拖拽功能依赖 open-vm-tools 或 VMware Tools。有时候明明安装了 tools,却仍然无法双向复制,通常是因为 VMware Tools 服务没有正常运行。执行以下命令查看服务状态:
systemctl status open-vm-tools如果服务异常,重启服务即可:
sudo systemctl restart open-vm-tools另外一个小坑:复制粘贴功能只支持文本和文件,并不支持所有格式的富文本粘贴,比如带格式的表格可能粘贴后样式丢失。如果你需要批量移动大量文件,还是用共享文件夹更靠谱,别费劲拖拽了。
7. 我的一些个人经验:日常使用虚拟机的几个习惯
最后分享几个我长期用下来觉得特别值得养成的操作习惯。
第一个习惯是勤做快照。VMware 的快照功能相当于给虚拟机拍一张“后悔药”,安装大软件、更新内核、修改系统配置文件之前,先做一个快照,万一玩崩了,几十秒就能恢复到正常状态。快照文件会占用额外磁盘空间,所以保留两三个关键节点的快照就够了,别无限留。
第二个习惯是学会了就试着删掉重装一次。学虚拟机最好的方式不是小心翼翼永远不犯错,而是在一个安全的虚拟环境里放飞自我。我建议你装好系统后,故意折腾几次,比如删掉一个关键系统包,再尝试修复;或者手动分区,格错卷。这些在物理机上要命的事,在虚拟机上只是一个小场景。通过这些“预演”,你对 Linux 的理解会积累得比看十遍教程都扎实。
第三个习惯是配合 WSLg 使用。其实 Windows10 较新的版本还内置了 WSL(Windows Subsystem for Linux)功能,可以轻量运行一个 Linux 子系统。如果你的需求只是跑命令行工具、编译小项目,WSL 的启动速度和资源占用比虚拟机低很多。但如果你需要完整的桌面环境、图形界面软件、或者想模拟一台独立服务器的网络行为,那就回归虚拟机的怀抱。这两者不是替代关系,可以同时存在,交叉使用。
虚拟机这个工具,说到底是为了让人敢于尝试、敢于试错。Windows10 下装一个 Ubuntu 虚拟机,花不了多少时间,却能把一扇探索 Linux 世界的大门稳稳地推开。希望这篇教程能帮你一步步把环境搭起来,遇到问题也别慌,多读读报错信息,多数答案就在里面。