Warum konnte VirtualBox nicht registrierte Maschine mit dem Namen windows windows_7 finden?

StackOverflow https://stackoverflow.com/questions/565680

  •  05-09-2019
  •  | 
  •  

Frage

Ich versuche, TCP / UDP einer virtuellen Maschine zu ändern VBoxManage setextradata verwendet wird.

Jedes Mal, wenn ich den Befehl:

sudo VBoxManage setextradata Windows_7 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestEmule_TCP/Protocol" TCP

Ich erhalte den folgenden Fehler:

VirtualBox Command Line Management Interface Version 2.1.4
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

[!] FAILED calling a->virtualBox->FindMachine(Bstr(a->argv[0]), machine.asOutParam()) at line 3688!
[!] Primary RC  = VBOX_E_OBJECT_NOT_FOUND (0x80BB0001) - Object corresponding to the supplied arguments does not exist
[!] Full error info present: true , basic error info present: true 
[!] Result Code = VBOX_E_OBJECT_NOT_FOUND (0x80BB0001) - Object corresponding to the supplied arguments does not exist
[!] Text        = Could not find a registered machine named 'Windows_7'
[!] Component   = VirtualBox, Interface: IVirtualBox, {339abca2-f47a-4302-87f5-7bc324e6bbde}
[!] Callee      = IVirtualBox, {339abca2-f47a-4302-87f5-7bc324e6bbde}

Die virtuelle Maschine wurde unter Verwendung von GUI erstellt. Jede Idee?

$ cd /Users/marco/Library/VirtualBox/Machines/Windows_7
$ ls
Logs                Windows_7.xml
Windows 7.xml.1.5-macosx.bak
$ sudo vboxmanage registervm Windows_7.xml
VirtualBox Command Line Management Interface Version 2.1.4
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

[!] FAILED calling a->virtualBox->OpenMachine(Bstr(a->argv[0]), machine.asOutParam()) at line 762!
[!] Primary RC  = NS_ERROR_FAILURE (0x80004005) - Operation failed
[!] Full error info present: true , basic error info present: true 
[!] Result Code = NS_ERROR_FAILURE (0x80004005) - Operation failed
[!] Text        = Could not lock the settings file '/var/root/Library/VirtualBox/Windows_7.xml' (VERR_FILE_NOT_FOUND)
[!] Component   = Machine, Interface: IMachine, {ea6fb7ea-1993-4642-b113-f29eb39e0df0}
[!] Callee      = IVirtualBox, {339abca2-f47a-4302-87f5-7bc324e6bbde}
War es hilfreich?

Lösung

Es schlägt fehl, da Sie sudo verwenden. VirtualBox ist entworfen, von jedem Benutzer ausgeführt werden soll (in der vboxusers Gruppe) und Sudo führt den Befehl als Root deren VirtualBox Konfiguration leer ist.

Sie können das überprüfen, indem Sie Folgendes eingeben:

sudo VBoxManage -nologo list vms # Should print only a newline
VBoxManage -nologo list vms # Detailled information about all your VMs

Andere Tipps

keine direkte Antwort, aber nur dort, löschen für andere Menschen danach zu suchen:

Ein Mac OS X können Sie VirtualBox sagen VMs die von einem anderen Benutzer-Home-Verzeichnis zu laden, sofern die Dateiberechtigungen erlauben es, oder wenn Sie VirtualBox als Root-Benutzer ausgeführt werden sudo (zB wenn Sie müssen unbedingt Ihre Host-Server auf 80) Port Web zuzugreifen.

Die Art und Weise, dies zu tun ist VBOX_USER_HOME entsprechend eingestellt werden, z.

VBOX_USER_HOME=/Users/the_other_user/Library/VirtualBox

Wenn Sie VBoxHeadless unter root ausführen möchten, verwenden Sie:

sudo VBOX_USER_HOME=/Users/your_user_id/Library/VirtualBox nohup \
   VBoxHeadless -s "IE10 - Win7" </dev/null &>/dev/null &

Ich hatte eine ähnliche Fehlermeldung, wenn ich sudo verwendet VBoxSDL zu starten:

Error: machine with the given name not found!
Check if this VM has been corrupted and is now inaccessible.

Und ähnlich wie ypocat 's Antwort, ich löste es für Ubuntu ein kleines mit Skript wie folgt:

#!/bin/bash
export VBOX_USER_HOME=/home/username/.config/VirtualBox
VBoxSDL --startvm nameOfVM

Sie können es verwenden, wenn Sie Ihre VM als root starten müssen.

SOLUTION_1 :

Virtual Technology fehlt könnte der Grund sein. Für Intel-Systeme haben sie Intel VT-x (für AMD sie haben AMD-V), so stellen Sie sicher, dass es aktiviert ist. Sie können es auf dem Bildschirm auf BIOS-Setup gehen Boot aktivieren , dass sucht Systemkonfiguration und aktivieren Sie Virtual Technology

.

SOLUTION_2 :

Öffnen Sie das Terminal oder cmd (Ausführen als Administrator) für Fenster , und führen Sie SC START VBOXDRV. Wenn er sagt, der Dienst bereits läuft dann versuchen SC STOP VBOXDRV und dann SC START VBOXDRV.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top