web-dev-qa-db-fra.com

Comment puis-je modifier le numéro de série du BIOS dans VirtualBox?

VirtualBox définit le numéro de série du BIOS de tout VM instance à 0. Il semble être possible de modifier certains paramètres du BIOS, mais je n'ai rien vu qui fait référence directement au numéro de série.

Quelqu'un peut-il suggérer un moyen de faire cela?

17
Roger

http://www.virtualbox.org/manual/ch09.html#changedmi

A vraiment une réponse détaillée pour cela.

Vous pouvez définir le numéro de série du BIOS en faisant ceci:

VBoxManage setextradata "VM name" 
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "System Serial"

L'erreur que vous receviez est causée par la série de série non définie en tant que valeur de chaîne, si vous avez un numéro pur, vous devez la compenser avec string: ainsi:

VBoxManage setextradata "VM name" 
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "string:1234"

REMARQUE: Si votre VM est configuré pour utiliser le micrologiciel EFI, vous devez remplacer PCBIOS par EFI dans les touches.

22
Alex R

Pas d'aucun paramètre externe. Mais vous pouvez du code puis vous le construisez-vous:

Fichier source: devpcbios.cpp
[.____] Ligne: 1014 READCFGSTR("DmiSystemSerial", pszDmiSystemSerial, "0");

Changez "0" à la valeur dont vous avez besoin.


Edit: Vous pouvez apparemment utiliser vboxmanage setextradata . Je l'ai utilisé dans le passé pour un autre type de configurations (non liés au BIOS) et n'a pas testé ce paramètre particulier. Essayez:

VBoxManage setextradata *YourVMName* VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial "*yourserial*"

Sinon ... revenir à l'édition et à la construction du code source.

Bonne chance.

8
A Dwarf

Si vous exécutez cette commande et obtenez l'erreur référencée par Roger, vous devez récupérer la commande en exécutant la commande sans le dernier paramètre (valeur).

Cela supprime l'entrée causant l'erreur.

Si vous n'êtes pas sûr de la dernière commande offensante, ouvrez le fichier ~~~ .vbox (XML) dans la racine du dossier VirtualMachines du fichier spécifique VM et examinez la section Extradata.

Exécution de l'appel de ligne de commande à VboxManage est le meilleur moyen de les modifier. Modification du fichier XML ne colle pas 100% du temps.

3
Alex

La réponse acceptée n'a pas mis à jour le numéro de série correctement pour moi; Au lieu de cela, j'ai suivi ces étapes pour mettre à jour avec succès le numéro de série. Remarque Le système d'exploitation invité était MacOS et l'hôte était Windows.

Remarque: Vous devez fermer VirtualBox avant d'exécuter cette commande pour qu'il soit enregistré.

  1. Ouvrez l'invite de commande Windows en tant qu'administrateur
  2. cd "C:\Program Files\Oracle\VirtualBox\"
  3. VBoxManage.exe setextradata "VM NAME" "VBoxInternal/Devices/efi/0/Config/DmiSystemSerial" "SERIAL_HERE"voir source . *
    Je ne sais pas pourquoi la commande PCBIOS n'a pas fonctionné mais EFI l'a fait.

LIENS UTILES

  • Si vous avez du mal à trouver un suivi de série valide les instructions ici .
  • Si vous n'êtes pas sûr de ce que votre nom VM est exécuté VBoxManage.exe list vms.
2
josh7weaver

Essayez d'utiliser un numéro de série contenant 20 octets hexadecimal String:

VBoxManage setextradata "VM name" "VBoxInternal/Devices/ahci/0/Config/Port0/SerialNumber" "serial"

(- Référence )

1