Created
February 28, 2022 04:34
-
-
Save startergo/515b50328561edf29ed096cf79afc99f to your computer and use it in GitHub Desktop.
BASH script to automate the configuration of the SMBIOS UUID
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| VM_NAME="Win10VM" #name | |
| VSETED="VBoxManage setextradata $VM_NAME" | |
| #CFG_PATH="VBoxInternal/Devices/pcbios/0/Config" # for bios (legacy) boot machines (i.e. windows 7 build) | |
| CFG_PATH="VBoxInternal/Devices/efi/0/Config" # for efi boot machines (i.e. windows 10 build) | |
| #SLIC.bin file | |
| sudo dd if=/sys/firmware/acpi/tables/SLIC of=~/.config/SLIC.bin | |
| # variables revision | |
| biosRev=$(sudo dmidecode -t0 | grep -Eo "BIOS Revision: [0-9\.]+") | |
| skuNum=$(sudo dmidecode -t1 | grep -Eo "SKU Number: [A-Z0-9]+") | |
| location=$(sudo dmidecode -t2 | grep -Eo "Location In Chassis: [[:alnum:][:space:]]+") | |
| vmdkfile=$HOME/.config/win10.vmdk | |
| # script | |
| $VSETED "VBoxInternal/Devices/acpi/0/Config/CustomTable" $HOME/.config/SLIC.bin | |
| $VSETED $CFG_PATH/DmiBIOSVendor "$(sudo dmidecode -s bios-vendor)" | |
| $VSETED $CFG_PATH/DmiBIOSVersion "$(sudo dmidecode -s bios-version)" | |
| $VSETED $CFG_PATH/DmiBIOSReleaseDate "$(sudo dmidecode -s bios-release-date)" | |
| $VSETED $CFG_PATH/DmiBIOSReleaseMajor "$(echo ${biosRev:15} | cut -d'.' -f1)" | |
| $VSETED $CFG_PATH/DmiBIOSReleaseMinor "$(echo ${biosRev:15} | cut -d'.' -f2)" | |
| $VSETED $CFG_PATH/DmiSystemVendor "$(sudo dmidecode -s system-manufacturer)" | |
| $VSETED $CFG_PATH/DmiSystemProduct "$(sudo dmidecode -s system-product-name)" | |
| $VSETED $CFG_PATH/DmiSystemVersion "$(sudo dmidecode -s system-version)" | |
| $VSETED $CFG_PATH/DmiSystemSerial "$(sudo dmidecode -s system-serial-number)" | |
| $VSETED $CFG_PATH/DmiSystemSKU "$(echo ${skuNum:12})" | |
| $VSETED $CFG_PATH/DmiSystemFamily "$(sudo dmidecode -t1 | grep -Eo "Family: [A-Za-z]+" | cut -d' ' -f2)" | |
| $VSETED $CFG_PATH/DmiSystemUuid "$(sudo dmidecode -s system-uuid)" | |
| $VSETED $CFG_PATH/DmiBoardVendor "$(sudo dmidecode -s baseboard-manufacturer)" | |
| $VSETED $CFG_PATH/DmiBoardProduct "$(sudo dmidecode -s baseboard-product-name)" | |
| $VSETED $CFG_PATH/DmiBoardVersion "$(sudo dmidecode -s baseboard-version)" | |
| $VSETED $CFG_PATH/DmiBoardSerial "$(sudo dmidecode -s baseboard-serial-number | cut -d'/' -f3)" | |
| $VSETED $CFG_PATH/DmiBoardAssetTag "$(sudo dmidecode -s baseboard-asset-tag)" | |
| $VSETED $CFG_PATH/DmiBoardLocInChass "$(echo ${location:20})" | |
| $VSETED $CFG_PATH/DmiBoardBoardType "10" | |
| $VSETED $CFG_PATH/DmiChassisVendor "$(sudo dmidecode -s chassis-manufacturer)" | |
| $VSETED $CFG_PATH/DmiChassisType "10" | |
| $VSETED $CFG_PATH/DmiChassisVersion "$(sudo dmidecode -s chassis-version)" | |
| $VSETED $CFG_PATH/DmiChassisSerial "$(sudo dmidecode -s chassis-serial-number)" | |
| $VSETED $CFG_PATH/DmiChassisAssetTag "$(sudo dmidecode -s chassis-asset-tag)" | |
| $VSETED $CFG_PATH/DmiProcManufacturer "$(sudo dmidecode -s processor-manufacturer)" | |
| $VSETED $CFG_PATH/DmiProcVersion "$(sudo dmidecode -s processor-version)" | |
| VBoxManage modifyvm Win10VM --hardwareuuid "$(sudo dmidecode -s system-uuid)" |
Author
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
https://forums.virtualbox.org/viewtopic.php?t=94864#