Moje pytanie nie ma tam odpowiedzi, ponieważ wszystkie są specyficzne dla systemu Windows i chcę rozwiązania dla systemu Linux.
Mam martwą instalację systemu Windows w jednej z moich partycji. Nie ma już żadnych danych rozruchowych. W praktyce jest to tylko zrzut systemu plików. Ale mam dostęp do odczytu dowolnych plików w systemie plików.
Jak mogę ustalić, która to wersja systemu Windows? W idealnym przypadku myślę, że powinno być jakieś ustawienie konfiguracji lub dowolny plik, który jest unikalny dla różnych wersji systemu Windows. Na przykład na dystrybucjach Linuksa opartych na Debianie mogłem po prostu czytać /etc/debian_version
.
Jak mogę zrobić to samo w przypadku Win?
Rozszerzenie nr 1: Niestety mam dostęp tylko do Linux-a, aby dostać się na jego dysk twardy. Tak więc rozwiązania wymagające systemu Windows (na przykład kopanie w wersji ntoskrnl.exe
lub sprawdzanie niektórych ustawień rejestru) nie są w moim przypadku możliwe.
źródło
C:\Windows\System32\License.rtf
zawiera wersję systemu Windows.strings ./Windows/System32/ntoskrnl.exe 2>/dev/null | grep amd64
. Dla mnie w wersji drukowanej9600.18258.amd64fre.winblue_ltsb.160303-0600
i googlowania dla winblue wskazuje, że był to kryptonim dla Windows 8.1.hivexget
. Dodałem szczegóły do tego drugiego pytania: superuser.com/a/1383325/53547Odpowiedzi:
Prosty. Spójrz na wersję
<drive>:\Windows\System32\ntoskrnl.exe
W przypadku XP poszukaj
<drive>:\boot.ini
Jeśli jest to Vista +, możesz poszukać
<drive>:\Boot
folderu.W systemie Windows 7+ możesz sprawdzić w menedżerze urządzeń ukrytą
System Reserved
partycję.Jeśli
license.rtf
wC:\Windows\System32
folderze znajduje się plik o nazwie , zawiera on również bieżącą wersję systemu Windows.źródło
NT OS & Kernel. Version: 6.1.7601
Microsoft Windows XP [Version 5.1.2600]
(podczas uruchamiania cmd.exe)Microsoft Windows [Version 6.3.9600]
Windows 8.1 Pro (64-bitowy)Możesz także przesyłać strumieniowo
strings cmd.exe | find "Version"
może też działać. Większość plików ma wersję okien w swoim arkuszu właściwości, który jest widoczny w surowym pliku binarnym na jego końcu. Jednym z nich jest wersja systemu Windows. Jest jednak w trybie Unicode.źródło
find "Version"
jest rzeczą systemu Windows, mam Linux i używam grep. 2) Dało tylko tajemnicze dane XML, jedyne informacje o wersji były takie jak „5.1.0.0”, które mogą być dowolne między winxp a win7. Ale twoja odpowiedź może być przydatna dla pracowników Google w przyszłości, więc oto +1.grep -i "Version"
zrobi to samo, co Windows „znajdź”.find /i "search-data"
==grep -i "search-data"
.