VirtualBox setzt die BIOS-Seriennummer jeder VM-Instanz auf 0. Es scheint möglich zu sein, einige BIOS-Einstellungen zu ändern, aber ich habe nichts gesehen, das direkt auf die Seriennummer verweist.
Kann jemand einen Weg vorschlagen, dies zu tun?
VirtualBox setzt die BIOS-Seriennummer jeder VM-Instanz auf 0. Es scheint möglich zu sein, einige BIOS-Einstellungen zu ändern, aber ich habe nichts gesehen, das direkt auf die Seriennummer verweist.
Kann jemand einen Weg vorschlagen, dies zu tun?
Antworten:
http://www.virtualbox.org/manual/ch09.html#changedmi
Hat wirklich ausführliche Antwort darauf.
Sie können die BIOS-Seriennummer folgendermaßen einstellen:
VBoxManage setextradata "VM name"
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "System Serial"
Der Fehler, den Sie erhalten haben, wird dadurch verursacht, dass die Seriennummer nicht als Zeichenfolgenwert festgelegt wurde. Wenn Sie eine reine Zahl haben, müssen Sie ihr Folgendes voranstellen string:
:
VBoxManage setextradata "VM name"
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "string:1234"
Hinweis: Wenn Ihre VM für die Verwendung der EFI-Firmware konfiguriert ist, müssen Sie die Platinen in den Schlüsseln durch efi ersetzen.
Nicht von externen Einstellungen. Aber Sie können aus dem Code und dann selbst erstellen:
Quelldatei : DevPcBios.cpp
Zeile: 1014READCFGSTR("DmiSystemSerial", pszDmiSystemSerial, "0");
Ändern Sie "0" auf den gewünschten Wert.
BEARBEITEN: Sie können offenbar VBoxManage setextradata verwenden . Ich habe es in der Vergangenheit für andere Arten von Konfigurationen (nicht BIOS-bezogen) verwendet und diese spezielle Einstellung nicht getestet. Probieren Sie es aus:
VBoxManage setextradata *YourVMName* VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial "*yourserial*"
Andernfalls ... kehren Sie zum Bearbeiten und Erstellen des Quellcodes zurück.
Viel Glück.
Wenn Sie diesen Befehl ausführen und den Fehler erhalten, auf den Roger verweist, müssen Sie den Befehl zurücksetzen, indem Sie den Befehl ohne den letzten Parameter (VALUE) ausführen.
Das entfernt den Eintrag, der den Fehler verursacht.
Wenn Sie sich nicht sicher sind, was der letzte fehlerhafte Befehl war, öffnen Sie die Datei ~~~ .vbox (XML) im Stammverzeichnis des VirtualMachines-Ordners der jeweiligen VM und lesen Sie den Abschnitt EXTRADATA.
Das Ausführen des Befehlszeilenaufrufs an vboxmanage ist die beste Möglichkeit, diese zu ändern. Das Bearbeiten der XML-Datei dauert nicht 100% der Zeit an.
Die akzeptierte Antwort hat die Seriennummer für mich nicht korrekt aktualisiert. Stattdessen habe ich diese Schritte ausgeführt, um die Seriennummer erfolgreich zu aktualisieren. Beachten Sie, dass das Gastbetriebssystem macOS und der Host Windows war.
HINWEIS: Sie müssen virtualbox schließen, bevor Sie diesen Befehl ausführen, damit er gespeichert wird.
cd "C:\Program Files\Oracle\VirtualBox\"
VBoxManage.exe setextradata "VM NAME" "VBoxInternal/Devices/efi/0/Config/DmiSystemSerial" "SERIAL_HERE"
Siehe Quelle . * HILFREICHE LINKS
VBoxManage.exe list vms
.Versuchen Sie es mit einer Seriennummer, die eine 20-Byte-Hexadezimalzeichenfolge enthält:
VBoxManage setextradata "VM name" "VBoxInternal/Devices/ahci/0/Config/Port0/SerialNumber" "serial"
( Referenz )