Як я можу отримати вбудований ключ Windows 8+ із середовища Linux?


121

Я бачив інші питання SuperUser на цю тему: Як знайти ключ продукту Windows 8? | Як знайти ключ продукту Windows 8? Однак усі відповіді припускають, що у вас працює Windows 8.

Я вже зробив чисту установку Ubuntu 13.04 на своєму новому ноутбуці, і я намагаюся створити середовище VM для тих випадкових програм, які просто абсолютно не хочуть працювати навіть з Wine.

Я побачив це зображення в іншій відповіді:

http://i.stack.imgur.com/v14oN.jpg

Отже, здається, що ключ повинен бути якимось чином доступний через ACPI. Однак я намагався, ls /proc/acpiі, наскільки я бачу, нічого корисного не виходить, і acpitoolце мені зовсім не допомагає.

Як, до біса, я можу дістати ключ продукту?

EDIT : Я спробував запустити RW-Everything через Wine (на зображеній програмі), але він не в змозі "встановити його драйвер". Так що кубиків там немає.



Принаймні, з моєю установкою Windows 8.1, це призводить до ключа, відмінного від того, що виробляється цим іншим рішенням .
каре

Відповіді:


164

Я знайшов це! Мені потрібно було це зробити:

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.


4
Доволі цікаво. Але чи справді цей ключ корисний? Я вважаю, що вбудованих ліцензій більше, ніж власне ключ.
Даніель Б

1
@DanielB Все, що вам потрібно зробити - це зателефонувати в MS і підтвердити, що ви насправді встановлюєте Windows на тому ж комп’ютері, що і той, на якому продали.
Рікінг

37
Або простіше:sudo hexdump -s 56 -e '"MSDM key: " /29 "%s\n"' /sys/firmware/acpi/tables/MSDM
david6

2
У мене була така ж проблема і успішно дістали ключ за допомогою цього методу, який працює лише для систем UEFI. Однак, коли ви просто хочете перевстановити вашу систему, яка постачалася з попередньо встановленою Windows, потрібно лише отримати інсталяційне зображення (Microsoft чомусь робить це досить важко), обійти набридливу перевірку ключа загальним ключем OEM залежно від версії ви хочете встановити, і коли встановлення завершено, Windows візьме ваш ключ із BII EFI та активується автоматично (!). Тестовано на моїй власній системі з перевстановленням Windows 8.1.
Грегор

5
@ david6 Простіше: sudo tail -c +56 / sys / firmware / acpi /
table

28

Використовуючи Fedora, я спробував:

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

Що дало мені такі результати:

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

Ключ продукту було замінено на #.


1
Так, це теж працює - я ставлю hdсвою відповідь, тому що вона також відображає двійкові дані, тож ви маєте чіткіше розділення з того, з чого вона починається.
Рікінг

8
Для розбірливості: sudo cat / sys / firmware / acpi / table / MSDM | струнних
Аарон Дж Ланг

1
І щоб отримати фактичний ключsudo cat /sys/firmware/acpi/tables/MSDM | strings | tail -n 1
Джордж Сапкін

9

Я не зміг знайти /sys/firmware/acpi/tables/MSDMна своєму ASUS T100TA, що працює під керуванням Ubuntu 13.10 amd64, але я знайшов упаковку під назвою acpidumpдосить корисною. Працюючи acpidumpяк root, я зміг отримати вміст таблиці 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: ** ** ** ** **                                   *****
...

2
Гм - дві речі. (1) чому ти 13.10, вересень 2014. І (2) - чи /sys/firmware/acpi/tables/існує папка ? Можливо, у вас є щось, що монтується десь в іншому місці (або зовсім не є).
Рікінг

@Riking, він існує, але єдиним файлом у цьому каталозі є DSDT. На той момент, коли я встановив, пристрій 13.10 був найновішою версією Ubuntu. Зробити 64-бітний Linux з 32-бітним UEFI було досить складно, тому я не витрачав часу на оновлення. Я дійсно ніколи не використовую пристрій так чи інакше, і думав, що це може бути непогано повернути Windows 8 на нього для використання іншими.
Ерік

8

Це варіант прийнятої відповіді, що дає вам набагато більш зручний для користувача вихід, простіше читати та копіювати

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

Тестовано на Ubuntu 14.04 для Windows 8.1


1
Щоб отримати лише ключ, додайте: | tail -1наприкінці команди.
Віктор
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.