Jak mogę odczytać klucz licencyjny Windows 8 za pomocą Ubuntu?

18

Mam podwójnego rozruchu systemu Windows 8 i Ubuntu na moim laptopie.

Czy można odczytać klucz licencyjny Windows w Ubuntu? (Myślę, że to jest jakoś ukryte w rejestrze systemu Windows)

rubo77
źródło
Czy jest to system UEFI, jeśli tak, to prawdopodobnie jest w pamięci kluczy UEFT?
Amith KK
Tak, to system UEFI. Już go znalazłem i zamieściłem poniżej odpowiedź;)
rubo77
2
Recenzenci: To nie jest poza tematem. Chodzi o użycie Ubuntu do znalezienia informacji w instalacji Windows. W najlepszym porządku.
Seth
Zgadzam się, jest to temat, szczególnie biorąc pod uwagę, że wydaje się, że tak naprawdę może to dotyczyć odczytu informacji ACPI z pamięci oprogramowania układowego: informacje te nie są nawet przechowywane wewnątrz tego, co większość z nas uważa za system Windows.
Eliah Kagan

Odpowiedzi:

32

Znalazłem to tutaj . Wydaje się, że klucz jest przechowywany w oprogramowaniu sprzętowym ACPI:

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

Co dało mi następujące wyniki:

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

(Zastąpiłem klucz produktu #)

podłącz do, | tail -n1jeśli potrzebujesz tylko klucza jako wyjścia.

rubo77
źródło
2
Może to być charakterystyczne dla Lenovo, aby mieć klucz w oprogramowaniu układowym. Moje komputery robocze (Dell Laptop i Compaq Desktop) mają SLIC, ale nie MSDM. Trzeba przyznać, że oba te komputery są wcześniejsze o Windows 8 o kilka lat.
Koleś
1
Na nowszych komputerach Dell ten stół faktycznie istnieje. Znalazłem go na dwóch komputerach stacjonarnych Dell Precision T1700 od czerwca 2014 r.
Jorge Suárez de Lis
Działa to świetnie na Lenovo Yoga3.
seanbreeden
Pracowałem na moim UEFI Acer Aspire V. Tak więc dotyczy to innych systemów UEFI.
Torrien
3

Jeśli Twój HD jest uszkodzony i musisz go zainstalować na nowym HD lub po prostu chcesz poznać klucz bez HD, może to pomóc:

sudo acpidump > myhiddenkey.txt

następnie wyszukaj w folderze HOME właśnie utworzony plik .txt. Naciśnij F3, aby wyszukać w pliku słowo „MSDM” i bingo!

Jeśli jeszcze tego nie masz acpmdump, czas zainstalować przy użyciu

sudo apt-get install acpidump

Działa na moim pendrive Live Ubuntu 14.04 LTS na notebooku Positivo. Kluczem był jeden język Windows 8.

Paulo Sérgio Motoyama Jr.
źródło
Operacje, zapomniałem. Powodem wyjścia do pliku txt jest to, że okno terminala może nie obsługiwać tak wielu wierszy tekstu.
Paulo Sérgio Motoyama Jr.
Rezultat to około 8 linii po wystąpieniu „MSDM”, więc pokaże to klucz: sudo acpidump|grep MSDM -A8bez użycia pliku tekstowego
rubo77
1
acpidumpma opcję -nwyboru tylko jednej części. Spowoduje to wyświetlenie klucza w jednym wierszu: sudo acpidump -n msdm | cut -c58-|xargs|tr -d " "
rubo77
czy istnieje sposób, aby dowiedzieć się, do której wersji systemu Windows należy? 8 czy 8,1? czy to nie ma znaczenia? Nie chcę używać zewnętrznych kontrolerów
przerażający średnik
1

Mam inny do dodania do ostatniego polecenia, które pomogło mi:

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

Nie jestem pewien, czy łańcuch jest zdecydowanie na końcu, ale w ten sposób wyodrębniłem sam klucz.

Jeremy
źródło
Zawsze traktuj swoją odpowiedź jako jedyną prawdziwą odpowiedź. 😃
rubo77
Aby była to dobra odpowiedź, dodaj, że dokładna pozycja może się różnić w innych systemach. To wybierze dokładnie 6 wierszy po znalezieniu MSDN na wyjściu, który jest w HEX
rubo77 24.09.16
możesz użyć acpidump -n msdmzamiastsudo acpidump|grep MSDM -A6
rubo77
1

Nieznaczne udoskonalenie przyjętej odpowiedzi. Spowoduje to wydrukowanie tylko klucza:

sudo strings /sys/firmware/acpi/tables/MSDM | grep .*-.*-.*-.*-.*
świeża nowa strona
źródło
1
lepsze wykorzystanie sudo strings /sys/firmware/acpi/tables/MSDM |tail -n1(w rzadkim przypadku nazwa
vendera