我已经看到有关此主题的其他超级用户问题:如何查找Windows 8产品密钥? |如何找到Windows 8 OEM产品密钥?
但是,所有答案都假设您正在运行Windows8。

我已经在新笔记本电脑上全新安装了Ubuntu 13.04,并且正在尝试安装Windows 8。虚拟机环境,用于那些甚至连Wine也绝对不能运行的偶然程序。

我在另一个答案上看到了此图像:



所以似乎该密钥应该可以通过ACPI获得。但是,
我已经尝试过ls /proc/acpi,但据我所知,它没有任何用处,而acpitool根本对我没有帮助。

我怎么能买到该产品退出吗?

编辑:我曾尝试通过Wine(如图所示的程序)运行RW-Everything,但它无法“安装其驱动程序”。所以那里没有骰子。

评论

如何从命令提示符或Linux活动磁盘获取Windows 7 CD键?

至少在我的Windows 8.1安装中,这导致密钥不同于此其他解决方案产生的密钥。

#1 楼

我找到了!我需要这样做:

ls /sys/firmware/acpi/tables


哪个给了我我想要的MSDM表。
我找到了我的许可证密钥! :D

要获取它,您需要阅读/sys/firmware/acpi/tables/MSDM文件的内容。

这里有一个示例:

riking@hp-laptop:~$ sudo xxd /sys/firmware/acpi/tables/MSDM
0000000: 4d53 444d 5500 0000 0313 4850 514f 454d  MSDMU.....HPQOEM
0000010: 534c 4943 2d4d 5043 0100 0000 4850 2020  SLIC-MPC....HP  
0000020: 0000 0400 0100 0000 0000 0000 0100 0000  ................
0000030: 0000 0000 1d00 0000 4639 XXXX XXXX XXXX  ........F98**-**
0000040: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX  ***-*****-*****-
0000050: XXXX XXXX XX                             ****T


***是许可证密钥的内容,以ASCII文本表示。

评论


挺有意思。但是,此密钥实际可用吗?我相信嵌入式许可证比实际的密钥要多。

–丹尼尔B
14年2月18日在0:13

@DanielB您需要做的就是打电话给MS,并确认您实际上是在与所售计算机相同的计算机上安装Windows。

–́Riking
2014年4月19日在7:03

或更简单地说:sudo hexdump -s 56 -e'“ MSDM键:” / 29“%s \ n”“ / sys / firmware / acpi / tables / MSDM

– david6
2014年12月15日在22:34

我遇到了同样的问题,并使用此方法成功提取了密钥,该方法仅适用于UEFI系统。但是,当您只想重新安装预装有Windows的系统时,仅需要获取安装映像(Microsoft由于某种原因使其很难安装),请根据版本使用通用OEM密钥规避讨厌的密钥检查您要安装的软件,安装完成后,Windows将从EFI BIOS中获取您的密钥并自动激活(!)。在重新安装Windows 8.1的我自己的系统上进行测试。

–格雷戈
2014年12月16日12:42

@ david6更简单:sudo tail -c +56 / sys / firmware / acpi / tables / MSDM

– Nehal J Wani
16年4月26日在20:12

#2 楼

我尝试使用Fedora:

sudo cat /sys/firmware/acpi/tables/MSDM


哪个给了我以下结果:

MSDMUoDELL  QA09   LOHR#####-#####-#####-#####-#####%  


产品键已替换为#

评论


是的,它也可以工作-我将hd放入我的答案中,因为它也显示二进制数据,因此您可以更清楚地区分它的开始位置。

–́Riking
2014-09-26 8:32

出于可读性考虑:sudo cat / sys / firmware / acpi / tables / MSDM |弦

–亚伦·朗(Aaron J Lang)
2014年11月24日18:00

并获得实际的密钥sudo cat / sys / firmware / acpi / tables / MSDM |字符串|尾-n 1

–乔治·萨普金(George Sapkin)
17-10-23在13:10

#3 楼

我在运行Ubuntu 13.10 amd64的ASUS T100TA上找不到/sys/firmware/acpi/tables/MSDM,但是我发现一个名为acpidump的软件包非常有用。以root身份运行acpidump,我可以获取MSDM表内容。

$ sudo acpidump
...
MSDM @ 0x78d53f90
  0000: 4d 53 44 4d 55 00 00 00 03 6c 5f 41 53 55 53 5f  MSDMU....l_ASUS_
  0010: 4e 6f 74 65 62 6f 6f 6b 00 00 00 00 41 53 55 53  Notebook....ASUS
  0020: 01 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00  ................
  0030: 00 00 00 00 1d 00 00 00 ** ** ** ** ** ** ** **  ........*****-**
  0040: ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **  ***-*****-*****-
  0050: ** ** ** ** **                                   *****
...


评论


嗯-两件事。 (1)为什么在2014年9月的13.10上运行?(2)-文件夹/ sys / firmware / acpi / tables /是否存在?可能您有将它安装在其他地方(或根本没有)的东西。

–́Riking
2014年9月14日下午5:36

@Riking,它确实存在,但该目录中的唯一文件是DSDT。在我设置设备时,设备13.10是可用的Ubuntu的最新版本。要使64位Linux与32位UEFI一起运行相当复杂,因此我没有花时间升级它。我真的从来没有使用过该设备,并认为将Windows 8重新安装在该设备上供其他人使用可能会很好。

–埃里克
2014年9月14日下午6:47

#4 楼

这是已接受答案的变体,为您提供了更加用户友好的输出,更易于阅读和复制

sudo strings /sys/firmware/acpi/tables/MSDM

在适用于Windows 8.1的Ubuntu 14.04上进行了测试

评论


要仅获取密钥,请添加:命令末尾的-1。

–维克多
18年3月28日在9:14

仍在使用Ubuntu 18.04

–羊眼
20年1月13日在15:36