Skip to content
Multipass: Lightweight Open-Source VM Manager That Outshines VMware
Operations 6 min read

Multipass: Lightweight Open-Source VM Manager That Outshines VMware

This tutorial introduces Multipass, a free open-source CLI tool from Canonical for quickly creating and managing Ubuntu virtual machines across Linux, Windows, and macOS, covering installation, core commands, cloud-init automation, and a comparison with VMware.

java1234
java1234
java1234

Multipass Overview

Multipass is a lightweight virtual machine command-line management tool developed by Canonical, the company behind Ubuntu. It supports Linux, Windows, and macOS, using native virtualization technologies (KVM on Linux, Hyper-V on Windows, HyperKit on macOS) to launch Ubuntu VMs with minimal resource overhead. The tool is open-source and available at https://github.com/canonical/multipass.

Installation

Download the installer for your platform from the official site: https://multipass.run/install. After installation, verify the version:

$ multipass version

Core Usage

List Available Ubuntu Images

Run multipass find to see available images, including LTS releases (16.04, 18.04, 20.04) and appliance images (AdGuard Home, Mosquitto, Nextcloud, etc.).

Create a VM

Launch a default Ubuntu VM with a custom name:

$ multipass launch --name dg
Launched: dg

This downloads the latest LTS image (18.04.4 LTS in the example) and starts the instance.

Inspect VMs

List running VMs:

Name     State    IPv4           Image
dg       Running  192.168.24.5   Ubuntu 18.04 LTS

Get detailed info (CPU load, disk, memory usage):

$ multipass info --all
Name: dg
State: Running
IPv4: 192.168.24.5
Release: Ubuntu 18.04.4 LTS
Image hash: fe3030933742 (Ubuntu 18.04 LTS)
Load: 0.00 0.00 0.00
Disk usage: 1.5G out of 4.7G
Memory usage: 112.1M out of 985.7M

Access the VM

Open an interactive shell: $ multipass shell dg Or run a single command without entering the shell:

$ multipass exec dg -- lsb_release -d
Description: Ubuntu 18.04.4 LTS

Control VM State

Stop and start a VM:

# Stop
$ multipass stop dg

# Start
$ multipass start dg

Delete and Purge

Deleting a VM retains its data; purging removes it completely:

# Delete (soft)
$ multipass delete dg

# Purge (hard)
$ multipass purge dg

Automation with cloud-init

Use --cloud-init to provision a VM on first boot. Example config.yaml installs Node.js and LeanCLI:

$ multipass launch --name ubuntu --cloud-init config.yaml

# config.yaml
#cloud-config
runcmd:
 - curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
 - sudo apt-get install -y nodejs
 - wget https://releases.leanapp.cn/leancloud/lean-cli/releases/download/v0.21.0/lean-cli-x64.deb
 - sudo dpkg -i lean-cli-x64.deb

The runcmd section runs specified commands during initial boot, enabling reproducible development environments.

Summary and Limitations

After extended use, the author finds Multipass excellent for quick Linux experiments and local cluster testing (e.g., small database clusters). The main limitation: Multipass only supports Ubuntu images because it is a Canonical project.

References

Official site: https://multipass.run/

Documentation: https://multipass.run/docs/

GitHub repository: https://github.com/canonical/multipass

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

CLIvirtualizationUbuntucloud-initMultipassCanonicalVMware alternativelightweight VM
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.