VirtualBoxはすべてのVMインスタンスのBIOSシリアル番号を0に設定します。一部のBIOS設定を変更することは可能と思われますが、シリアル番号を直接参照するものは見ていません。
誰もこれを行う方法を提案できますか?
VirtualBoxはすべてのVMインスタンスのBIOSシリアル番号を0に設定します。一部のBIOS設定を変更することは可能と思われますが、シリアル番号を直接参照するものは見ていません。
誰もこれを行う方法を提案できますか?
回答:
http://www.virtualbox.org/manual/ch09.html#changedmi
本当にこれに対する詳細な答えがあります。
これを行うことにより、BIOSシリアル番号を設定できます。
VBoxManage setextradata "VM name"
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "System Serial"
あなたが得ていたエラーは、シリアルが文字列値として設定されていないために発生します。純粋な番号がある場合は、次のstring:
ように追加する必要があります:
VBoxManage setextradata "VM name"
"VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial" "string:1234"
注: EFIファームウェアを使用するようにVMが構成されている場合、キーのpcbiosをefiに置き換える必要があります。
外部設定からではありません。しかし、コードから自分でビルドすることができます:
ソースファイル: DevPcBios.cpp
行: 1014READCFGSTR("DmiSystemSerial", pszDmiSystemSerial, "0");
「0」を必要な値に変更します。
編集:明らかにVBoxManage setextradataを使用することができます。過去に他のタイプの構成(BIOS関連ではない)に使用したことがあり、この特定の設定をテストしませんでした。試してごらん:
VBoxManage setextradata *YourVMName* VBoxInternal/Devices/pcbios/0/Config/DmiSystemSerial "*yourserial*"
それ以外の場合...ソースコードの編集とビルドに戻ります。
幸運を祈ります。
そのコマンドを実行し、Rogerが参照するエラーを取得した場合、最後のパラメーター(VALUE)なしでコマンドを実行してコマンドをバックアウトする必要があります。
これにより、エラーの原因となったエントリが削除されます。
最後の問題のコマンドが不明な場合は、特定のVMのVirtualMachinesフォルダーのルートにある~~~ .vbox(XML)ファイルを開き、EXTRADATAセクションを確認します。
これらを変更するには、vboxmanageのコマンドライン呼び出しを実行するのが最善の方法です。xmlファイルを編集しても、常に100%固定されるわけではありません。
受け入れられた回答では、シリアル番号が正しく更新されませんでした。代わりに、これらの手順に従って、シリアル番号を正常に更新しました。ゲストOSはmacOSで、ホストはWindowsでした。
注:このコマンドを保存するには、virtualboxを閉じる必要があります。
cd "C:\Program Files\Oracle\VirtualBox\"
VBoxManage.exe setextradata "VM NAME" "VBoxInternal/Devices/efi/0/Config/DmiSystemSerial" "SERIAL_HERE"
ソースを参照してください。* 便利なリンク
20バイトの16進数文字列を含むシリアル番号を使用してみてください。
VBoxManage setextradata "VM name" "VBoxInternal/Devices/ahci/0/Config/Port0/SerialNumber" "serial"
(参考)