首页/软件/Multipass

Multipass:一条命令启动 Ubuntu 虚拟机的跨平台工具 #

Multipass 是什么? #

Multipass 是 Canonical(Ubuntu 背后的公司)推出的一款免费开源虚拟机管理工具,只需一条命令即可在 Windows、macOS 和 Linux 上启动并管理 Ubuntu 虚拟机。

它把"下载镜像—创建虚拟机—安装系统—配置网络"这一整套繁琐流程压缩为一次 multipass launch 调用:镜像自动获取并本地缓存,虚拟机在数秒内就绪,随后可直接用 multipass shell 进入系统。Multipass 提供的是"云风格"的实例——支持 cloud-init 初始化、SSH 密钥注入、目录挂载与文件传输,行为与公有云上的 Ubuntu 实例高度一致。对于需要干净 Ubuntu 环境做开发、测试、CI 构建或演示的工程师来说,它免去了手工配置 VirtualBox/VMware 的麻烦,也不会污染本机环境。该工具采用 GPLv3 开源协议,代码托管于 GitHub,由 Canonical 官方维护。

Multipass 有哪些亮点特色? #

  • 一条命令启动 Ubuntu 虚拟机:执行 multipass launch 即可获得一台全新 Ubuntu 实例,无需手动下载 ISO、配置虚拟硬件或走系统安装向导,镜像会自动拉取并缓存到本地,后续创建速度更快。
  • 原生虚拟化后端,性能接近物理机:在 Windows 上使用 Hyper-V(同时支持 VirtualBox 后端),在 macOS 上使用系统原生虚拟化框架 / QEMU,在 Linux 上使用 KVM/QEMU,充分利用宿主机硬件加速能力。
  • 三大桌面平台体验一致:Windows、macOS、Linux 共用同一套命令行接口与工作流,团队跨平台协作时文档与脚本可直接复用,降低环境差异带来的沟通成本。
  • 云风格实例,原生支持 cloud-init:通过 --cloud-init 传入 cloud-config 文件,即可在实例首次启动时自动安装软件、创建用户、注入 SSH 公钥、执行初始化脚本,方便在本地复刻公有云的部署行为。
  • 轻量快速,实例即用即弃:镜像本地缓存后重复创建可秒级完成;实例可随时 stop、delete、purge,测试环境用完即可彻底清理,不留垃圾文件。
  • 完整的生命周期与文件管理命令:list、info、shell、exec、start、stop、delete、purge、mount、transfer、find、aliases 一应俱全,还能通过 multipass mount 把宿主机目录挂载进虚拟机,或用 multipass transfer 直接传文件。
  • 免费开源,官方维护:Multipass 采用 GPLv3 协议开源,由 Canonical 官方团队持续维护并随 Ubuntu 新版本同步更新镜像目录,企业用户也可获得 Canonical 的商业支持体系背书。

Multipass截图

免费下载 Multipass #

以下为官方提供的各平台安装包,点击链接即可下载。

文件名 描述 大小 下载
multipass-1.16.4+mac-Darwin.pkg macOS 安装包(.pkg) 145.4 MB 夸克网盘
multipass-1.16.4+win-win64.msi Windows 64 位安装包(.msi) 62.2 MB 夸克网盘

Linux 用户可直接通过 Snap 或官方 APT 仓库安装,无需下载安装包,详见下方"如何安装"章节。

Multipass 如何使用? #

第 1 步:确认环境就绪 安装完成后,打开终端(Windows 可用 PowerShell 或 CMD),执行 multipass version 检查是否安装成功,执行 multipass find 查看当前可用的 Ubuntu 镜像列表(包含各 LTS 版本与 daily 构建)。

第 2 步:创建第一个实例 执行 multipass launch --name dev,Multipass 会自动下载并缓存镜像,随后创建名为 dev 的虚拟机。如需指定资源规格,可加参数:multipass launch --name dev --cpus 4 --memory 8G --disk 40G。

第 3 步:查看与进入实例 用 multipass list 查看所有实例的名称、状态和 IP 地址;用 multipass info dev 查看该实例的详细配置;用 multipass shell dev 直接以 Ubuntu 用户身份登录虚拟机内部,之后的操作与使用一台真实 Ubuntu 服务器完全一致。

第 4 步:在宿主机与虚拟机之间交换文件 multipass mount /本地/项目路径 dev:/home/ubuntu/project 可将宿主机目录挂载进虚拟机,实现代码实时同步;multipass transfer ./app.tar.gz dev:/home/ubuntu/ 可单次传输文件。也可直接用 multipass exec dev -- ls -l 在不登录的情况下远程执行命令。

第 5 步:用 cloud-init 做自动化初始化 编写一个 cloud-config.yaml,在其中声明要安装的软件包、要写入的文件或要执行的命令,然后用 multipass launch --name ci --cloud-init cloud-config.yaml 创建实例,开机过程会自动完成全部初始化,非常适合复刻云端部署流程。

第 6 步:清理与回收 测试结束后,用 multipass stop dev 停机,用 multipass delete dev 标记删除,再执行 multipass purge 彻底释放磁盘空间;若要一次性清空所有实例,可使用 multipass delete --all && multipass purge。

Multipass 的常见问题? #

Multipass 和 VirtualBox、VMware 有什么区别? Multipass 是面向 Ubuntu 的命令行虚拟机管理器,不做通用型桌面虚拟化,而是专注"快速获得一台可用的 Ubuntu 实例"。它屏蔽了 ISO 下载、系统安装、网络配置等步骤,天然支持 cloud-init,更贴近开发与测试场景;如果你需要安装 Windows、FreeBSD 等其它系统或使用图形化管理界面,则应选择 VirtualBox、VMware 等通用虚拟化软件。

