Multipass VM Manager Cheatsheet: Guide för Ubuntu, Windows & macOS

Installation, konfiguration och grundläggande kommandon för Multipass

Sidinnehåll

Multipass är en lättviktshanterare för virtuella maskiner som gör det enkelt att skapa och hantera Ubuntu-molninstanser på Linux, Windows och macOS.

Oavsett om du är en utvecklare som behöver isolerade miljöer, en DevOps-ingenjör som testar konfigurationer eller någon som lär sig Linux, erbjuder Multipass ett enkelt kommandoradsgränssnitt för att snabbt starta Ubuntu-VM:ar.

Multipass VM Manager Ubuntu

Vad är Multipass?

Multipass är Canonicals officiella verktyg för att skapa och hantera Ubuntu-virtuella maskiner. Det är utformat för att vara enkelt, snabbt och plattformsoberoende, vilket gör det till ett utmärkt val för utvecklare som behöver konsekventa Ubuntu-miljöer över olika operativsystem.

Nyckelfunktioner

  • Plattformsoberoende: Fungerar på Linux, Windows och macOS
  • Lättvikt: Minimal resursanvändning jämfört med traditionella VM:ar
  • Stöd för cloud-init: Konfigurera VM:ar med cloud-init-metadata
  • Stöd för snapshots: Skapa och återställa VM-snapshots
  • Nätverksintegration: Enkel nätverksanslutning mellan värd och VM:ar
  • SSH-åtkomst: Inbyggd SSH-nyckelhantering

Mest användbara kommandon

# Snabbreferens
multipass launch --name dev --cpus 2 --memory 4G --disk 20G
multipass shell dev
multipass mount ./project dev:/home/ubuntu/project
multipass snapshot dev before-changes
multipass restore dev before-changes
multipass delete dev
multipass purge

Installation

Ubuntu/Linux

# Installera via snap (rekommenderas)
sudo snap install multipass

# Eller installera via apt
sudo apt update
sudo apt install multipass

Windows

  1. Ladda ner Windows-installationsprogrammet från multipass.run
  2. Kör installationsprogrammet som administratör
  3. Multipass kommer att använda Hyper-V som standard (Windows 10 Pro/Enterprise) eller falla tillbaka till VirtualBox

macOS

# Installera via Homebrew
brew install --cask multipass

# Eller ladda ner från multipass.run

Grundläggande användning

Skapa din första VM

# Skapa en VM med standardinställningar
multipass launch

# Skapa en VM med specifikt namn
multipass launch --name my-vm

# Skapa en VM med specifik Ubuntu-version
multipass launch 22.04 --name ubuntu-22

# Skapa en VM med anpassade resurser
multipass launch --name dev-vm --cpus 2 --memory 4G --disk 20G

Hantera VM:ar

# Lista alla VM:ar
multipass list

# Starta en VM
multipass start my-vm

# Stäng av en VM
multipass stop my-vm

# Ta bort en VM
multipass delete my-vm
multipass purge  # Ta bort alla borttagna VM:ar

Åtkomst till VM:ar

# Öppna shell i VM
multipass shell my-vm

# Kör kommando i VM
multipass exec my-vm -- ls -la

# Kopiera filer till/från VM
multipass transfer file.txt my-vm:/home/ubuntu/
multipass transfer my-vm:/home/ubuntu/file.txt ./

När du är inne i en Multipass-VM har du tillgång till en fullständig Ubuntu-shellmiljö. För effektivt kommandoradsarbete, referera till vårt Bash Cheat Sheet för viktiga kommandon och genvägar.

Multipass Instances

Multipass Cheatsheet

VM-hanteringskommandon

# Skapa och starta
multipass launch                    # Skapa standard-VM
multipass launch --name vm1        # Skapa namngiven VM
multipass launch 20.04 --name old  # Specifik Ubuntu-version

# Resursallokering
multipass launch --cpus 2 --memory 4G --disk 20G --name dev

# VM-kontroll
multipass start vm1                # Starta VM
multipass stop vm1                 # Stäng av VM
multipass restart vm1               # Starta om VM
multipass suspend vm1              # Viloläge för VM

# Information
multipass list                     # Lista alla VM:ar
multipass info vm1                 # VM-detaljer
multipass get local.privileged-mounts  # Kontrollera monteringsinställningar

Filoperationer

# Filöverföring
multipass transfer file.txt vm1:/home/ubuntu/
multipass transfer vm1:/home/ubuntu/file.txt ./
multipass transfer --recursive ./folder vm1:/home/ubuntu/

# Montera värdkatalog
multipass mount /host/path vm1:/vm/path
multipass umount vm1:/vm/path

Nätverkskonfiguration

# Nätverksinfo
multipass info vm1 | grep IPv4

