web-dev-qa-db-fra.com

Comment démarrer une machine virtuelle depuis un terminal?

Je ne peux pas exécuter une machine Virtualbox à partir d'une ligne de commande, de quoi ai-je besoin exactement? J'ai fait un peu de recherche d'abord mais cette commande n'a pas fonctionné pour moi:

vboxmanage startvm win7 --type headless

Le résultat est:

VBoxManage: error: Could not find a registered machine named 'win7'
VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: "FindMachine(Bstr(pszVM).raw(), machine.asOutParam())" at line 575 of file VBoxManageMisc.cpp
  • "win7" est le VM que j'essaie de lancer.
  • Je peux exécuter ce VM via addon phpVirtualBox parfaitement bien.
  • Après avoir lancé cette machine virtuelle via phpVirtualBox, je peux parfaitement utiliser RDM sous Linux ou Windows.
  • J'exécute cette VM sur Ubuntu Server 14.04.03, installation sans installation AMD64.
  • La version de Virtualbox est: 4.3.34r104062
  • Je ne sais pas comment enregistrer ce VM à partir d'un terminal sous la forme de fichiers situés sur un disque dur USB à l'aide de la partition NTFS.

Mon objectif était d’exécuter cette machine virtuelle au démarrage du système, de préférence un peu en retard.

Je suis prêt à fournir toute autre information nécessaire.

4
emrecnl

Voici un moyen de démarrer une machine virtuelle à partir d'un terminal:

Ouvrez Virtual Box, cliquez avec le bouton droit sur la machine virtuelle. Cliquez ensuite sur Créer un raccourci sur le bureau.

enter image description here

Allez sur le bureau, cliquez avec le bouton droit sur le raccourci et modifiez-le.

enter image description here

Copiez ensuite la commande et collez-la dans le terminal.

/usr/lib/virtualbox/VirtualBox --comment "Ubuntu" --startvm "cea829eb-85fe-4842-b98e-e98603094be0"

ou vous pouvez commencer en terminal comme ça.

Obtenez votre UUID de VM

cd "VirtualBox VMs" 
cd your-virtualpc-name
cat your-virtualpc-name.vbox-prev |grep Machine

la sortie devrait ressembler à ceci.

neil@ASUS:~/VirtualBox VMs/Ubuntu$ cat Ubuntu.vbox-prev |grep Machine
  <Machine uuid="{cea829eb-85fe-4842-b98e-e98603094be0}" name="Ubuntu" OSType="Ubuntu" snapshotFolder="Snapshots" lastStateChange="2015-11-22T08:47:08Z">
      <ExtraDataItem name="GUI/RestrictedRuntimeMachineMenuActions" value="SaveState,PowerOff"/>
  </Machine>
neil@ASUS:~/VirtualBox VMs/Ubuntu$ 

Copier la machine uuid

et exécutez-le dans la commande comme ça. Avec les guillemets

VBoxHeadless --startvm "cea829eb-85fe-4842-b98e-e98603094be0"
3
Neil