Como posso ler a chave de licença do Windows 8 com o Ubuntu?


18

Eu tenho um dual boot windows 8 e Ubuntu no meu laptop.

É possível ler a chave de licença do Windows no ubuntu? (Eu acho que está escondido no registro do Windows de alguma forma)


É um sistema UEFI; nesse caso, provavelmente está na memória da UEFT Key?
Amith KK 22/02

Sim, é um sistema UEFI. Eu já o encontrou e postou o ansewer abaixo;)
rubo77

2
Revisores: isso não é fora de tópico. Trata-se de usar o Ubuntu para encontrar informações em uma instalação do Windows. Perfeitamente bem.
Seth

Concordado, este é um tópico, especialmente considerando que isso pode realmente ser sobre a leitura de informações da ACPI no armazenamento de firmware: essas informações nem são armazenadas dentro do que a maioria de nós pensaria como o sistema Windows.
Eliah Kagan

Respostas:


32

Encontrei aqui . A chave parece estar armazenada no firmware ACPI:

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

O que me deu os seguintes resultados:

MSDMU
LENOVOCB-01   
ACPI
#####-#####-#####-#####-#####

(Substituí a chave do produto por #)

canalize | tail -n1se você precisar apenas da chave como saída.


2
Isso pode ser específico da Lenovo para ter a chave no firmware. Meus computadores de trabalho (Dell Laptop e Compaq Desktop) têm um SLIC, mas não MSDM. É certo que esses dois computadores são anteriores ao Windows 8 por alguns anos.
The Dude

1
Em computadores Dell mais recentes, essa tabela realmente existe. Encontrei-o em dois desktops Dell Precision T1700 a partir de junho de 2014.
Jorge Suárez de Lis

Isso funcionou muito bem em um Lenovo Yoga3.
Seanbreeden 19/09/16

Trabalhei no meu UEFI Acer Aspire V. Portanto, ele se aplica a outros sistemas UEFI.
Torrien 17/03/19

3

Se o seu HD estiver com problemas e precisar ser instalado em um novo HD ou apenas desejar saber a chave sem um HD, isso poderá ajudá-lo:

sudo acpidump > myhiddenkey.txt

depois disso, procure na pasta HOME o arquivo .txt que você acabou de criar. Pressione F3 para pesquisar no arquivo a palavra "MSDM" e o bingo!

Se você ainda não possui acpmdump, é hora de instalá-lo usando

sudo apt-get install acpidump

Funcionou no meu pendrive Live do Ubuntu 14.04 LTS no notebook Positivo. A chave era de um Windows 8 de idioma único.


Ops, eu esqueci. O motivo da saída em um arquivo txt é que a janela do terminal pode não suportar tantas linhas de texto.
Paulo Sérgio Motoyama Jr.

O resultado é cerca de 8 linhas após a occurrrence de "msdm" para que isso irá mostrar a chave: sudo acpidump|grep MSDM -A8sem o uso de um arquivo de texto
rubo77

1
acpidumptem a opção -nde selecionar apenas uma parte. A saída será a chave em uma linha: sudo acpidump -n msdm | cut -c58-|xargs|tr -d " "
rubo77

existe uma maneira de saber a que versão do Windows pertence? 8 ou 8.1? ou isso não importa? Eu não quero usar damas 3rd party
Temido vírgula

1

Tenho outro para adicionar ao último comando que me ajudou:

sudo acpidump|grep MSDM -A6|cut -c58- |xargs | tr -d " " | grep -oP '[^.]+$'

Não tenho certeza se a string está definitivamente no final, mas foi assim que extraí a própria chave.


Sempre trate sua resposta como a única resposta verdadeira. 😃
rubo77

Para fazer uma boa resposta, adicione que a posição exata possa diferir em outros sistemas. Isso irá selecionar exatas 6 linhas depois de encontrar MSDN na saída, que está em HEX
rubo77

você pode usar acpidump -n msdmem vez desudo acpidump|grep MSDM -A6
rubo77

1

Um ligeiro refinamento na resposta aceita. Isso imprimirá apenas a chave:

sudo strings /sys/firmware/acpi/tables/MSDM | grep .*-.*-.*-.*-.*

1
melhor aproveitamento sudo strings /sys/firmware/acpi/tables/MSDM |tail -n1(no caso raro seu vender fits nome ao seu regex grep)
rubo77
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.