-
-
Save Informatic/49bd034d43e054bd1d8d4fec38c305ec to your computer and use it in GitHub Desktop.
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'> | |
<!-- ... --> | |
<qemu:commandline> | |
<qemu:arg value='-acpitable'/> | |
<qemu:arg value='file=/some/path/slic.bin'/> | |
<qemu:arg value='-acpitable'/> | |
<qemu:arg value='file=/some/path/msdm.bin'/> | |
<qemu:arg value='-smbios'/> | |
<qemu:arg value='file=/some/path/smbios_type_0.bin'/> | |
<qemu:arg value='-smbios'/> | |
<qemu:arg value='file=/some/path/smbios_type_1.bin'/> | |
</qemu:commandline> | |
</domain> | |
#!/bin/bash | |
set -e | |
cat /sys/firmware/acpi/tables/SLIC > slic.bin | |
cat /sys/firmware/acpi/tables/MSDM > msdm.bin | |
dmidecode -t 0 -u | grep $'^\t\t[^"]' | xargs -n1 | perl -lne 'printf "%c", hex($_)' > smbios_type_0.bin | |
dmidecode -t 1 -u | grep $'^\t\t[^"]' | xargs -n1 | perl -lne 'printf "%c", hex($_)' > smbios_type_1.bin |
@shaquibimdad you can simply wait for the old licence activation to expire on the old UUID and then activate with the new one.
Otherwise you'll need to preserve the UUID.
@juresaht2 like how much i have to wait for old licence to get detached from the uuid or is there any way to detach it manually?
@shaquibimdad you should probably look up the grace periods and stuff with microsoft, but I think it's about 180 days that an activation stays active until it has to be re-activated, so it would make sense that that is the amount of time the activation is bound to an UUID. If you don't want to wait 180 days, you can deactivate the licence on the old UUID. If this is not possible, see my answer above.
Hello,
I want to share one thing that i found today :) Have activated some time ago one virtual mashine, but lost UUID for them. Today spend some time to activate my virtual pc after a long time and have checked system logs, why i cant to do that. And - bingo! Win activation service returns my previously UUID as SKU in error logs :D. Have changed VM UUID to them and all done!I have the same error but when I replace the sku with my uuid it is still not working and complaining "We can't activate Windows on this device because the product key was already used on another device. If you think it wasn't used on another device, select Troubleshoot below: Error code: 0xC004C008" I am just using smbios in xml
In my case worked, but - yes, in this case, i should delete all lines related to smbios and acpitable. otherwise does not work.
@shaquibimdad you should probably look up the grace periods and stuff with microsoft, but I think it's about 180 days that an activation stays active until it has to be re-activated, so it would make sense that that is the amount of time the activation is bound to an UUID. If you don't want to wait 180 days, you can deactivate the licence on the old UUID. If this is not possible, see my answer above.
well what i did was done a troubleshoot and then there was an option to login to your microsoft account and check where it was actually activated just selected that listed computer and it did activated my current vm with Original board uuid and smbios as sysinfo passed to the vm 😃
@sun-jiao it depends on the hardware how it is implemented. It is also probably different for different OS versions (depending what OS the OEM licence is for). Technically all that is required for OEM licence to work is a machine unique ID (which is then used to activate over the internet), but some computers also have a digital signature that can be verified by the Microsoft cert.
@sun-jiao it depends on the hardware how it is implemented. It is also probably different for different OS versions (depending what OS the OEM licence is for). Technically all that is required for OEM licence to work is a machine unique ID (which is then used to activate over the internet), but some computers also have a digital signature that can be verified by the Microsoft cert.
Thanks. I am wondering if it's possible to write a SLIC file manually based on the infos displayed in UEFI.
Thanks. I am wondering if it's possible to write a SLIC file manually based on the infos displayed in UEFI.
Why? If your licence is activated and the file does not exist then it is not used.
Thanks. I am wondering if it's possible to write a SLIC file manually based on the infos displayed in UEFI.
Why? If your licence is activated and the file does not exist then it is not used.
OK, I have understood now.
Note that this is a much better (and doesn't accidentally corrupt) way to generate the smbios extracts:
dmidecode -t 0 -u | awk '/^\t\t[0-9A-F][0-9A-F]( |$)/' | xxd -r -p > smbios_type_0.bin
dmidecode -t 1 -u | awk '/^\t\t[0-9A-F][0-9A-F]( |$)/' | xxd -r -p > smbios_type_1.bin
I expanded this to work with Proxmox - https://gist.github.com/xrobau/d98fe46c4677e46577ba2f20f35b783b
slic doesn't exist for me, do I just remove it or is there an alternative?
slic doesn't exist for me, do I just remove it or is there an alternative?
This is expected for newer windows versions. Just skip it and use what you have.
I have the same error but when I replace the sku with my uuid it is still not working and complaining "We can't activate Windows on this device because the product key was already used on another device. If you think it wasn't used on another device, select Troubleshoot below: Error code: 0xC004C008" I am just using smbios in xml