很多人一提到在电脑上装 Linux,第一反应就是怕把宿主机搞坏。我早期也是这样,犹豫了半天最后还是选择了虚拟机方案。现在回过头看,用虚拟机装 Ubuntu 22.04 64 位系统,其实是成本最低、风险最小的学习路径。这篇就把我从下载镜像到完成初始配置的整个流程完整梳理一遍,重点放在"简便"两个字上,尽量少踩坑、少走弯路,适合第一次接触 Linux 的初学者,也适合已经装过但想重装或换软件平台的用户。
我用的宿主环境是 Windows,但核心方法在 macOS 上也通用,只是虚拟机软件菜单名称略有差异。如果你正准备装 Ubuntu 22.04 或已经在折腾中遇到了问题,这篇文章应该能帮你节省不少时间。
1. 为什么用虚拟机:双系统对比下的最优解与版本选型分析
1.1 虚拟机和双系统到底选哪个
先说结论:日常学习、开发、跑实验,虚拟机是首选;除非你的电脑性能太差,或者需要依赖物理 GPU 做图形计算,否则没必要直接上双系统。
双系统的问题在于安装过程会重写引导记录,一旦分区操作失误,轻则丢数据,重则整个硬盘无法引导。我在早期装双系统时就遇到过引导崩溃,当时还没备份,折腾了整整一个晚上才修复。虚拟机则完全隔离,Ubuntu 系统只是宿主机上的一个文件,出了问题直接删除重来,不影响 Windows,也不用制作启动 U 盘,对新手非常友好。
唯一的顾虑是性能损耗,但现在的虚拟化技术已经相当成熟,CPU 和内存的损耗大约在 5% 到 10%,用来跑代码、写服务、学 Linux 操作完全够用。如果你只是做 Web 后端开发或者学 ROS 2,虚拟机环境下基本感知不到差别。
1.2 为什么锁死 22.04 LTS 而不是最新版本
我推荐 22.04 有三个原因。第一,它是 LTS 长期支持版本,支持周期长达五年,不用担心软件源失效的问题;第二,它的软件生态兼容性最好,很多专业软件和开发工具在 22.04 上的安装文档最全,比如 ROS 2 Humble 官方直接支持的就是 22.04;第三,社区资料非常丰富,你遇到任何安装报错,搜索引擎上几乎都能找到现成答案。
相比之下,24.04 LTS 虽然已经发布,但部分第三方软件还未完全适配,遇到问题能参考的资料少。而 20.04 虽然也很稳定,但对于新硬件支持不如 22.04,在较新的笔记本上容易出现显卡驱动问题。所以对大多数人来说,22.04 是当前平衡点最好的选择。
注意:标题里说的 64 位系统,对应的是 Ubuntu 官方镜像中的 amd64 版本。现在的家用电脑基本都是 64 位架构,下载时不要误选 32 位的 i386 版本,许多软件源的二进制包都只提供 64 位版本。
1.3 虚拟机软件怎么选:VMware Workstation、VirtualBox 和 Hyper-V 对比
目前主流的虚拟机软件有三类,根据我自己的长期使用体验,列表对比如下:
| 对比项 | VMware Workstation Player / Pro | Oracle VirtualBox | Hyper-V(Windows 自带) |
|---|---|---|---|
| 是否免费 | Player 免费,Pro 付费(有试用) | 完全免费开源 | 随 Windows 专业版/企业版提供 |
| 安装难度 | 很简单,Windows 环境下下一步就行 | 很简单,安装包一路确认 | 需要开启 Windows 功能,重启后使用 |
| 性能表现 | 表现稳定,3D 加速较好 | 略逊,但日常开发无感 | 性能好,但配置复杂度偏高 |
| 快照能力 | 支持,操作方便 | 支持,非常灵活 | 支持,但导出迁移稍繁琐 |
| 资源占用 | 中等 | 中等 | 开机即占用一部分内存 |
| 适合人群 | 追求省事、界面友好的用户 | 完全免费用户 | 已有 Windows Pro 且不想装第三方软件的用户 |
我的建议是:如果你不想花时间折腾,直接用 VMware Workstation Player,免费版本就够用,而且它的界面和向导流程都比较清晰,安装 Ubuntu 基本是"下一步"到底。如果你喜欢开源软件,VirtualBox 也完全没有问题,只是在安装增强功能时需要额外操作一步。Hyper-V 我建议新手暂时跳过,它的虚拟交换机配置比前两者复杂,容易在网络设置上卡住。
2. 创建虚拟机之前的准备工作:镜像下载、硬件资源规划与模板选择
2.1 官方镜像从哪里下载,怎么确认是 64 位
Ubuntu 的官方镜像站点是 ubuntu.com 的 download 页面,这是最权威的来源。打开页面后,选择 22.04 LTS 版本,找到"64-bit (AMD64)"的桌面版镜像下载链接。桌面版文件名一般类似ubuntu-22.04.3-desktop-amd64.iso,文件大小约 4GB 左右,看到 iso 结尾就是光盘镜像文件。
如果你打开的是国内的镜像站,比如清华 TUNA 或者阿里云镜像站,路径一般在ubuntu-releases/22.04/目录下,同样选择ubuntu-22.04.x-desktop-amd64.iso即可。下载完成后,强烈建议先校验一下 SHA256 校验和,确保镜像文件在下载过程中没有损坏,否则安装到一半出现"文件缺失"或"解压失败"时再排查就麻烦得多。
校验方法很简单,在 Windows 的终端里执行certutil -hashfile 你的文件名.iso SHA256,然后对比官方页面给出的校验值。如果一致就放心用,不一致就重新下载,这一步虽然看起来繁琐,但能避免大约 80% 的安装异常。
2.2 内存、处理器、磁盘容量怎么分配才合理
虚拟机硬件参数决定了日常使用的流畅度。我的分配经验是:内存不能低于 4GB,建议 8GB;处理器核心数给 4 个就够;磁盘建议分配 60GB 到 80GB,实际占用会随着使用逐渐增长。
这里有一个容易被忽略的点:如果宿主机内存只有 16GB,虚拟机分配 8GB 后,Windows 只剩下 8GB 可用,运行大型软件会有些吃力。所以内存分配要结合自己实际的物理内存总量来权衡。最稳妥的组合是宿主机 16GB 内存时给虚拟机 4GB 到 6GB;宿主机 32GB 内存时给虚拟机 8GB 到 12GB。
处理器方面,不用追求核心数多,关键在于分配核数不要超过宿主机物理核心数的一半左右,否则虚拟机启动或编译时反而会因为宿主机资源不足而拖慢整体速度。磁盘建议选"将虚拟磁盘存储为单个文件",这样后续如果需要迁移或备份,直接复制一个 vmdk 文件即可。
2.3 网络模式、显存、固件类型这些参数的门道
创建虚拟机时有几个参数很容易忽略,但它们直接影响后续的使用体验。
网络模式默认使用 NAT 即可,它让虚拟机通过宿主机访问外网,不需要额外配置 IP。不要一开始就选"桥接模式",因为桥接需要你的路由器支持并能给虚拟机分配独立 IP,如果分配不成功,虚拟机就会陷入"有网卡但连不上网"的尴尬状态。后续有远程访问需求时再切换桥接也不迟。
固件类型选择 UEFI 还是 BIOS 呢?Ubuntu 22.04 默认支持 UEFI 安装,如果你的虚拟机软件默认是 BIOS,保持默认也行。但建议手动选为 UEFI,因为 UEFI 能更好地支持新版 Ubuntu 的引导加载器。另外,VMware 的显卡选项可以不做特殊调整,默认 3D 图形加速打开即可,但如果你后续需要使用 GPU 相关功能,就得考虑给虚拟机分配更多显存。
3. 从创建虚拟机到安装完成:一步步带过关键界面
3.1 以 VMware 为例的创建步骤
打开 VMware Workstation Player,点击主页面的"创建新虚拟机",选择"典型(推荐)"模式。在选择安装程序映像文件时,直接指向你下载好的 Ubuntu 22.04 ISO 文件。此时 VMware 会自动识别出"Ubuntu 64 位",这里的"64 位"识别信息就是硬件层面支持 64 位系统的基础,能看到这个提示基本就稳了一大半。
接着设置虚拟机名称和存储位置,我的建议是命名用英文,比如Ubuntu2204,路径不要放在系统盘 C 盘根目录,最好放 D 盘或数据盘。磁盘容量按上面说的 60GB 起步,点下一步,在"自定义硬件"界面检查内存、处理器核心数和网络适配器是否为 NAT。确认无误后点击完成,虚拟机创建就结束了。
创建完成后先不要急着启动,可以在虚拟机设置里把"CD/DVD"里的设备勾选为"启动时连接",确保安装介质被正确识别。这一步很多新手会漏掉,结果一开机就进入黑屏,屏幕上只有一行"Bootable device not found"。
3.2 安装过程中的界面选择与输入:从语言到键盘布局
启动虚拟机后,系统会进入 GRUB 引导菜单,选择"Try or Install Ubuntu"进入安装向导。正式安装前你可以先选"Try Ubuntu",体验一下桌面环境,确认显卡和网络没问题,再双击桌面的"Install Ubuntu"开始正式安装。
安装向导第一步是选择语言,建议选"简体中文",后面系统菜单会直接中文显示,省心省力。键盘布局保持默认 English(US)即可,不需要特殊调整。到了"Updates and other software"这一步,选择"正常安装(Normal installation)",并取消勾选"安装 Ubuntu 时下载更新",原因是安装阶段下载更新会拉长整个安装时间,而且如果软件源速度慢,还容易导致安装中断。
提示:安装类型中,如果你看到"清除整个磁盘并安装 Ubuntu"这样的选项,不要害怕,这里的"磁盘"指的是虚拟磁盘,不会影响你 Windows 里的任何数据。如果你是第一次安装,选"清除整个磁盘并安装 Ubuntu"是最省事的,系统会全自动完成分区和挂载。
3.3 分区、用户名、时区设置的快速处理方案
对于绝大多数虚拟机组装场景,我都不建议手动分区。Ubuntu 22.04 的自动分区方案非常成熟,默认会生成一个 1GB 的 EFI 分区、一个 swap 分区和一个 ext4 根分区,足够日常使用。手动分区适合你明确知道自己需要切分/home或单独数据盘的情况,初学者手动分区时一旦把挂载点填错,安装完成就会因为找不到根文件系统而无法启动。
时区选择这步,虚拟机里默认显示美国时区,你直接在地图上点击中国区域,或者输入 "Shanghai" 自动定位。用户名建议使用英文,例如ubuntu,全名可以随意。密码不要太复杂,因为虚拟机环境密码主要防止误操作,写成123456这类简单的也不会有安全问题。如果系统提示密码过弱,点"继续"即可。
设置完成后进入安装过程,通常 10 到 20 分钟。等待期间不要关闭虚拟机,也不要切换窗口让虚拟机"后台运行"时断开了电源,否则安装很容易中断。看到"安装完成,请重新启动"时,重启并按提示移除安装介质(虚拟光驱会自动断开 ISO 文件),就能进入崭新的 Ubuntu 桌面了。
3.4 如果使用 VirtualBox 的差异点
VirtualBox 的创建流程和 VMware 大同小异,唯一值得强调的差异在于:创建虚拟机时,VirtualBox 会询问你选择"固定大小"还是"动态分配"的虚拟硬盘。建议选动态分配,这样磁盘文件会按需增长,不会一次性占用你宿主机 60GB 空间。启动 VirtualBox 后,需要在虚拟机的"存储"设置里挂载 Ubuntu ISO 文件,然后启动进入安装流程,其余步骤完全一致。
软碟通等工具提到"使用其他标明 64 位的安装光盘"也适用于这些虚拟机软件,只要挂载正确的 64 位 ISO,系统就能正常引导安装,不会出现"强制使用 64 位安装光盘"的提示弹窗。
4. 装完系统后的第一轮优化:增强工具、软件源和中文输入法
4.1 安装增强工具(VMware Tools 或 Guest Additions)
装完 Ubuntu 后,如果发现窗口不能自适应缩放、无法从宿主机直接拖拽文件,说明增强工具没装。这一步不是可选的,而是必须做的。
VMware 用户的推荐做法是直接在终端执行两条命令,让系统自动安装开源版增强工具:
sudo apt update sudo apt install open-vm-tools open-vm-tools-desktop -y安装完成后重启虚拟机,分辨率会自动跟随窗口大小变化,剪贴板共享功能也一并恢复。VirtualBox 用户则执行:
sudo apt install virtualbox-guest-utils virtualbox-guest-dkms -y这里解释一下为什么不用安装光盘里的工具包:VMware 的 ISO 工具包是老界面,每次升级内核后还要重新编译模块,用开源工具包则可以跟随内核自动适配,省掉很多重复劳动。
4.2 更换国内软件源,解决 apt 下载慢和安装失败问题
默认安装完的 Ubuntu 使用的软件源服务器在国外,执行apt update时速度很慢,安装软件动不动就失败。更换国内源是提升体验最立竿见影的操作。
我以清华源为例,修改命令如下:
sudo sed -i 's/archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list sudo apt update上面的 sed 命令会把软件源列表里所有archive.ubuntu.com替换为清华镜像域名。如果你使用的是阿里云源,替换为mirrors.aliyun.com即可。注意 22.04 的源文件名是/etc/apt/sources.list,而 24.04 以后改成了/etc/apt/sources.list.d/ubuntu.sources格式,所以本文的命令只针对 22.04。
更换源后第一次apt update可能会提示有一两个源因为证书问题跳过,这是正常现象,不影响使用。执行一次sudo apt upgrade(可选)把系统现有软件升级到最新版,后面你再安装各种开发工具时就会快得多。
4.3 中文输入法配置:从装包到切换输入法
Ubuntu 22.04 默认不带中文输入法,输入中文需要在系统设置里添加。最简单的方案是安装 ibus-libpinyin:
sudo apt install ibus-libpinyin -y安装完成后,打开"设置 -> 区域与语言 -> 输入源",点击加号选择"汉语(Pinyin)",将其添加为第二种输入法。然后按Super键(Windows 键)或点击右上角输入法图标切换中英文。如果切换无效,先注销再登录一次系统。
如果装完后输入法候选框不显示中文,检查是否有多余输入法框架冲突。Ubuntu 22.04 默认使用 ibus 框架,如果你之前手动安装过 fcitx,要先把 fcitx 相关包卸载干净再装 ibus。fcitx和ibus并存常常导致输入法状态栏异常,这是中文用户最常见的坑。
5. 异常场景排查:从安装失败到日常使用中的高频问题
5.1 虚拟机根本启动不起来:黑屏、无法启用虚拟机平台与蓝屏
如果你启动虚拟机时直接黑屏,或者提示"无法启用虚拟机平台",首先要检查的是 Windows 的虚拟化功能状态。在 Windows 功能中确认"虚拟机平台"和"Windows 虚拟机监控程序平台"被勾选。没勾选时执行以下操作:
- 打开"控制面板 -> 程序和功能 -> 启用或关闭 Windows 功能",勾选"虚拟机平台"。
- 如果你的处理器支持虚拟化但 Windows 功能已开启仍无效,需要重启进入 BIOS/UEFI,找到带有 Virtualization 或 VT-x 字样的选项,设为 Enabled。
如果你用虚拟机安装 Linux 过程中出现"蓝屏",很多时候不是 Ubuntu ISO 的问题,而是 VMware 和 Windows 的 Hyper-V 不兼容导致的,因为 Windows 开启 Hyper-V 后会默认接管 CPU 虚拟化指令,导致 VMware 无法使用底层虚拟化功能。处理方式是关闭 Windows 功能里的"Hyper-V"和"Windows 虚拟机监控程序平台",重启后再试。
还有一个提示:"VMware Workstation 无法连接到虚拟机。请确保您有权运行该程序、访问该程序使用...",这种情况多为 VMware 服务未启动或权限异常。以管理员身份打开服务管理器,确认VMware Authorization Service运行状态为"正在运行",右键启动即可。
5.2 终端里安装软件报错,尤其是 gcc 装不上
系统刚装完时软件源还没更新,此时直接执行sudo apt install gcc常会报"Unable to locate package gcc"。这不是系统坏了,而是包索引信息尚未同步。正确的做法是先执行:
sudo apt update sudo apt install build-essential -y其中build-essential会一次性安装 gcc、g++、make 等编译工具链,比你单装 gcc 更全面。如果apt update过程中报错"由于没有公钥,无法验证签名",说明软件源列表里存在一个旧的 PPA 源,可以在"软件和更新"里把不再使用的源取消勾选,再重新执行更新。
有时安装大软件包会提示/tmp空间不足,这通常是物理内存太小且 swap 分区不够导致的。解决方案是给虚拟机增加一个 swap 文件,命令如下:
sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile这一步做下来,再回去安装 gcc 就不会报内存不足了。
5.3 SSH 无法连接:一步步从服务端检查到网络
很多人装完 Ubuntu 想用宿主机上的终端 SSH 连接虚拟机,却总是连不上。排查链路应该按顺序走。
第一步检查虚拟机是否安装了 openssh-server:执行systemctl status ssh,如果提示 Unit ssh.service could not be found,执行sudo apt install openssh-server -y并启动服务:
sudo systemctl enable --now ssh第二步检查虚拟机 IP 地址:执行ip addr,在 NAT 模式下 IP 通常会显示为192.168.x.x,其中 x 取决于虚拟网卡网段。如果你发现网卡没有获取到 IP,说明虚拟机的 DHCP 没正常工作,可以执行sudo dhclient手动请求一下 IP。
第三步检查防火墙:执行sudo ufw status,如果 active,需要放行 22 端口:
sudo ufw allow 22/tcp第四步回到宿主机验证:执行ping 虚拟机IP,通了之后执行ssh 用户名@虚拟机IP。如果 ping 不通,重点检查 VMware 的虚拟交换机服务是否正常运行,通常重置网络适配器即可。如果你在 VMware 里感觉 SSH 连接变得卡顿,多数是 NAT 网络模式导致的延迟,可以接受,不需要切换桥接模式。
5.4 环境变量配置错误与系统引导损坏的补救思路
很多人在配置 PATH 环境变量时不小心改错了,比如把/usr/bin从 PATH 里删掉了,接下来会发现所有正常命令都找不到了,连sudo都无法执行。遇到这种情况不要慌,在终端执行:
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin临时恢复 PATH,然后把正确的配置重新写入~/.bashrc,再执行source ~/.bashrc。如果想永久生效,建议把自定义的 PATH 追加到/etc/profile.d/下的 .sh 文件里,而不是直接修改系统默认的 profile,这样升级系统时不容易被覆盖。
如果你改出了大问题导致无法进入系统,还可以利用虚拟机的快照功能。我习惯在系统正常配置完成但还没进行危险操作前打一个快照,这样即使后面把系统搞坏,也能一键恢复到快照时间点。这个习惯帮我省了无数时间和精力,强烈建议你也养成。
5.5 安装 ROS 2、LabVIEW 等专业软件时的特殊注意事项
如果你在 Ubuntu 22.04 虚拟机里安装 ROS 2 Humble 或者其他专业软件,需要注意虚拟机的资源限制。ROS 2 安装脚本需要较大的网络下载和编译内存,建议在安装前把虚拟机的内存调到 8GB,并关闭重度占用 CPU 的宿主软件。
另外,ROS 2 的安装文档里某些步骤会自动添加 ROS 软件源,如果提示"证书验证失败",执行:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 对应的公钥更新公钥后再执行apt update就能正常安装。LabVIEW 这类闭源商业软件在 Linux 虚拟机上安装时,如果遇到图形界面兼容问题,可以通过 VMware 的 3D 图形加速设置调整,或直接使用命令行安装模式绕过 GUI 安装器。
6. 备份与迁移:让虚拟机文件成为你的系统保险
6.1 快照功能:踩坑前的后悔药
虚拟机最大的优势就是可以随时保存"当前状态"。快照在 VMware 中对应"拍摄快照",在 VirtualBox 中对应"生成备份"。每次执行高风险操作前打一个快照,即便后面系统完全崩溃,恢复到快照时间点也只需要几分钟。
我个人的习惯是:每次apt upgrade前、每次修改关键配置文件前、每次安装大型软件前都拍一个快照。这样听说系统更新导致软件兼容性问题时,我基本无感,因为随时可以退回上一版状态。快照文件会占用磁盘空间,拍得太多也会把宿主磁盘塞满,建议只保留最近两到三个关键节点。
6.2 跨环境迁移:把虚拟机带到另一台电脑
如果你想把已经配置好的 Ubuntu 虚拟机迁移到另一台电脑,VMware 用户直接复制整个虚拟机文件夹,然后在目标电脑上打开.vmx文件即可。VirtualBox 用户则需要用"导出虚拟电脑"功能生成一个.ova文件,再到新电脑上导入。
迁移过程中最容易出问题的是网卡名称变化。因为虚拟机的网络接口名是绑定原机的 UUID,迁移后可能出现eth0变为enp3s0,导致 DHCP 正常但网络不通。解决方法是在迁移后的虚拟机里编辑/etc/netplan/下对应的 yaml 文件,把接口名改成系统识别到的实际名称,然后执行sudo netplan apply。如果对网络配置不熟悉,也可以在迁移后把网络设置改为 DHCP 自动模式,让系统自己适配新环境。
6.3 把虚拟磁盘转换到 U 盘的过程与风险提示
网上流行的一种玩法是把虚拟机的磁盘文件转换成可以引导启动 U 盘的镜像,也就是类似使用 DiskGenius 做"转虚拟机为 U 盘"操作。这个思路看起来方便,但它有一个前提:你的物理电脑硬件和虚拟机内驱动的兼容性必须完美,否则启动到一半会卡在内核加载阶段。
如果你想做这个转换,常规路径是先用 qemu-img 将 vmdk 或 vdi 磁盘文件转换为 raw 镜像,再用 dd 或 Win32DiskImager 写入 U 盘。但我不建议新手一上来就尝试,因为很多笔记本使用的是安全启动和特定架构,U 盘启动时会出现各种不可预见的驱动缺失问题。相比之下,老老实实用 ISO 重装系统,然后恢复自己的配置文件和数据,反而是最保险的方式。如果你确实需要把虚拟机里的应用带到物理机,优先考虑把配置脚本化,用 Ansible 或 Bash 脚本在新系统上一键恢复。
7. 几个装完 Ubuntu 系统后能顺手提升体验的小动作
上面几步做完,你的 Ubuntu 22.04 虚拟机的核心功能已经可用了。最后聊几个我在使用过程中积累的小细节,算不上必选项,但做了之后体验会舒服很多。
给虚拟机开启"自动登录"和"睡眠锁屏关闭"。在"设置 -> 用户"中打开自动登录,在"电源"中把息屏时间设置为"从不"或延长到 30 分钟以上。这是因为虚拟机主要用于开发学习,一旦息屏后重新唤醒,偶尔会引起窗口渲染异常,关闭息屏能减少这种问题。
在 Ubuntu 里把常用的开发目录用"书签"固定到 Nautilus 文件管理器侧边栏,这样每次打开文件管理器都能直接跳到工作目录,不需要层层点击路径。如果你在 Windows 和 Ubuntu 之间经常需要共享文件,可以在虚拟机里安装共享文件夹,VMware 菜单中"虚拟机设置 -> 选项 -> 共享文件夹"里添加一个 Windows 下的目录,Ubuntu 中挂载到/mnt/hgfs。这是文件互通效率最高的方式,比拖拽复制稳定得多。
另外,如果你习惯用终端,建议第一时间把终端快捷键设置好,并在终端配置文件里调整背景透明度。Ubuntu 22.04 默认终端是 GNOME Terminal,字体建议设置为 "Ubuntu Mono" 或 "Noto Mono" 14 号以上,默认字号偏小长时间看会很累。这些虽然是小设置,但每天面对电脑的时间很长,细节带来的舒适度提升是实打实的。