Multipass 是免费的吗? 是的。Multipass 采用 GPLv3 开源协议发布,个人与商业使用均不收费,源码托管在 GitHub 上并由 Canonical 官方维护。Canonical 另有面向企业的 Ubuntu Pro 与商业支持服务,但那属于可选增值项,不影响 Multipass 本身的免费使用。

在 Windows 上安装需要什么前提条件? Windows 版本依赖 Hyper-V 作为默认虚拟化后端,因此需要 64 位 Windows 10/11 专业版或企业版,并在 BIOS/UEFI 中开启硬件虚拟化,同时在"启用或关闭 Windows 功能"中勾选 Hyper-V。若你的系统是家庭版或 Hyper-V 不可用,可切换使用 VirtualBox 后端。

如何调整已有虚拟机的 CPU、内存或磁盘? Multipass 不支持在实例运行中直接修改硬件规格。推荐做法是先 multipass delete 旧实例并用相同名称、更高规格重新 launch;若实例中有重要数据,可提前用 multipass transfer 或 multipass mount 把数据导出到宿主机,再迁移到新实例。

虚拟机里的服务如何从宿主机访问? 每个 Multipass 实例都会被分配一个独立 IP,执行 multipass list 即可看到。只要实例内的服务监听在 0.0.0.0,直接在宿主机浏览器或客户端访问 http://<实例IP>:<端口> 即可。若访问不通,请先检查实例内部防火墙(如 ufw)是否放行了对应端口。

创建实例时提示镜像下载失败或速度很慢怎么办? 这通常是网络访问镜像源受阻导致。可检查本机代理设置与 DNS 解析,或在网络状况较好的时段重试;已成功下载的镜像会缓存在本地,后续创建同版本实例不再重复下载,因此首次下载完成后体验会明显改善。(参考社区常见反馈)

Multipass 如何安装? #

Windows #

  1. 下载 multipass-1.16.4+win-win64.msi 安装包。
  2. 双击运行安装向导,按提示完成安装;安装过程需要管理员权限,并会注册 Multipass 的后台服务。
  3. 若系统尚未启用 Hyper-V,请在"控制面板 → 程序 → 启用或关闭 Windows 功能"中勾选 Hyper-V 并重启,或改用 VirtualBox 后端。
  4. 打开 PowerShell,执行 multipass version 验证安装是否成功。
  5. 如需静默安装(适合批量部署),可在管理员命令行中执行:msiexec.exe /i multipass-1.16.4+win-win64.msi /qn。

macOS #

  1. 下载 multipass-1.16.4+mac-Darwin.pkg 安装包。
  2. 双击打开 .pkg 文件,按向导完成安装,期间需要输入管理员密码。
  3. 也可在终端中执行 sudo installer -pkg multipass-1.16.4+mac-Darwin.pkg -target / 完成安装。
  4. 首次启动时,系统可能弹出网络权限或系统扩展授权提示,请在"系统设置 → 隐私与安全性"中按提示允许。
  5. 打开终端执行 multipass version 确认安装成功。

Linux #

  1. 推荐使用 Snap 安装,一条命令即可:sudo snap install multipass。
  2. 若偏好 APT 包管理,可添加 Canonical 官方 APT 仓库后执行 sudo apt install multipass(具体仓库配置命令请参考官网安装页面 https://canonical.com/multipass/install )。
  3. 安装前请确认内核已加载 KVM 模块并具备 /dev/kvm 访问权限,否则虚拟机将无法启动。
  4. 安装完成后执行 multipass version 验证。

Multipass 如何卸载? #

Windows #

  1. 打开"设置 → 应用 → 已安装的应用"(或控制面板的"程序和功能"),找到 Multipass 并点击卸载。
  2. 也可在管理员命令行中执行:msiexec.exe /x multipass-1.16.4+win-win64.msi。
  3. 卸载前建议先执行 multipass delete --all 与 multipass purge,避免残留虚拟机镜像占用磁盘空间。
  4. 若需彻底清理,可手动删除 Multipass 的数据目录(通常位于 C:\ProgramData\Multipass 及当前用户的 AppData 相关目录),删除前请确认其中没有需要保留的实例数据。

macOS #

  1. 先停止并清理所有实例:multipass stop --all && multipass delete --all && multipass purge。
  2. 通过官方 .pkg 安装的版本,可运行安装包自带的卸载脚本,或直接将 /Applications/Multipass.app 移入废纸篓(具体卸载方式请以官网文档为准)。
  3. 手动清理残留数据目录:用户级数据一般位于 ~/Library/Application Support/com.canonical.multipass,系统级数据位于 /var/root/Library/Application Support/com.canonical.multipass,删除后即可完全清除虚拟机镜像与配置。

Linux #

  1. 先清理实例:multipass stop --all && multipass delete --all && multipass purge。
  2. Snap 安装的版本执行:sudo snap remove multipass;APT 安装的版本执行:sudo apt remove --purge multipass。
  3. 若需一并删除虚拟机镜像等残留数据,Snap 版本需检查 /var/snap/multipass/common/data/multipassd/ 目录,APT 版本需检查 /var/lib/multipass/ 等数据目录,确认无保留价值后手动删除。

提示:卸载 Multipass 不会自动删除已创建的虚拟机镜像,务必先执行 delete 与 purge,再卸载软件本身,否则可能留下数 GB 的磁盘残留。

相关标签
MultipassUbuntu 虚拟机虚拟机管理工具Canonical轻量虚拟机命令行虚拟机云原生开发环境跨平台虚拟机Hyper-V 虚拟机cloud-init