V02 - VirtualBox

Objectif

Installer VirtualBox sur Pop!_OS ou Arch, créer une VM, choisir le bon mode réseau, utiliser les instantanés, et piloter le tout en ligne de commande (VBoxManage).

Version

VirtualBox 7.2.x en 2026 (vérifier sur virtualbox.org). Gratuit (GPLv3) ; l’Extension Pack (USB 3, chiffrement, RDP) est gratuit pour un usage personnel/éducatif et doit avoir exactement la même version.


1. Installation

Script fourni : scripts/virtualisation/install_virtualbox.sh (détecte Pop!_OS/Ubuntu ou Arch).

Pop!_OS / Ubuntu 24.04 (dépôt Oracle)

wget -qO- https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo gpg --dearmor --yes -o /usr/share/keyrings/oracle-virtualbox-2016.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg] https://download.virtualbox.org/virtualbox/debian noble contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
sudo apt update
sudo apt install virtualbox-7.2
sudo usermod -aG vboxusers "$USER"      # puis déconnexion / reconnexion

Arch

sudo pacman -S virtualbox virtualbox-host-dkms linux-headers   # adapter les headers à ton noyau (linux-lts-headers, linux-zen-headers…)
sudo modprobe vboxdrv
sudo usermod -aG vboxusers "$USER"

virtualbox-host-dkms compile le module pour n'importe quel noyau ; il remplace l'ancien virtualbox-host-modules-arch.

Problèmes classiques à l’installation

MessageSolution
Kernel driver not installed (rc=-1908)Module non chargé : sudo modprobe vboxdrv ; headers du noyau installés ? Secure Boot actif (mokutil --sb-state) → signer les modules ou désactiver Secure Boot
VT-x is being used by another hypervisorKVM est chargé : sudo modprobe -r kvm_intel (ou kvm_amd). Ne pas faire tourner VirtualBox et virt-manager en même temps
VT-x/AMD-V is disabled in the BIOSActiver la virtualisation dans l’UEFI de ton PC
Pas d’USB dans la VMGroupe vboxusers + Extension Pack

2. Créer une VM (Debian serveur, exemple)

  1. Télécharger l’ISO Debian 13 « netinst » (debian.org).
  2. Nouvelle → nom Debian-Lab, ISO, cocher Skip Unattended Installation (pour apprendre l’installateur).
  3. 2048 Mo, 2 CPU, disque 20 Go dynamique (VDI).
  4. Réseau : Carte 1 = NAT ; Carte 2 = Réseau privé hôte (pour le SSH depuis ton PC).
  5. Installation Debian : décocher l’environnement de bureau, cocher serveur SSH + utilitaires usuels.
RéglageRecommandation
FirmwareEFI pour Windows 11 / systèmes récents
Contrôleur graphiqueVMSVGA (Linux), VBoxSVGA (Windows)
DisqueDynamique (ne prend que la place utilisée)
Additions invitéÀ installer dans la VM (presse-papiers partagé, résolution, dossiers partagés)

Additions invité dans une VM Debian : sudo apt install build-essential linux-headers-$(uname -r), puis Périphériques → Insérer l’image CD des Additions et sudo sh /media/cdrom/VBoxLinuxAdditions.run.

3. Modes réseau dans VirtualBox

Théorie et tableau comparatif : V01 - Concepts de la virtualisation.

ModeRéglage dans VirtualBoxRemarque
NATNATIP de la VM : 10.0.2.15, passerelle 10.0.2.2
Réseau NATRéseau NAT (à créer dans Fichier → Outils → Gestionnaire de réseau)Les VM du même réseau NAT se voient
PontAccès par pont + carte physiqueSouvent bloqué sur les réseaux d’école/résidence
InterneRéseau interne + nom (ex. labo)Totalement isolé - parfait pour pfSense LAN, AD
Privé hôteRéseau privé hôte (vboxnet0, 192.168.56.0/24, DHCP intégré)Ton PC = 192.168.56.1

Redirection de port en NAT (SSH vers une VM en NAT)

Configuration → Réseau → Carte 1 (NAT) → Avancé → Redirection de ports : Hôte 2222 → Invité 22. Puis : ssh -p 2222 etudiant@127.0.0.1.

4. Instantanés et clones

  • Instantané (snapshot) : Machine → Outils → Instantanés → Prendre. Avant chaque TP risqué !
  • Clone lié : partage le disque de base (rapide, léger) ; clone intégral : copie indépendante. Coche Générer de nouvelles adresses MAC.
  • Exporter : Fichier → Exporter un appareil virtuel → .ova (pour rendre une VM à un prof, la déplacer).

5. En ligne de commande (VBoxManage)

VBoxManage list vms                       # toutes les VM
VBoxManage list runningvms
VBoxManage startvm "Debian-Lab" --type headless   # démarrer sans fenêtre
VBoxManage controlvm "Debian-Lab" acpipowerbutton # extinction propre
VBoxManage controlvm "Debian-Lab" poweroff        # extinction forcée
VBoxManage snapshot "Debian-Lab" take "avant-tp-glpi"
VBoxManage snapshot "Debian-Lab" restore "avant-tp-glpi"
VBoxManage modifyvm "Debian-Lab" --memory 4096 --cpus 2
VBoxManage modifyvm "Debian-Lab" --nic2 intnet --intnet2 "labo"
VBoxManage modifyvm "Debian-Lab" --natpf1 "ssh,tcp,,2222,,22"
VBoxManage clonevm "Debian-Lab" --name "Debian-Web" --register
VBoxManage export "Debian-Lab" -o debian-lab.ova

Voir aussi