Convertir un disque dur vmdk en vdi
VBoxManage clonehd --format VDI fichier.vmdk fichier.vdi
Modifier la taille d’un disque virtualbox
Pour passer un disque à 40Go :
VBoxManage modifyhd fichier.vdi --resize 40000
Modifier le System UUID
VBoxManage setextradata "test VM" "VBoxInternal/Devices/pcbios/0/Config/DmiSystemUuid" "8fb169be-9288-4fa0-b176-35362568998f"
Modifier l’adresse Mac d’une VM
VBoxManage modifyvm "test VM" --macaddress1 0800271B00E8
Modifier le nom du processeur
Pour avoir par exemple :
« Intel(R) Core(TM) i7-3740QM CPU @ 2.70GHz »
Il suffit de rajouter les champs correspondants :
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000002/eax 0x20202020
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000002/ebx 0x6e492020
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000002/ecx 0x286c6574
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000002/edx 0x43202952
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000003/eax 0x2865726f
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000003/ebx 0x20294d54
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000003/ecx 0x332d3769
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000003/edx 0x51303437
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000004/eax 0x5043204d
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000004/ebx 0x20402055
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000004/ecx 0x30372e32
VBoxManage setextradata "test VM" VBoxInternal/CPUM/HostCPUID/80000004/edx 0x007a4847
Il est possible de récupérer ces lignes avec cpuid sous linux de la façon suivante :
cpuid -r |grep "80000002\|80000003\|80000004"|head -n 3|awk '{print $1 "/eax" $3 "\n" $1 "/ebx" $4 "\n" $1 "/ecx" $5 "\n" $1 "/edx" $6};'|sed 's/eax=/ /'|sed 's/ebx=/ /'|sed 's/ecx=/ /'|sed 's/edx=/ /'|sed '/^0x/!d'|sed 's/^0x/VBoxManage setextradata \"test VM\" VBoxInternal\/CPUM\/HostCPUID\//'
ou avec une ancienne version :
cpuid |grep "80000002\|80000003\|80000004"|awk '{print "0x" $1 "/eax 0x" $2 "\n0x" $1 "/ebx 0x" $3 "\n0x" $1 "/ecx 0x" $4 "\n0x" $1 "/edx 0x" $5};'|sed 's/^0x/VBoxManage setextradata \"test VM\" VBoxInternal\/CPUM\/HostCPUID\//'
Ajouter un vrai disque dur
VBoxManage internalcommands createrawvmdk -filename sdc.vmdk -rawdisk /dev/sdc
Détecter les VMs en cours d’utilisation
VBoxManage list runningvms
"ubuntu domogik" {4a4990b1-bc4d-41fc-8734-a8323d77f676}
"debian" {e3d11314-8e1f-4ce6-8aae-53b3bea439be}
Sauvegarder l’état d’une VM
VBoxManage controlvm "ubuntu domogik" savestate
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Compresser le disque d’une VM
Il faut tout d’abord écrire des 0 sur tout l’espace libre :
– sous Windows, utiliser SDelete avec la commande sdelete64 c: -z
– sous Linux, utiliser zerofree avec la commande zerofree -v /dev/sda1
Puis arrêter la VM et lancer la commande
VBoxManage.exe modifymedium disk « fichier.vdi » –compact
Ajouter les extensions en ligne de commande
Voici un exemple pour lister les extensions présente, supprimer l’extension Oracle et installer la dernière version
VBoxManage list extpacks
sudo VBoxManage extpack uninstall "Oracle VM VirtualBox Extension Pack"
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.18.vbox-extpack
Configurer une liaison série
Configurer la liaison série de la VM en « Tube Hôte », décocher la case « Se connecter au pipe/socket existant » et mettre le chemin /tmp/vboxcom1
minicom -o -b 115200 -8 -con -w -D unix#/tmp/vboxcom1