前阵子朋友抱来一台 Win11 笔记本,说要装个 Linux 环境跑数据分析,又担心把办公系统弄坏。我说这事最稳妥的解法就是创建一个虚拟机,把 Linux 装在一个“软件模拟出来的电脑”里,跟宿主机完全隔离,折腾坏了删了重来就行。后来我远程帮他把 VMware Workstation 装好、Ubuntu 跑起来,前前后后不到一个小时。今天就把这套完整流程和踩坑点写出来,希望能帮到正被“虚拟机怎么创建”“安装 Linux 老是蓝屏”这类问题卡住的人。
虚拟机这个东西,听起来玄乎,本质就是一个普通的应用程序。它通过虚拟化引擎把 CPU、内存、硬盘、网卡这些硬件资源“切”出一部分,虚拟出一台完整的电脑。你在虚拟机里装什么系统、怎么折腾都不会影响物理机上正在运行的系统。对做开发、测试、学习的人来说,会创建虚拟机基本算一项基础生存技能。
1. 为什么先不做双系统,而是从“创建一个虚拟机”开始
1.1 虚拟机到底帮你省了什么事
很多人第一次想用 Linux 时,脑子里冒出来的方案往往是装双系统:硬盘分一个区,开机时选择进 Windows 还是 Linux。这个方案听起来干脆,实际用起来很麻烦。你正在 Windows 里写文档,突然想查一个 Linux 命令的运行结果,必须重启电脑,再在引导菜单里选系统。来回重启几次,心情基本就没了。更难受的是,如果分区操作没搞对,或者引导程序出问题,Windows 可能直接进不去,这就不是“装个系统”的问题,而是数据抢救的灾难现场。
虚拟机的思路完全不同。你在 Windows 桌面上运行一个虚拟机软件,软件里新建一台“虚拟电脑”,把 Ubuntu ISO 镜像塞进去安装。装完以后,Ubuntu 就像 Windows 里一个窗口,随时打开、随时关闭。想同时对比两个系统的输出,两个窗口并排摆着看就行。之前我写代码时经常一边开 Windows 下的 IDE,一边开虚拟机里的 Linux 终端,两边同步测试,效率比双系统不知道高到哪里去了。
1.2 虚拟机和双系统、云主机的差别,一句话看清
用一个尽量简单的类比来说明三者的区别:
- 双系统:一套硬件,装了两个系统,同一时刻只能用一个,切换必须重启。
- 虚拟机:一套硬件,主系统上跑一个软件,软件虚拟出多台“电脑”,多个系统可以同时开着。
- 云主机:别人机房里的虚拟机,你通过网络远程连上去用,硬件不自己管。
虚拟机最大的优势有三个:一是隔离性,虚拟机里随便测试破坏性操作,不会影响宿主机;二是快照能力,系统搞坏了可以一键回滚到之前正常的状态;三是便携性,整个虚拟机就是几个文件,复制到另一台电脑上就能跑。这三种特性都是双系统和物理机很难提供的。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 虚拟化软件选择:VMware Workstation、VirtualBox 和 WSL2 的取舍
标题是“创建一个虚拟机”,但动手之前必须先解决软件选型问题。我在 Windows 上用过 VMware Workstation、VirtualBox,也长期用 WSL2,这三者看起来都是“跑 Linux ”,实际定位差别很大。
2.1 VMware Workstation Pro 是我的主力
VMware Workstation 是传统桌面虚拟化软件里的老牌产品,性能、兼容性和图形界面都做得很成熟。我日常折腾 Ubuntu、Kali 这类系统,基本都用它。它的优势一是稳定,跑数据库、编译程序这种高负载任务时很少出莫名其妙的问题;二是功能齐全,快照、克隆、网络自定义、虚拟机加密都做得很完整;三是硬件兼容性好,USB 设备直通、多显示器支持都比较省心。
2.2 VirtualBox 什么时候值得用
VirtualBox 是开源免费方案,跨平台能力很强,Windows、macOS、Linux 主机都能装。如果你的电脑配置不高,或者你只是偶尔跑个轻量系统、临时测试软件,VirtualBox 完全可以胜任。但在我实际使用中,它有几个小毛病比较影响体验:高分辨率屏幕下 GPU 加速偶尔有渲染异常,USB 设备兼容性偶发失灵,大规模编译时性能不如 VMware 稳定。所以我的建议是:预算和体验优先就选 VMware Workstation,纯免费优先就选 VirtualBox。
2.3 WSL2 不是虚拟机,但对某些场景够用
WSL2 很多人也叫它“Windows 下的 Linux”,但它底层用的是 Windows 的虚拟化平台,本质上是一个轻量工具,不是传统虚拟机。它适合跑命令行工具、开发服务器、Docker 这类场景,启动快、资源占用低。但如果你需要图形界面、需要完整的桌面体验、需要自己掌控网络配置,WSL2 就不够用了。网上有个常见报错“WSL2 无法启动,因为此计算机上未启用虚拟化”,这个我在后面专门讲,因为所有虚拟化工具都有可能遇到这个前置问题。
我的选型结论: 如果你想要一台像模像样的 Ubuntu 桌面系统,想在虚拟机里做实验、跑图形界面,首选 VMware Workstation;如果你只是想在 Windows 里敲几条 Linux 命令,WSL2 更轻便;VirtualBox 适合预算有限但想完整体验“虚拟化”的过程。
3. 动手之前先排除“虚拟化未开启”这类拦路虎
我帮人远程装虚拟机时,遇到最多的问题不是软件不会装,而是 VMware 装到一半提示无法启动、或者 WSL2 直接报“未启用虚拟化”。这些问题大多只有一个根源:电脑固件里的 CPU 虚拟化开关没打开,或者 Windows 的系统功能跟虚拟机软件冲突。
3.1 CPU 虚拟化开关:在固件里打开 VT-x / AMD-V
无论是 Intel 还是 AMD 的 CPU,虚拟化功能默认情况下大部分电脑是打开的,但部分品牌机、旧电脑或某些游戏本默认是关闭的。你怎么知道自己电脑开没开?
最快的办法:打开任务管理器,切到“性能”选项卡,点“CPU”,看右下角“虚拟化”那一行。如果显示“已启用”,说明 CPU 虚拟化没问题;如果显示“已禁用”,就得进固件设置里开。
不同主板的固件界面不一样,但选项名称基本都是:
- Intel 平台:Intel Virtualization Technology、VT-x、Virtualization
- AMD 平台:SVM Mode、AMD-V
进固件的方式一般是开机时按 Del 或 F2,有些机器是 F10、F12。找“Advanced”或“CPU Configuration”相关菜单,把对应选项改成 Enabled,保存退出重启。这个操作本身没有风险,改错了改回来就行,放心大胆试。
3.2 Windows 系统功能与虚拟机软件的冲突
即使 CPU 虚拟化开了,还有一类特别容易被忽略的坑:Windows 自带的虚拟化组件跟 VMware 抢资源。Hyper-V、Windows 虚拟机监控程序、内核隔离、基于虚拟化的安全性(VBS)这些功能,会占用 VT-x 指令集,影响 VMware Workstation 正常运行,导致启动虚拟机时提示“此主机不支持虚拟化实际模式”或者“VMware Workstation 无法连接到虚拟机”之类的问题。
遇到这种情况,排查步骤如下:
用管理员身份打开 PowerShell 或命令提示符,输入 systeminfo,看输出里“Hyper-V 要求”那一段。如果上面显示“检测到虚拟机监控程序,将不显示 Hyper-V 所需功能”,说明系统里已经有 Hyper-V 组件在运行。
如果是这个情况,可以打开“控制面板—程序—启用或关闭 Windows 功能”,把 Hyper-V、Windows 虚拟机监控程序平台、适用于 Linux 的 Windows 子系统这几项取消勾选,重启后再装 VMware。注意:一旦关掉 Hyper-V,WSL2 和 Docker Desktop 也会受影响,如果你高频使用这两个工具,建议先想清楚再操作。
我的习惯是:装了 VMware Workstation 的机器,尽量不开 Hyper-V;重度使用 WSL2 的机器,就直接用 WSL2,不硬装 VMware。鱼与熊掌不可兼得,除非你愿意折腾系统引导多选这类复杂方案。
4. VMware Workstation 下创建 Ubuntu 虚拟机全流程
前置条件都确认好之后,就可以正式创建虚拟机了。这一步我尽量把每个参数都讲清楚,因为“下一步”“下一步”谁都会点,但参数为什么这么填,很多人并不明白。
4.1 新建虚拟机向导:每个参数怎么填
打开 VMware Workstation,点“创建新的虚拟机”。有两个选项:典型和自定义。我建议选“自定义”,因为典型模式虽然省事,但很多默认配置不一定适合你的真实需求。
自定义向导里,遇到的关键参数按下面这套配置来,基本上能应付大多数场景:
- 虚拟机硬件兼容性:选 Workstation 16.x 或 17.x,兼容性往下兼容,选新版本能用更多新特性,但如果之后要把虚拟机文件拷到旧版本软件里用,就选低一级。
- 安装来源:选“稍后安装操作系统”。这一步可能违反很多人的直觉,为什么不直接选 ISO 镜像?因为选完 ISO 后,VMware 会进入简易安装模式,它会按默认参数自动化安装,看似方便,实际安装完以后你很难练手,而且分区、用户配置都可能不是你想要的。选“稍后安装”,可以后续手动挂载 ISO,安装过程完全由你把控。
- 客户机操作系统:Linux,版本选 Ubuntu 64 位。如果后续要装其他发行版,在这里对应选择就行。
- 虚拟机名称和位置:名称随意,但我建议带上系统名和用途,比如 ubuntu-dev-01。位置注意别放 C 盘系统盘,因为虚拟机文件动辄几十 GB,C 盘一满系统就卡。
- 固件类型:通常选 UEFI。以前习惯用 BIOS,现在新系统 UEFI 更合适。
- 处理器配置:CPU 数量选 1,每个处理器的核心数按你的物理 CPU 情况来。怎么看自己 CPU 几核?任务管理器—性能—CPU 里能看到“逻辑处理器”。建议给虚拟机 2 到 4 个核心,太多反而影响宿主机性能。
- 内存:如果宿主机内存是 16GB,虚拟机给 4GB;是 32GB,虚拟机可以给 8GB。别贪多,内存不够会导致系统卡成幻灯片。
- 网络类型:默认选 NAT。这个我后面单独展开讲。
- I/O 控制器类型:用默认的 NVMe 或 SCSI 都行,不用特意改。
- 磁盘类型:NVMe 在现代虚拟机上速度更好,默认推荐的选项通常是合理的。
- 磁盘容量:建议至少 40GB,并且把“立即分配所有磁盘空间”勾掉,选择“将虚拟磁盘拆分成多个文件”。这样磁盘是按需增长的,不会一次性把物理硬盘空间占光。
4.2 挂载 ISO 并完成 Ubuntu 安装
向导创建完成后,右键虚拟机,点“设置”,在 CD/DVD 里选择“使用 ISO 镜像文件”,浏览到你下载好的 Ubuntu ISO。确认无误后开启虚拟机。
Ubuntu 安装过程有几个关键点值得留意:
- 第一次启动会有试用和安装两个选项,选“安装 Ubuntu”。
- 安装类型里,新手直接选“清除整个磁盘并安装 Ubuntu”,但注意这是针对虚拟磁盘的,不会动你的物理机硬盘。如果你想练习手动分区,也完全可以在这里试验,搞砸了删掉虚拟机重来就行。
- 安装过程中会让设置用户名、密码和计算机名。这里不必纠结,开发环境的话用短一点的用户名会让你后面敲命令省力不少。
- 等待安装完成重启时,如果提示“移除安装介质”,直接把虚拟机设置里的 CD/DVD 改成“自动检测”或断开 ISO,再重启就完事了。
4.3 装完系统以后别急着用,先做三件事
系统进桌面以后,千万别急着装软件,先做三件事:
- 安装 VMware Tools 或 open-vm-tools。这个工具集类似虚拟机的“驱动包”,不装的话屏幕分辨率固定、鼠标切换不顺畅、剪贴板没法共享。菜单栏点“虚拟机—安装 VMware Tools”,然后按终端里的提示操作。
- 给系统做一次“快照”。刚装好的干净系统是最宝贵的状态,拍照留存以后,不管你怎么折腾坏了,都能秒回这个原点。
- 更新软件源并执行系统更新。执行
sudo apt update && sudo apt upgrade -y,把系统基础软件包刷到最新,避免后面装依赖时被版本问题卡住。
5. 创建好的虚拟机要怎样才算“会用”:网络、快照和文件交换
虚拟机装完只是第一步。很多人的虚拟机用一段时间就扔在角落吃灰,不是系统不好用,而是网络、文件和回滚这几种核心操作没搞清楚,导致体验很差。
5.1 三种网络连接模式,选错会踩大坑
VMware 给虚拟机提供三种网络模式,每个模式对你的使用体验影响非常大:
- 桥接模式:虚拟机和宿主机在同一张物理网卡上,相当于局域网里又多了一台独立电脑。别人能通过局域网直接访问虚拟机,虚拟机也能直接访问局域网设备。适合要搭服务、联调设备、做实验的场景。缺点是需要占用一个局域网 IP。
- NAT模式:虚拟机通过宿主机共享上网,宿主机相当于一个小型路由器。虚拟机可以正常上网,但局域网里的其他设备访问不到虚拟机,除非额外配置端口转发。这种模式最常见,日常学习和开发用 NAT 就够了,省心又安全。
- 仅主机模式:只有宿主机能和虚拟机互相通信,虚拟机无法访问外网。适合完全离线的测试环境。
我早期用虚拟机时图省事一律 NAT,后来做 Web 服务调试时发现宿主机浏览器访问不到虚拟机里的服务,折腾半天才想起来要改桥接。所以创建虚拟机前先想清楚用途,网络模式别一刀切。
5.2 快照就是后悔药,大胆试错的前提
快照是虚拟机最值钱的功能,没有之一。它能把虚拟机某个时刻的完整状态保存下来,包括操作系统配置、已安装软件、文件状态。之后任何操作出了问题,都可以直接恢复到快照时的状态。
我的习惯是这几种节点必拍快照:
- 系统安装完、做完基础更新之后;
- 每次搭好一套完整开发环境之后;
- 做危险改动(改内核、改网络配置、跑不确定的脚本)之前。
拍快照的操作非常快,在 VMware 菜单栏点“虚拟机—快照—拍摄快照”,起个一眼能认出来的名字,比如 ubuntu-base、mysql-installed。恢复时也只要点一下,虚拟机重启以后就回到过去。
5.3 宿主机与虚拟机的文件互传
如果你装了 VMware Tools,最简单的办法就是直接把宿主机的文件拖进虚拟机窗口。但大文件或者多文件场景,拖拽偶尔会卡住,我更推荐用共享文件夹:
虚拟机设置里找到“选项—共享文件夹”,选择“总是启用”,添加一个宿主机目录。Ubuntu 里挂载到的路径通常在 /mnt/hgfs/ 下,打开文件管理器就能看到。这样两边共用一个目录,开发代码放到共享目录里,宿主机和虚拟机都能读写,省去来回复制文件的麻烦。
6. 使用过程中最常见的三个故障,和我的排查顺序
最后把使用虚拟机过程中最常见的三个故障汇总一下。这几个报错被搜索的次数非常多,我把排查思路完整的放出来,你按顺序查,大概率能解决。
6.1 VMware Workstation 无法连接到虚拟机
报错信息通常类似“VMware Workstation 无法连接到虚拟机。请确保您有权运行该程序、访问该程序使用的所有目录以及访问临时目录”。
我遇到这个问题的次数不少,主要原因是 VMware 的授权服务没跑起来。VMware Workstation 依赖一个叫 VMware Authorization Service 的后台服务,这个服务如果停用了,虚拟机就无法正常启动。
排查顺序如下:
按 Win + R,输入 services.msc,找到“VMware Authorization Service”。如果状态不是“正在运行”,右键启动,并把启动类型设为“自动”。
如果服务启动失败,以管理员身份重新运行 VMware Workstation。很多权限问题,管理员身份就能解决。
如果还是不行,检查一下杀毒软件是否拦截了 VMware 的进程和目录。部分安全软件会把虚拟机进程当成可疑程序处理,把它们加入白名单。
6.2 Linux 安装过程蓝屏
不要怀疑,虚拟机里安装 Linux 也真会蓝屏。这个“蓝屏”跟 Windows 的蓝屏长得不一样,常见的是安装界面直接花屏、卡死,或者直接退出到黑屏。通常在 Ubuntu 安装过程中遇到,十有八九是以下原因:
原因一:虚拟机显示的图形能力不足。可以尝试把虚拟机的硬件兼容性调到低版本,或者关闭“加速 3D 图形”选项。虚拟机设置—显示器,取消勾选“加速 3D 图形”,能解决一批花屏问题。
原因二:宿主机系统开了内存完整性或内核隔离。Windows 安全中心—设备安全性—内核隔离,把它关掉再重启电脑。
原因三:ISO 镜像文件损坏或下载不完整。重新从官方渠道下载镜像,校验一下 SHA256 值。
我个人的实际教训是:有一次虚拟机装 Ubuntu 总在安装进度 70% 左右黑屏,反复重试了三次,最后把 ISO 重新下载一遍才解决,旧镜像的文件完整性早就出问题了。
6.3 Ubuntu 虚拟机网络上的问号
桌面右上角网络图标出现一个问号,说明系统没有正常连接网络。这个问题在网络配置改乱之后非常常见,尤其是刚装完系统、打开终端想执行 apt update 却提示找不到地址时。
我的排查顺序是:
先用 ip a 查看网卡是否有 IP 地址。如果网卡没有 IP,多半是 DHCP 没拿到地址。对 Ubuntu 桌面版,可以点右上角网络设置,把 IPv4 改成自动 DHCP 再重新连接。
如果网卡有 IP 但 ping 不通外网,先检查宿主机网络是否正常,再检查 NAT 服务和虚拟网络适配器是否被禁用。VMware 菜单栏“编辑—虚拟网络编辑器”,点“更改设置”,把 VMnet8(NAT 模式对应的虚拟网卡)恢复默认设置,往往能解决。
还有一种情况:虚拟机是从其他机器复制过来的,MAC 地址冲突导致网络异常。虚拟机设置里,把网络适配器的高级选项里“MAC 地址”改一个新的值,或者点“生成”重新生成 MAC,重启虚拟机。
我自己遇到最多的其实是第三种,因为平时喜欢把搭好的虚拟机镜像拷来拷去,一复制就忘改 MAC,网络问号就悄悄出现。后来养成了一个习惯:虚拟机文件复制到新机器后,先重新生成 MAC 地址再开机。
回到最开始的问题,“创建一个虚拟机”这件事本身并不难,难的是把原理弄通、把常见坑绕过。只要把虚拟化开关、软件选型、网络模式、快照和故障排查这五件事搞明白,无论是用 VMware 还是 VirtualBox,你都算真正上手了。如果你手边正好有一台 Windows 电脑,照着上面的步骤走一遍,创建出属于你自己的第一个 Ubuntu 虚拟机,应该用不了一个小时。