# Portvidarebefordran (Windows/macOS)
multipass set local.port-forwarding=true
multipass restart vm1

Snapshot och backup

# Skapa snapshot
multipass snapshot vm1 snapshot1

# Återställa snapshot
multipass restore vm1 snapshot1

# Lista snapshots
multipass list --all

Avancerad konfiguration

Cloud-init-integration Skapa en cloud-config.yaml-fil:

#cloud-config
package_update: true
package_upgrade: true
packages:
  - docker.io
  - git
  - curl

users:
  - name: developer
    sudo: ALL=(ALL) NOPASSWD:ALL
    shell: /bin/bash
    ssh_authorized_keys:
      - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...

runcmd:
  - systemctl enable docker
  - systemctl start docker

Starta VM med cloud-init:

multipass launch --cloud-init cloud-config.yaml --name configured-vm

Anpassade bilder

# Lista tillgängliga bilder
multipass find

# Använd specifik bild
multipass launch daily:22.04 --name daily-vm

Integration med utvecklingsverktyg

Docker-integration Multipass fungerar utmärkt med Docker för containeriserad utveckling. Du kan köra Docker i Multipass-VM:ar eller använda Multipass för att skapa isolerade miljöer för Docker-utveckling.

Utvecklingsmiljöer För Python-utveckling kan du skapa isolerade miljöer liknande Python virtual environments men med full OS-isolering. För VS Code-användare kan Multipass-VM:ar användas som fjärrutvecklingsmiljöer, som kompletterar Dev Containers i VS Code för scenarier som kräver full OS-isolering.

Self-hosting av applikationer Multipass är perfekt för att testa self-hostade applikationer som Gitea eller Ollama i isolerade miljöer. För container-orkestration kan du köra Kubernetes-kluster i Multipass-VM:ar och använda vårt Kubernetes Cheatsheet för att hantera dina containeriserade arbetsbelastningar.

Felsökning

Vanliga problem

# Kontrollera Multipass-status
multipass get local.driver

# Återställ Multipass
multipass purge
sudo snap restart multipass

# Kontrollera VM-loggar
multipass logs vm1

Prestandaoptimering

# Aktivera privilegierade monteringar för bättre prestanda
multipass set local.privileged-mounts=true

# Konfigurera minnesgränser
multipass set local.memory=8G

Jämförelse med alternativ

Multipass vs Docker

  • Multipass: Fullständiga VM:ar, bättre för OS-nivåtestning, mer resurskrävande
  • Docker: Containers, mer effektiva, bättre för applikationsdistribution

Multipass vs VirtualBox/VMware

  • Multipass: Kommandoradsfokuserad, cloud-init-stöd, enklare automatisering
  • VirtualBox/VMware: GUI-baserad, fler konfigureringsalternativ, bättre för skrivbordsanvändning

Multipass vs Proxmox

  • Multipass: Lättvikt, enkel-VM-fokus, utmärkt för utvecklingsmiljöer
  • Proxmox: Fullständig virtualiseringsstack, bättre för produktionsmiljöer, avancerade funktioner som kluster och hög tillgänglighet

Multipass vs Vagrant

  • Multipass: Ubuntu-fokuserad, enklare uppsättning, bättre för enkel-VM-scenarier
  • Vagrant: Stöd för flera leverantörer, komplex provisionering, bättre för multi-VM-uppsättningar

Bästa praxis

  1. Resurshantering: Allokera lämplig CPU och minne baserat på din arbetsbelastning
  2. Snapshot-strategi: Skapa snapshots innan stora ändringar
  3. Nätverkssäkerhet: Använd lämpliga brandväggsregler för exponerade tjänster
  4. Backup-strategi: Backa upp viktiga VMD-data regelbundet
  5. Rensning: Ta bort oanvända VM:ar för att frigöra diskutrymme

När man ska använda Multipass

Välj Multipass när:

  • Du behöver fullständiga Ubuntu-VM:ar för utveckling
  • Du vill ha enkel kommandorads-VM-hantering
  • Du arbetar över olika operativsystem
  • Du behöver cloud-init-konfigurationsstöd
  • Du vill testa self-hostade applikationer i isolerade miljöer

Överväg alternativ när:

  • Du behöver maximal prestanda (använd Docker-containers)
  • Du behöver komplexa multi-VM-uppsättningar (använd Vagrant)
  • Du behöver GUI-baserad hantering (använd VirtualBox/VMware)

Multipass utmärker sig genom att erbjuda enkla, konsekventa Ubuntu-utvecklingsmiljöer över plattformar, vilket gör det till ett utmärkt val för utvecklare som behöver pålitlig VM-hantering utan den komplexitet som traditionella virtualiseringsverktyg innebär.

Användbara länkar