Lima (âLinux virtual machinesâ) est un outil open-source qui permet de lancer facilement des machines virtuelles Linux sur macOS (et aussi Linux). Il vise Ă offrir une expĂ©rience âLinux-on-Macâ fluide pour les dĂ©veloppeurs, tout en gardant une gestion simple et intĂ©grĂ©e.
Lâobjectif est dâexĂ©cuter des outils Linux (Docker, Podman, Kubernetes, etc.) sur Mac dans un vrai environnement Linux, ce qui offre une compatibilitĂ© et un comportement identiques Ă un vrai serveur Linux.
brew install limaIl existe de nombreux templates disponibles (docker, podman, kubernetes, ubuntu, debian, fedora, opensuse, alpine, etc), mais ici, câest Ubuntu qui nous intĂ©resse :
limactl start --list-templates | grep ubuntuâ Affiche les templates Ubuntu disponibles localement.
â
Exemples de templates : - ubuntu : DerniĂšre LTS (ex:
22.04) - ubuntu-lts : Alias vers la derniĂšre LTS stable -
ubuntu-20.04 : Ubuntu 20.04 LTS (Focal Fossa) -
ubuntu-22.04 : Ubuntu 22.04 LTS (Jammy Jellyfish) -
ubuntu-24.04 : Ubuntu 24.04 LTS (Noble Numbat)
# Ubuntu LTS actuelle (ex: 22.04)
limactl start --name=ubuntu-lts template://ubuntu-lts
# Ubuntu 20.04 (Focal Fossa) avec 2 CPU et 4 Go de RAM
limactl start --name=ubuntu20 template://ubuntu-20.04 --cpus=2 --memory=4G
# Ubuntu 22.04 (Jammy Jellyfish) en mode Virtualization.framework avec Rosetta
limactl start --name=ubuntu22 template://ubuntu-22.04 --vm-type=vz --rosetta
# Ubuntu 24.04 (Noble Numbat) : 4 CPU, 8 Go de RAM, Virtualization.framework, Rosetta, montage virtiofs en écriture
limactl start --name=ubuntu24 template://ubuntu-24.04 --cpus=4 --memory=8G --vm-type=vz --rosetta --mount-type=virtiofs --mount-writable
# Version non-LTS (ex: 24.10) ou future
limactl start --name=ubuntu-dev template://ubuntu-25.04đ ïž ParamĂštres courants : - --cpus= :
Nombre de CPU alloué à la VM. - --memory=G : Taille de la
mémoire en Go (ex: 8G pour 8 Go). - --disk=G :
Taille du disque en Go (par défaut 100Go). -
--vm-type={qemu, vz} : Type de machine virtuelle
(vz pour macOS Ventura+ utilisant Virtualization.framework,
plus performant). - --rosetta : Active Rosetta pour
lâexĂ©cution de binaires x86_64 sur Mac Apple Silicon (nĂ©cessite
--vm-type=vz). -
--mount-type={9p, virtiofs, reverse-sshfs} : Type de
montage (performant : virtiofs avec vz). -
--mount-writable : Donne accÚs en écriture au montage du
rĂ©pertoire de lâhĂŽte.
đ Alternative interactive :
limactl startâĄïž Choisir le template dans lâinterface interactive.
# Ouvre un shell interactif sur la VM nommée (commande raccourcie)
lima
# Ou, pour une VM nommée "ubuntu24"
lima ubuntu24
# Commande standard
limactl shell
# Exemple :
limactl shell ubuntu24
# AccÚs SSH avancé (pour scripts)
ssh -o IdentitiesOnly=yes -i ~/.lima/_config/user -p 60022 lima@127.0.0.1limactl list # Lister toutes les VM
limactl stop # ArrĂȘter une VM
limactl start # DĂ©marrer une VM arrĂȘtĂ©e
limactl restart # Redémarrer une VM
limactl delete # Supprimer une VM (demande confirmation)â ïž limactl delete supprime les disques et la
configuration de la VM.
lima cp <source> <destination>limactl cp ./mon_fichier.txt ubuntu24:~/limactl cp ubuntu24:~/rapport.pdf ./limactl cp -r :limactl edit Exemple (fragment) :
cpus: 4
memory: "8GiB"
disk: "50GiB"
mounts:
- location: "~"
writable: true
#virtiofs: true # Utiliser pour vz si nĂ©cessaireAprĂšs modification, arrĂȘter et redĂ©marrer la VM :
limactl stop
limactl start config.yaml avec le contenu souhaité
:images:
- location: "https://cloud-images.ubuntu.com/releases/24.04/release/ubuntu-24.04-server-cloudimg-amd64.img"
arch: "x86_64"
mounts:
- location: "~"
writable: true
cpus: 4
memory: "8GiB"
vmType: "vz"
rosetta: true
mountType: "virtiofs"limactl start --name=ubuntu24-advanced --file config.yamlUne fois connecté à la VM :
lsb_release -aOu :
cat /etc/os-releaseCommande depuis le Mac sans se connecter via un shell :
limactl shell ubuntu24 -- lsb_release -dlima-lima (avec
accĂšs sudo sans mot de passe)/mnt/lima/home/.~/.lima//ssh.config pour la configuration SSH
complÚte.Résumé workflow :
1.limactl start --name=... template://...(avec options)
2.limactl shell ...pour se connecter
3. Utiliser la VM comme un vrai systĂšme Ubuntu
4.limactl stop ...pour arrĂȘter
Pro tips :
- Pour les Mac Apple Silicon : toujours privilégier--vm-type=vzet--rosetta.
---mount-type=virtiofsoffre les meilleures performances de partage de fichiers.
- Configurer les montages en écriture avec--mount-writable.